Repository navigation
docs: scripts and steps for local activation with a Debug desktop build - #16
Conversation
… build Debug builds trust a hardcoded dev ring (dev-2026-07, trackdub://dev-activation), which no Worker config reproduced. Add dev:activation:local (production config, dev vars overridden on the command line, --local only) and db:seed:activation:dev-license (row for the fixed dev key), and document the steps in ACTIVATION-CONTRACT.md. The production and staging configs are untouched. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
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. |
|
Summarized by CodeRabbit Free ℹ️ Recent review info
📝 Walkthrough
Comment |
There was a problem hiding this comment.
Review Summary
This PR adds developer tooling scripts and documentation to enable local end-to-end testing of the activation Worker against a Debug desktop build. The production and staging configs are untouched, which is the right approach.
One blocking concern was identified:
package.jsonline 28 —max_machines: 1vs. "skips the machine cap": The seed row sets the machine cap to1, but the documentation claims the dev key bypasses the cap. Whether this is actually safe depends entirely on the execution order inside the activation handler — ifALLOW_DEV_LICENSES/dev_unlimitedis checked after the seat-count guard, the cap is enforced rather than skipped, breaking the stated dev workflow on any second activation. This needs to be verified and either the seed value corrected or the ordering guaranteed and documented.
No changes were made to production secrets, remote databases, or the activation wire contract, so the surface area of risk is limited to the local dev flow.
You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.
|
Review submitted. Summary index: Review: pullrequestreview-5609352798 — 2 inline findings on a low-risk docs+scripts PR. The dev-bypass guard ( Inline findings
Out of diff
The seed's hardcoded |
…sh to the dev key - The activation Worker refuses to boot without ADMIN_API_TOKEN (>= 16 chars), so the local-testing steps now include it in the .dev.vars example. - The seed script hardcodes the dev key's hash; add a test that fails if that literal and TDUB-DEV-UNLIMITED-LOCAL drift apart, which would otherwise break /activate with an unexplained invalid_key while CI stays green. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
No noteworthy issues found. |
Picks up #16 (activation dev scripts, test and contract docs). The activation side now matches main apart from a corrected comment in test/activation/env.d.ts. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Summary
A Debug
Trackdub-gatedbuild trusts a hardcoded dev ring (dev-2026-07, issuertrackdub://dev-activation, audiencetrackdub-license-dev). Nothing in this repo reproduced that issuer, so there was no way to run this Worker as the dev issuer for the desktop.npm run dev:activation:local:wrangler devon127.0.0.1:8787with the production config's vars overridden on the command line (APP_ENV=development, dev issuer/audience/key ID,ALLOW_DEV_LICENSES=true).--localonly, so no remote bindings.npm run db:seed:activation:dev-license: inserts thelicensesrow for the fixed dev keyTDUB-DEV-UNLIMITED-LOCALinto the local D1. The lookup runs before the dev-key check, so the row is required.docs/ACTIVATION-CONTRACT.md: a "Local testing with a Debug desktop build" section.The production and staging configs are untouched.
ALLOW_DEV_LICENSESis still refused whenAPP_ENV=production, and a Release build's production ring degradesdev_unlimitedtokens to Free.Pairs with trackdubllc/Trackdub-gated#149, which replaces the Debug ring's public key (the old key's private half was in no repo).
Verification
wrangler devcommand locally and activatedTDUB-DEV-UNLIMITED-LOCAL: the token haskid/iss/audmatching the Debug ring anddev_unlimited: true, and verifies against the dev public key.pro/activerow in the local D1.dev:activation:localitself (identical flags were run directly).🤖 Generated with Claude Code
Summary by CodeRabbit