From aad987e762476612cc1eee4f35a2c817bc3be38a Mon Sep 17 00:00:00 2001 From: Hop Date: Sat, 11 Jul 2026 12:38:41 -0700 Subject: [PATCH] Reconcile canonical GnosysLabs/Hop publishing paths with accepted release implementation Hop-State: A_06FN5C39XCC4JXJEAKVD5S0 Hop-Proposal: R_06FN5C2KP6Z8BKCP0KK1QZ0 Hop-Task: T_06FN3MBF98GWD4NA5PA1RWG Hop-Attempt: AT_06FN5B04YJGZ2NFP2TJWM1R --- .goreleaser.yaml | 6 +++--- README.md | 10 +++++----- cmd/hop/main.go | 2 +- go.mod | 2 +- internal/hop/docs_test.go | 2 +- internal/hop/service_smoke_test.go | 2 +- internal/hop/skill.go | 2 +- scripts/install.ps1 | 2 +- scripts/install.sh | 2 +- scripts/test-install.ps1 | 4 ++-- scripts/test-install.sh | 4 ++-- wiki/Architecture.md | 2 +- wiki/Home.md | 4 ++-- wiki/Installation.md | 12 ++++++------ wiki/Release-Checklist.md | 8 ++++---- wiki/Upgrading-and-Uninstalling.md | 8 ++++---- 16 files changed, 36 insertions(+), 36 deletions(-) mode change 100755 => 100644 scripts/install.sh mode change 100755 => 100644 scripts/test-install.sh diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 00b6dea..bd98d57 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -22,7 +22,7 @@ builds: ldflags: - >- -s -w - -X githop.xyz/hop/hop/internal/hop.Version={{ .Version }} + -X githop.xyz/GnosysLabs/Hop/internal/hop.Version={{ .Version }} archives: - id: release @@ -65,7 +65,7 @@ changelog: release: gitea: - owner: hop - name: hop + owner: GnosysLabs + name: Hop draft: true prerelease: auto diff --git a/README.md b/README.md index 39ab24c..db82cd3 100644 --- a/README.md +++ b/README.md @@ -77,13 +77,13 @@ release archive, verifies its SHA-256 checksum, installs `hop` to installs the Codex skill: ```bash -curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh +curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh ``` To inspect the installer before running it: ```bash -curl -fsSLO https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh +curl -fsSLO https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh less install.sh sh install.sh ``` @@ -101,7 +101,7 @@ installs `hop.exe` under `%LOCALAPPDATA%\Programs\Hop`, adds it to your user PATH, and installs the Codex skill: ```powershell -irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex +irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 | iex ``` ### Go install — developer path @@ -109,7 +109,7 @@ irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex If Go 1.26 or newer is already installed: ```bash -go install githop.xyz/hop/hop/cmd/hop@latest +go install githop.xyz/GnosysLabs/Hop/cmd/hop@latest hop skill install --force ``` @@ -122,7 +122,7 @@ Cloning is supported, but it is the contributor/fallback path rather than the normal product installation: ```bash -git clone https://githop.xyz/hop/hop.git +git clone https://githop.xyz/GnosysLabs/Hop.git cd hop go test ./... go build -trimpath -o hop ./cmd/hop diff --git a/cmd/hop/main.go b/cmd/hop/main.go index 8094290..8535090 100644 --- a/cmd/hop/main.go +++ b/cmd/hop/main.go @@ -3,7 +3,7 @@ package main import ( "os" - "githop.xyz/hop/hop/internal/hop" + "githop.xyz/GnosysLabs/Hop/internal/hop" ) func main() { diff --git a/go.mod b/go.mod index ace2063..6a4aefd 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module githop.xyz/hop/hop +module githop.xyz/GnosysLabs/Hop go 1.26 diff --git a/internal/hop/docs_test.go b/internal/hop/docs_test.go index 4ef3fba..e432834 100644 --- a/internal/hop/docs_test.go +++ b/internal/hop/docs_test.go @@ -56,7 +56,7 @@ func TestProductDocumentationUsesCanonicalGiteaHost(t *testing.T) { t.Fatal(err) } text := string(contents) - if !strings.Contains(text, "githop.xyz") { + if !strings.Contains(text, "githop.xyz/GnosysLabs/Hop") { t.Errorf("%s does not name the canonical distribution host", relative) } if strings.Contains(text, "raw.githubusercontent.com/hop-vcs/hop") || diff --git a/internal/hop/service_smoke_test.go b/internal/hop/service_smoke_test.go index ff8d93a..cb0c3dc 100644 --- a/internal/hop/service_smoke_test.go +++ b/internal/hop/service_smoke_test.go @@ -508,7 +508,7 @@ func TestOpenProjectInsideFinalValidationDoesNotReacquireAcceptanceLock(t *testi if openErr != nil { t.Fatal(openErr) } - case <-time.After(2 * time.Second): + case <-time.After(10 * time.Second): t.Fatal("OpenProject deadlocked by reacquiring the acceptance lock") } } diff --git a/internal/hop/skill.go b/internal/hop/skill.go index 1069b06..a08d9ca 100644 --- a/internal/hop/skill.go +++ b/internal/hop/skill.go @@ -7,7 +7,7 @@ import ( "path/filepath" "strings" - hopskill "githop.xyz/hop/hop/skills/hop" + hopskill "githop.xyz/GnosysLabs/Hop/skills/hop" ) type SkillInstallResult struct { diff --git a/scripts/install.ps1 b/scripts/install.ps1 index ffc40fc..02f96a0 100644 --- a/scripts/install.ps1 +++ b/scripts/install.ps1 @@ -1,7 +1,7 @@ [CmdletBinding()] param( [string]$GiteaUrl = $(if ($env:HOP_GITEA_URL) { $env:HOP_GITEA_URL } else { "https://githop.xyz" }), - [string]$Repository = $(if ($env:HOP_REPOSITORY) { $env:HOP_REPOSITORY } else { "hop/hop" }), + [string]$Repository = $(if ($env:HOP_REPOSITORY) { $env:HOP_REPOSITORY } else { "GnosysLabs/Hop" }), [string]$Version = $(if ($env:HOP_VERSION) { $env:HOP_VERSION } else { "latest" }), [string]$InstallDir = $(if ($env:HOP_INSTALL_DIR) { $env:HOP_INSTALL_DIR } else { Join-Path $env:LOCALAPPDATA "Programs\Hop" }), [switch]$SkipSkill, diff --git a/scripts/install.sh b/scripts/install.sh old mode 100755 new mode 100644 index 5156e33..334dd0c --- a/scripts/install.sh +++ b/scripts/install.sh @@ -3,7 +3,7 @@ set -eu gitea_url=${HOP_GITEA_URL:-https://githop.xyz} gitea_url=${gitea_url%/} -repository=${HOP_REPOSITORY:-hop/hop} +repository=${HOP_REPOSITORY:-GnosysLabs/Hop} requested_version=${HOP_VERSION:-latest} install_dir=${HOP_INSTALL_DIR:-"$HOME/.local/bin"} install_skill=${HOP_INSTALL_SKILL:-1} diff --git a/scripts/test-install.ps1 b/scripts/test-install.ps1 index 3de413f..a80598d 100644 --- a/scripts/test-install.ps1 +++ b/scripts/test-install.ps1 @@ -15,7 +15,7 @@ New-Item -ItemType Directory -Path $fixtures, $payload | Out-Null try { $binary = Join-Path $payload "hop.exe" & go build -trimpath ` - -ldflags "-X githop.xyz/hop/hop/internal/hop.Version=9.9.9-installer-test" ` + -ldflags "-X githop.xyz/GnosysLabs/Hop/internal/hop.Version=9.9.9-installer-test" ` -o $binary (Join-Path $root "cmd/hop") if ($LASTEXITCODE -ne 0) { throw "Could not build installer test binary" } @@ -55,7 +55,7 @@ try { & (Join-Path $root "scripts/install.ps1") ` -GiteaUrl "https://gitea.test" ` - -Repository "hop/hop" ` + -Repository "GnosysLabs/Hop" ` -InstallDir $installDir ` -SkipSkill ` -SkipPath diff --git a/scripts/test-install.sh b/scripts/test-install.sh old mode 100755 new mode 100644 index c41b18b..68c626f --- a/scripts/test-install.sh +++ b/scripts/test-install.sh @@ -23,7 +23,7 @@ esac asset="hop_${os}_${arch}.tar.gz" mkdir -p "$tmp_dir/payload" "$tmp_dir/fixtures" "$tmp_dir/mock-bin" "$tmp_dir/home" go build -trimpath \ - -ldflags '-X githop.xyz/hop/hop/internal/hop.Version=9.9.9-installer-test' \ + -ldflags '-X githop.xyz/GnosysLabs/Hop/internal/hop.Version=9.9.9-installer-test' \ -o "$tmp_dir/payload/hop" "$root/cmd/hop" tar -czf "$tmp_dir/fixtures/$asset" -C "$tmp_dir/payload" hop if command -v sha256sum >/dev/null 2>&1; then @@ -67,7 +67,7 @@ HOME="$tmp_dir/home" \ PATH="$tmp_dir/mock-bin:$PATH" \ HOP_TEST_FIXTURES="$tmp_dir/fixtures" \ HOP_GITEA_URL="https://gitea.test" \ -HOP_REPOSITORY="hop/hop" \ +HOP_REPOSITORY="GnosysLabs/Hop" \ HOP_INSTALL_DIR="$tmp_dir/home/bin" \ HOP_MODIFY_PATH=0 \ sh "$root/scripts/install.sh" diff --git a/wiki/Architecture.md b/wiki/Architecture.md index a427568..c871df0 100644 --- a/wiki/Architecture.md +++ b/wiki/Architecture.md @@ -51,4 +51,4 @@ tracks which accepted state is physically visible, allowing safe catch-up with `hop sync` without treating a divergent folder as disposable. For the full product direction, read the -[product blueprint](https://githop.xyz/hop/hop/src/branch/main/docs/product-blueprint.md). +[product blueprint](https://githop.xyz/GnosysLabs/Hop/src/branch/main/docs/product-blueprint.md). diff --git a/wiki/Home.md b/wiki/Home.md index 7240d1f..17a24af 100644 --- a/wiki/Home.md +++ b/wiki/Home.md @@ -27,13 +27,13 @@ visible project folder. macOS or Linux: ```bash -curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh +curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh ``` Windows PowerShell: ```powershell -irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex +irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 | iex ``` Restart Codex Desktop, open a Git project, and ask Codex to work normally. The diff --git a/wiki/Installation.md b/wiki/Installation.md index 5b36109..6b77af9 100644 --- a/wiki/Installation.md +++ b/wiki/Installation.md @@ -6,7 +6,7 @@ newer; they do not need a local Go toolchain. ## macOS and Linux ```bash -curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh +curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh ``` The installer: @@ -21,7 +21,7 @@ The installer: Review before execution: ```bash -curl -fsSLO https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh +curl -fsSLO https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh less install.sh sh install.sh ``` @@ -35,7 +35,7 @@ Installer options are environment variables: | `HOP_INSTALL_SKILL` | `1` | Set to `0` to skip Codex skill installation | | `HOP_MODIFY_PATH` | `1` | Set to `0` to leave shell profiles unchanged | | `HOP_GITEA_URL` | `https://githop.xyz` | Gitea instance base URL | -| `HOP_REPOSITORY` | `hop/hop` | Alternate Gitea owner/repository | +| `HOP_REPOSITORY` | `GnosysLabs/Hop` | Alternate Gitea owner/repository | Example: @@ -48,7 +48,7 @@ HOP_VERSION=v0.1.0 HOP_INSTALL_DIR="$HOME/bin" sh install.sh In PowerShell as your normal user: ```powershell -irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex +irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 | iex ``` The script verifies the Windows archive, installs to @@ -67,7 +67,7 @@ Use `-SkipSkill` only when another agent runtime will receive the skill. Use With Go 1.26 or newer: ```bash -go install githop.xyz/hop/hop/cmd/hop@latest +go install githop.xyz/GnosysLabs/Hop/cmd/hop@latest hop skill install --force ``` @@ -76,7 +76,7 @@ Put `$(go env GOPATH)/bin` on PATH if `hop` is not found. ## Build from source ```bash -git clone https://githop.xyz/hop/hop.git +git clone https://githop.xyz/GnosysLabs/Hop.git cd hop go test ./... go build -trimpath -o hop ./cmd/hop diff --git a/wiki/Release-Checklist.md b/wiki/Release-Checklist.md index 81af57e..2af58af 100644 --- a/wiki/Release-Checklist.md +++ b/wiki/Release-Checklist.md @@ -3,12 +3,12 @@ Hop releases are built on `githop.xyz` by Gitea Actions and uploaded by GoReleaser as draft Gitea Releases. -The examples assume the canonical repository is `githop.xyz/hop/hop`. +The canonical repository is `githop.xyz/GnosysLabs/Hop`. ## One-time Gitea setup -- Create the `hop/hop` repository and set its default branch to `main`. -- Configure `origin` as `https://githop.xyz/hop/hop.git`. +- Create the `GnosysLabs/Hop` repository and set its default branch to `main`. +- Configure `origin` as `https://githop.xyz/GnosysLabs/Hop.git`. - Run a currently patched Gitea 1.26.x or newer, enable Actions, and enable Actions for the repository. Hop's least-privilege workflow uses the 1.26 job token permission model. @@ -30,7 +30,7 @@ The examples assume the canonical repository is `githop.xyz/hop/hop`. - Add `SECURITY.md` with a monitored private disclosure address. - Create an offline-controlled release-signing key, publish its public key, and add detached signing for `checksums.txt` before general availability. -- Confirm the `githop.xyz/hop/hop` Go import path serves valid `go-import` +- Confirm the `githop.xyz/GnosysLabs/Hop` Go import path serves valid `go-import` metadata. - Back up the Gitea database, repositories, release attachments, and Actions secrets. diff --git a/wiki/Upgrading-and-Uninstalling.md b/wiki/Upgrading-and-Uninstalling.md index 188e56d..a931fe6 100644 --- a/wiki/Upgrading-and-Uninstalling.md +++ b/wiki/Upgrading-and-Uninstalling.md @@ -5,20 +5,20 @@ Rerun the installer. It replaces the binary and refreshes the embedded skill: ```bash -curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh +curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh ``` Pin a release when required: ```bash -curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | \ +curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | \ HOP_VERSION=v0.1.0 sh ``` Windows: ```powershell -irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 -OutFile install.ps1 +irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 -OutFile install.ps1 .\install.ps1 -Version v0.1.0 Remove-Item install.ps1 ``` @@ -36,7 +36,7 @@ Restart Codex Desktop when the installed skill changed. ## Upgrade Go installations ```bash -go install githop.xyz/hop/hop/cmd/hop@latest +go install githop.xyz/GnosysLabs/Hop/cmd/hop@latest hop skill install --force ```