Skip to content

Adopt basecamp-sdk v0.11.0 - #594

Open
jeremy wants to merge 2 commits into
mainfrom
bump-sdk-0.11.0
Open

Adopt basecamp-sdk v0.11.0#594
jeremy wants to merge 2 commits into
mainfrom
bump-sdk-0.11.0

Conversation

@jeremy

@jeremy jeremy commented Jul 31, 2026

Copy link
Copy Markdown
Member

Retires the pseudo-version pin left by #582 (v0.10.1-0.20260729233651-9480aa4c84b8) and puts the CLI back on a release tag.

What's in the range

SDK PR Effect on Go Effect here
#504 Removes Everything().Boosts() The only breaking change. No-op — #590 already removed the last call site
#518 Deletes an unreachable pre-fetch check in TimelineService.PersonProgress None — Meta.Truncated semantics unchanged
#514 Subscribe + EnableCardColumnOnHold flagged naturally idempotent Those two POSTs become retry-eligible
#500, #507 Retry status-set copy; README fixes None

Two of those deserve a note, because the titles suggest more than they deliver here.

#518 fixes a genuine boundary false positive — a cap landing exactly on the final item of a Link-less last page reported truncated: true — but only in the TypeScript, Kotlin, Swift, and Python SDKs. The Go half is a deletion of dead code, argued unreachable and pinned by tests that are green before and after. This matters because the CLI reads Meta.Truncated in three places (comment.go:540,588, todos.go:372, cards.go:346), so a semantics change there would have needed real work. It doesn't.

#504 completes the boost withdrawal. The account-wide aggregate family is now 16 of 16 reached from the CLI rather than 16 of 17 — not because coverage improved, but because the unreachable one stopped existing.

Docs

API-COVERAGE.md had pre-committed to this edit ("Once the CLI pins an SDK without it, this line becomes 16 of 16"). Along with it, the boost withdrawal notes in API-COVERAGE.md, ACCOUNT-WIDE-LISTINGS.md, and boost.go were written in the future tense while the SDK still carried the operation; they're now past tense with the SDK PR cited.

Verification

bin/ci exit 0 — 361 e2e tests, surface snapshot current, skill drift clean, SDK provenance OK (v0.11.0). No replace directive in go.mod.


Summary by cubic

Upgrade the CLI to github.com/basecamp/basecamp-sdk/go v0.11.0, replacing the temporary pseudo-version pin. No CLI behavior changes; the SDK’s removed boosts aggregate was already unused, and two POSTs are now retryable.

  • Dependencies

    • Bump to github.com/basecamp/basecamp-sdk/go v0.11.0.
    • Removal of Everything().Boosts() aligns with prior CLI changes; no break.
    • Subscribe and EnableCardColumnOnHold marked idempotent; retries enabled.
    • Meta.Truncated semantics unchanged.
  • Docs

    • API-COVERAGE.md: 16/16 aggregates, corrected remaining “17” references, and noted the v0.11.0 drop of boosts.
    • ACCOUNT-WIDE-LISTINGS.md and boost.go: past-tense boost withdrawal, 16-method wording; matrix unchanged.

Written for commit 4b6404a. Summary will update on new commits.

Review in cubic

Retires the pseudo-version pin left by the BC5 OAuth work (#582) and puts
the CLI back on a release tag.

The only breaking change in the range is basecamp/basecamp-sdk#504, which
removes Everything().Boosts(). The CLI stopped calling it in #590, when
BC5 withdrew /boosts.json (basecamp/bc3#12464), so the removal lands as a
no-op and the account-wide aggregate family is now 16 of 16 reached
rather than 16 of 17.

Two other changes in the range are worth naming because their titles
suggest more than they do here:

- basecamp-sdk#518 ("truncated: only report it when items beyond the
  returned set were available") fixes a real boundary false positive in
  the TypeScript, Kotlin, Swift, and Python SDKs. The Go half is a
  deletion of a provably unreachable pre-fetch check in
  TimelineService.PersonProgress, pinned by tests green before and after.
  Meta.Truncated semantics are unchanged, so the three CLI readers
  (comment.go, todos.go, cards.go) are unaffected.
- basecamp-sdk#514 flags Subscribe and EnableCardColumnOnHold as
  naturally idempotent, making those two POSTs retry-eligible. A
  behavior improvement, not a break.

Docs follow the pin: the aggregate count, and the boost withdrawal notes
that had been written in the future tense while the SDK still carried the
operation.
Copilot AI review requested due to automatic review settings July 31, 2026 09:09
@github-actions github-actions Bot added commands CLI command implementations sdk SDK wrapper and provenance docs deps labels Jul 31, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9c34e3027b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

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".

Comment thread API-COVERAGE.md

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

The bump updated the SDK-version preamble but left two prose claims behind:
API-COVERAGE.md's "All 17 methods are reachable" and
ACCOUNT-WIDE-LISTINGS.md's "All 17 methods, and the invocation that reaches
each." Both now read 16, matching EverythingService in v0.11.0 and the
16-row matrix the method table has carried since #590.

The matrix itself needed no change — its boosts row went with the caller.
Copilot AI review requested due to automatic review settings July 31, 2026 15:02

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

commands CLI command implementations deps docs sdk SDK wrapper and provenance

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants