docs: clarify retired Forgejo client references #1005

Merged
pullings merged 1 commit from rigger/990-forgejo-api-comments into main 2026-08-27 12:56:40 +02:00
Owner

Summary

Audit the Go references to the retired scripts/lib/forgejo-api.sh recorded by Refs frankenbit/release-toolkit#990. The comments now preserve the shell client as historical equivalence/provenance material and identify the typed Go client plus C7 document as the live contract. No executable behavior changed.

The tracker measurement was taken at 7ff0476f532269cc7a41a049383d33062ad63b70: 14 references across 12 Go files. Current main at the base below has 13 references across 11 Go files because cmd/rt/main.go:207 was removed by aa646e703943d711ab85a2b50c6933f93b7f408e; this PR does not restore or delete that historical citation.

Go audit

All 13 current references were read against the retired source at e5b837a96ee13133f9d2e18c47a727fe3ad1c45a^:scripts/lib/forgejo-api.sh (parent 25c2fb3832a56c372b0d942bd32f4e8d11f8b963). The retired path is absent at the base. Every remaining site is historical provenance or names the current contract; none presents the deleted script as an available runtime dependency.

  • cmd/rt/manifest_postcondition.go:141 - explicitly says the reusable no longer sources the retired client.
  • cmd/rt/preflight_push_whitelist.go:66 - records what the retired bash path sourced and did not source.
  • internal/decide/decide.go:72 - records the retired dry-run behavior for the compatibility decision.
  • internal/forgejo/client.go:18 - relates explicit Go configuration to the retired client's environment knobs.
  • internal/forgejo/forgejo.go:15 - identifies the retired jq/payload implementation as historical equivalence source and the typed client as current authority.
  • internal/forgejo/interface.go:26,142,147 - points C7 to docs/architecture/contracts/forgejo-responses.md, names the typed replacement, and labels the Phase-4 operation inventory historical.
  • internal/forgejo/mutations.go:11 - identifies the retired jq payloads as the historical ordering source.
  • internal/forgejo/reads.go:91 - identifies the retired helper's dry-run behavior as historical.
  • internal/forgejo/reviewers_test.go:76 - puts the old retry behavior in past tense.
  • internal/gates/fragment_shape_test.go:38 - unchanged synthetic prose already says the cut path no longer sources the client.
  • internal/harness/harness.go:33 - labels the old dry-run seam as historical phase material.

Non-Go decision

The 16 non-Go files were read per file and left unchanged. All citations are historical/provenance material, not present-tense runtime instructions or deleted-file line-navigation defects:

  • .forgejo/workflows/reusable-release.yml, AGENTS.md, docs/VERSIONING.md, and docs/operations.md explicitly describe retirement or the current Go replacement.
  • CHANGELOG.md is release history.
  • docs/adr/0001-language-shell.md and docs/adr/0008-go-port-architecture.md preserve superseded decisions.
  • docs/architecture/arc42/05-building-block-view.md, docs/architecture/arc42/08-crosscutting-concepts.md, docs/architecture/c4/README.md, and docs/architecture/c4/release-toolkit.likec4 are dated or explicitly historical architecture material.
  • docs/architecture/contracts/cli-surface.md records the historical Phase-7 migration; docs/architecture/contracts/forgejo-responses.md explicitly labels the shell client historical and non-authoritative.
  • docs/architecture/test-strategy.md records historical seams and migration phases.
  • docs/conventions.md labels its shell-client text as a historical Before example.
  • docs/dead-script-namespace.md is the frozen historical classification ledger.

Verification

  • Base: main = 1bce291339c6163709a53b755febf9bbea0f9397.
  • Retired source: scripts/lib/forgejo-api.sh exists at e5b837a^ and is absent at the base.
  • go test -count=1 ./... - PASS.
  • go vet ./... - PASS.
  • bats tests - 117/117 PASS.
  • bats tests/workflows.bats - 55/55 PASS.
  • go run ./cmd/rt fragment-check changelog.d - PASS.
  • gofmt -d on all changed Go files - no output.
  • git diff --check - PASS.
  • CHANGELOG.md, docs/dead-script-namespace.md, and both ADR files - unchanged.

The exact branch head at PR creation is 81783ecfbb679640d135ea0d54649241decbc08e. No review or merge was performed.

## Summary Audit the Go references to the retired `scripts/lib/forgejo-api.sh` recorded by Refs frankenbit/release-toolkit#990. The comments now preserve the shell client as historical equivalence/provenance material and identify the typed Go client plus C7 document as the live contract. No executable behavior changed. The tracker measurement was taken at `7ff0476f532269cc7a41a049383d33062ad63b70`: 14 references across 12 Go files. Current main at the base below has 13 references across 11 Go files because `cmd/rt/main.go:207` was removed by `aa646e703943d711ab85a2b50c6933f93b7f408e`; this PR does not restore or delete that historical citation. ## Go audit All 13 current references were read against the retired source at `e5b837a96ee13133f9d2e18c47a727fe3ad1c45a^:scripts/lib/forgejo-api.sh` (parent `25c2fb3832a56c372b0d942bd32f4e8d11f8b963`). The retired path is absent at the base. Every remaining site is historical provenance or names the current contract; none presents the deleted script as an available runtime dependency. - `cmd/rt/manifest_postcondition.go:141` - explicitly says the reusable no longer sources the retired client. - `cmd/rt/preflight_push_whitelist.go:66` - records what the retired bash path sourced and did not source. - `internal/decide/decide.go:72` - records the retired dry-run behavior for the compatibility decision. - `internal/forgejo/client.go:18` - relates explicit Go configuration to the retired client's environment knobs. - `internal/forgejo/forgejo.go:15` - identifies the retired jq/payload implementation as historical equivalence source and the typed client as current authority. - `internal/forgejo/interface.go:26,142,147` - points C7 to `docs/architecture/contracts/forgejo-responses.md`, names the typed replacement, and labels the Phase-4 operation inventory historical. - `internal/forgejo/mutations.go:11` - identifies the retired jq payloads as the historical ordering source. - `internal/forgejo/reads.go:91` - identifies the retired helper's dry-run behavior as historical. - `internal/forgejo/reviewers_test.go:76` - puts the old retry behavior in past tense. - `internal/gates/fragment_shape_test.go:38` - unchanged synthetic prose already says the cut path no longer sources the client. - `internal/harness/harness.go:33` - labels the old dry-run seam as historical phase material. ## Non-Go decision The 16 non-Go files were read per file and left unchanged. All citations are historical/provenance material, not present-tense runtime instructions or deleted-file line-navigation defects: - `.forgejo/workflows/reusable-release.yml`, `AGENTS.md`, `docs/VERSIONING.md`, and `docs/operations.md` explicitly describe retirement or the current Go replacement. - `CHANGELOG.md` is release history. - `docs/adr/0001-language-shell.md` and `docs/adr/0008-go-port-architecture.md` preserve superseded decisions. - `docs/architecture/arc42/05-building-block-view.md`, `docs/architecture/arc42/08-crosscutting-concepts.md`, `docs/architecture/c4/README.md`, and `docs/architecture/c4/release-toolkit.likec4` are dated or explicitly historical architecture material. - `docs/architecture/contracts/cli-surface.md` records the historical Phase-7 migration; `docs/architecture/contracts/forgejo-responses.md` explicitly labels the shell client historical and non-authoritative. - `docs/architecture/test-strategy.md` records historical seams and migration phases. - `docs/conventions.md` labels its shell-client text as a historical Before example. - `docs/dead-script-namespace.md` is the frozen historical classification ledger. ## Verification - Base: `main` = `1bce291339c6163709a53b755febf9bbea0f9397`. - Retired source: `scripts/lib/forgejo-api.sh` exists at `e5b837a^` and is absent at the base. - `go test -count=1 ./...` - PASS. - `go vet ./...` - PASS. - `bats tests` - `117/117` PASS. - `bats tests/workflows.bats` - `55/55` PASS. - `go run ./cmd/rt fragment-check changelog.d` - PASS. - `gofmt -d` on all changed Go files - no output. - `git diff --check` - PASS. - `CHANGELOG.md`, `docs/dead-script-namespace.md`, and both ADR files - unchanged. The exact branch head at PR creation is `81783ecfbb679640d135ea0d54649241decbc08e`. No review or merge was performed.
docs(forgejo): mark retired client references historical
All checks were successful
fork-pr-approval-notice / explain fork workflow approval (pull_request_target) Successful in 4s
ac-closure-check / toolkit-self gate (PR's own rt) (pull_request) Successful in 5s
ac-closure-check / ac-closure check (pull_request) Successful in 7s
ac-closure-check / check (pull_request) Successful in 0s
changelog-body-check / toolkit-self gate (PR's own rt) (pull_request) Successful in 5s
changelog-body-check / changelog body Cold-Read linter (pull_request) Successful in 7s
changelog-body-check / check (pull_request) Successful in 0s
check-self-bootstrap / check (pull_request) Successful in 6s
fragment-check / toolkit-self gate (PR's own rt) (pull_request) Successful in 5s
fragment-check / changelog fragment-kind (pull_request) Successful in 8s
fragment-check / check (pull_request) Successful in 0s
manifest-check / toolkit-self gate (PR's own rt) (pull_request) Successful in 5s
manifest-check / manifest-vs-tag consistency (pull_request) Successful in 8s
manifest-check / check (pull_request) Successful in 0s
register-check / toolkit-self gate (PR's own rt) (pull_request) Successful in 5s
register-check / register-drift check (pull_request) Successful in 10s
register-check / check (pull_request) Successful in 0s
tests / workflow-schema (pull_request) Successful in 4s
tests / bats (pull_request) Successful in 13s
workflow-parse-check / toolkit-self parse guard and controls (pull_request) Successful in 4s
workflow-parse-check / workflow parse and schema (pull_request) Successful in 6s
workflow-parse-check / check (pull_request) Successful in 0s
go-ci / lint + build + test (pull_request) Successful in 2m49s
tests / dated-examples (pull_request) Successful in 2m8s
tests / shellcheck (pull_request) Successful in 2m13s
81783ecfbb
Refs frankenbit/release-toolkit#990
lookout approved these changes 2026-08-27 12:54:59 +02:00
lookout left a comment

APPROVE — exact head 81783ecfbb.

The full 11-file diff is comment/provenance text plus one changelog line; no executable behavior changes. The Go references now consistently distinguish the retired scripts/lib/forgejo-api.sh source and historical equivalence material from the live typed internal/forgejo client and C7 contract. The retired source exists at e5b837a96e^ and is absent at the PR head; the current Go corpus has 13 references across 11 files as described.

Independent exact-head verification: go test -count=1 ./..., go vet ./..., go build ./..., bats tests (117/117), bats tests/workflows.bats (55/55), go run ./cmd/rt fragment-check changelog.d, gofmt on all changed Go files, and git diff --check all pass. Forgejo reports 25/25 successful statuses and the head is unchanged.

The body’s Base: main = 1bce291... line is the branch creation/merge-base snapshot; the server main has since advanced, so I treated that measurement as historical rather than as a current-main claim.

APPROVE — exact head 81783ecfbb679640d135ea0d54649241decbc08e. The full 11-file diff is comment/provenance text plus one changelog line; no executable behavior changes. The Go references now consistently distinguish the retired scripts/lib/forgejo-api.sh source and historical equivalence material from the live typed internal/forgejo client and C7 contract. The retired source exists at e5b837a96ee13133f9d2e18c47a727fe3ad1c45a^ and is absent at the PR head; the current Go corpus has 13 references across 11 files as described. Independent exact-head verification: go test -count=1 ./..., go vet ./..., go build ./..., bats tests (117/117), bats tests/workflows.bats (55/55), go run ./cmd/rt fragment-check changelog.d, gofmt on all changed Go files, and git diff --check all pass. Forgejo reports 25/25 successful statuses and the head is unchanged. The body’s Base: main = 1bce291... line is the branch creation/merge-base snapshot; the server main has since advanced, so I treated that measurement as historical rather than as a current-main claim.
lookout approved these changes 2026-08-27 12:55:04 +02:00
lookout left a comment

APPROVE — exact head 81783ecfbb.

The full 11-file diff is comment/provenance text plus one changelog line; no executable behavior changes. The Go references now consistently distinguish the retired scripts/lib/forgejo-api.sh source and historical equivalence material from the live typed internal/forgejo client and C7 contract. The retired source exists at e5b837a96e^ and is absent at the PR head; the current Go corpus has 13 references across 11 files as described.

Independent exact-head verification: go test -count=1 ./..., go vet ./..., go build ./..., bats tests (117/117), bats tests/workflows.bats (55/55), go run ./cmd/rt fragment-check changelog.d, gofmt on all changed Go files, and git diff --check all pass. Forgejo reports 25/25 successful statuses and the head is unchanged.

The body’s Base: main = 1bce291... line is the branch creation/merge-base snapshot; the server main has since advanced, so I treated that measurement as historical rather than as a current-main claim.

APPROVE — exact head 81783ecfbb679640d135ea0d54649241decbc08e. The full 11-file diff is comment/provenance text plus one changelog line; no executable behavior changes. The Go references now consistently distinguish the retired scripts/lib/forgejo-api.sh source and historical equivalence material from the live typed internal/forgejo client and C7 contract. The retired source exists at e5b837a96ee13133f9d2e18c47a727fe3ad1c45a^ and is absent at the PR head; the current Go corpus has 13 references across 11 files as described. Independent exact-head verification: go test -count=1 ./..., go vet ./..., go build ./..., bats tests (117/117), bats tests/workflows.bats (55/55), go run ./cmd/rt fragment-check changelog.d, gofmt on all changed Go files, and git diff --check all pass. Forgejo reports 25/25 successful statuses and the head is unchanged. The body’s Base: main = 1bce291... line is the branch creation/merge-base snapshot; the server main has since advanced, so I treated that measurement as historical rather than as a current-main claim.
pullings deleted branch rigger/990-forgejo-api-comments 2026-08-27 12:56:40 +02:00
Sign in to join this conversation.
No description provided.