Conversation
The event-feed operations shipped in basecamp-sdk v0.19.0, so the main pseudo-version taken while they were unreleased becomes the release tag. v0.19.0's only commit over the pinned revision is the version bump, so the MCP model snapshot is unchanged apart from the ref it records.
Computed and verified locally with make update-nix-hash: the go.mod and go.sum change invalidates the old hash, and the CI job that would refresh it cannot mint a token because cli-release-bot has no installation on this repository.
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
🟢 Approved
The release tag matches the recorded commit, and all required lockfile, provenance, documentation, and Nix updates are present.
Pull request overview
Pins the Basecamp SDK to the published v0.19.0 release and synchronizes dependent metadata.
Changes:
- Updates Go module checksums and SDK provenance.
- Refreshes MCP provenance and API coverage documentation.
- Recomputes the Nix vendor hash.
[!TIP]
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or rungh pr ready --undo.
Click "Ready for review" or rungh pr readyto reengage.
File summaries
| File | Description |
|---|---|
go.mod |
Pins SDK v0.19.0. |
go.sum |
Updates SDK checksums. |
internal/version/sdk-provenance.json |
Records the release commit and timestamp. |
internal/mcpserver/model/PROVENANCE.json |
Aligns MCP provenance with the release tag. |
nix/package.nix |
Updates the dependency vendor hash. |
API-COVERAGE.md |
Documents the released SDK version. |
Review details
- Files reviewed: 5/6 changed files
- Comments generated: 0
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Codex Review: Didn't find any major issues. 🎉 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Review threads: 0 resolved (0 fixed, 0 declined). Copilot approved on |
|
Obsolete — closing. #729 landed the SDK re-pin itself, and #735 landed the The only content unique to this branch is |
go.modpinnedgithub.com/basecamp/basecamp-sdk/goatv0.18.1-0.20260916210227-4523eac74cfa, amainpseudo-version taken while theevent-feed operations were still unreleased. basecamp-sdk v0.19.0 is now
tagged and published, so the pin becomes the release tag.
#732, which set the
pseudo-version, said exactly this: "moving to the tag is a one-line bump once it
exists."
It is a one-line bump in
go.mod, plus everything that has to move with it.What moved
go.mod/go.sum—v0.18.1-0.20260916210227-4523eac74cfa→v0.19.0.internal/version/sdk-provenance.json— rewritten bymake bump-sdk REF=v0.19.0: versionv0.19.0, revision6abe227204a4,updated_at2026-09-16T21:15:28Z.make provenance-checkpasses.internal/mcpserver/model/PROVENANCE.json— re-synced withscripts/sync-mcp-model.shagainst a cleango/v0.19.0checkout. The ref nowreads
go/v0.19.0(was thego/v0.18.0-63-g4523eac7describe) and the commit6abe227204a465ced72969f10e32d3a06e77bcc1.nix/package.nix—vendorHashrecomputed.API-COVERAGE.md— the "SDK version" note claimed the pin has to be amainpseudo-version because the event-feed operations are unreleased. Theyare released; the note now names v0.19.0.
The MCP model snapshot is unchanged apart from its provenance
behavior-model.jsonandopenapi.jsoncame back byte-identical. The tagcommit
6abe2272is a direct child of the pinned4523eac7and its onlycontent is "Bump version to 0.19.0" — per-language version strings and lockfiles,
nothing in the Smithy-derived exports. So the re-pin moves a label, not a
surface.
No knock-on
Everything in v0.19.0's nine MIGRATING sections — the gauges changes, the
Retry-Afterconvergence, typed person ids, the event-feed error shapes — wasalready in the pinned revision and already absorbed on
main. The one silentGo break in the release notes is
basecamp.RecordingSummaryCode(err)returning("usage", true)forErrBucketMismatchwhere it returned("", false); thisCLI never calls
RecordingSummaryCode, it matcheserrors.Is(err, basecamp.ErrBucketMismatch)directly ininternal/connector/admission/verdict.go, which did not change. Build and testsconfirm it: no source change was needed anywhere.
vendorHash
sha256-mT0oVMMRcmpbszb0zVYd1k8cZfMHKHZRbhsy/+8GHxo=→sha256-uiNB0+zjvdDTI7RbC1hwiuUGNJzh7P1DFnr7rInjco0=Computed and verified locally with
make update-nix-hash, which runs the pinnednixos/niximage over the working tree, extracts the hash from the fixed-outputmismatch, writes it, and then rebuilds to prove the corrected hash builds.
Both builds are in the log; the second exited 0.
This is done by hand because the workflow that would normally refresh it cannot:
cli-release-bothas no installation on this repository, soactions/create-github-app-token404s before the job reaches the build. Ago.mod/go.sumchange always invalidatesvendorHash, and nothing elserefreshes it — so leaving it would have landed the Nix build red.
Gates
make provenance-check, the MCP/catalog unit tests,e2e/event_feed.bats(8/8),the three Nix script bats files (23/23), and
bin/ci—make checkend to end:fmt-check,vet,lint,lint-actions,test,test-e2e,test-sync-skills,check-naming,check-surface,check-skill-drift,check-bare-groups,check-lint-lockstep,check-smoke-coverage,provenance-check,tidy-check.Every one green except
test, which has a pre-existing TTY-detection failure setin this sandbox: 11 tests across
internal/appctx,internal/cli,internal/commands,internal/stdinargandinternal/tui/resolve(
TestIsInteractive*,TestIsTerminal,TestInteractiveStdio,TestInteractivePrompt,TestPredicatesDisagreeOnTheStreamTheyAskAbout,TestDeleteConfirmableFollowsTheAudienceNotTheDevice,TestBareBasecampNeverReportsASetupError,TestExplicitSetupStillRefuses). Thatset reproduces identically — same 11 tests, same 5 packages — on unmodified
origin/main(688d9ce) in a separate worktree. Nothing else fails.Summary by cubic
Pins
github.com/basecamp/basecamp-sdk/goto the v0.19.0 release tag, replacing themainpseudo-version taken before the event-feed operations shipped. The tag commit is a direct child of the old pin and only contains version bumps, so the MCP model files are byte-identical apart from their recorded provenance.Migration
nix/package.nixhas a newvendorHash, recomputed and verified withmake update-nix-hash.Written for commit 01799bb. Summary will update on new commits.