Refresh the short handoff for the gated tip c3e87a94
Documents only.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
1 file changed,
+9
−7
.claude/HANDOFF.md+9 −7
CI passed — run details
diff --git a/.claude/HANDOFF.md b/.claude/HANDOFF.md| index 065f7f356..ecc2bd5ff 100644 |
| --- a/.claude/HANDOFF.md |
| +++ b/.claude/HANDOFF.md |
| @@ -7,23 +7,25 @@ |
| Get Carloku's paid plans live with Stripe Tax and the complete metered model; have the pricing page and signup flow reviewable in the morning. |
| **STATUS:** |
| -Reviewable, not production-ready. `implementation/carloku-paid-launch/OUTSTANDING.md` is the list: what is reviewable, what is tested, what is proven, and every launch blocker. Billing is OFF, the quantity worker is OFF, nothing attests, nothing was deployed, and no live Stripe or AWS write was made. |
| +Reviewable, not production-ready. `implementation/carloku-paid-launch/OUTSTANDING.md` is the list: what is reviewable, what is tested, what is proven, and every launch blocker. Billing is OFF, the quantity worker is OFF (two switches, both unset), nothing attests, nothing was deployed, and no live Stripe or AWS write was made. |
| -Code tip `43383b93` (local; origin is still `6a0c99d8` because the hub's `carlos/platform` repository has answered 500 or 502 after a ten-second wait since 03:30 Dublin on 2026-10-01, while the rest of the hub answers; bundles are in the run directory). Full gate on `43383b93`: go build, go vet, gofmt, `make test` with 60 packages ok (`logs/gate-43383b93.txt`); cross builds for darwin, linux arm64 and windows pass (`logs/cross-43383b93.txt`). Amadan CI has not run on it. Any commit after `43383b93` on this branch is documents only unless this file says otherwise. |
| +Code tip `c3e87a94`. Full gate on it: go build, go vet, gofmt, `make test` with 61 packages ok (`logs/gate-c3e87a94.txt` in the run directory); cross builds for darwin, linux arm64 and windows pass (`logs/cross-c3e87a94.txt`). Any commit after `c3e87a94` on this branch is documents only unless this file says otherwise. The forge has `b6692549`; the hub's `carlos/platform` repository answers 500 on and off (it took a push at 05:22 Dublin and refused again at 05:45), so newer commits are in bundles in the run directory and a retry loop is pushing. Amadan CI was queued on `b6692549` and has not been read complete on any tip since `6a0c99d8`. |
| -Independent review: GPT-6 Astra rejected rounds 1 to 6; the AGENTS-required Opus production review accepted with fixes in rounds 2 to 6. Round seven of both is running against `43383b93` (run directory `logs/astra-review7.md`, `logs/opus-review7.md`). Nothing lands until it passes. Dispositions: `docs/superpowers/specs/CODEX-DISPOSITIONS-carloku-paid-launch-overnight.md`. |
| +Independent review: GPT-6 Astra rejected rounds 1 to 7; the AGENTS-required Opus production review accepted with fixes in rounds 2 to 7. Round seven's findings (the lease's scope, the fence's reach, what a held Stripe key means) are all accepted and fixed with reproductions and mutation checks. Round eight of both is running against `c3e87a94` (run directory `logs/astra-review8.md`, `logs/opus-review8.md`). Nothing lands until it passes. Dispositions: `docs/superpowers/specs/CODEX-DISPOSITIONS-carloku-paid-launch-overnight.md`. |
| -What round six changed: bucket-name walks take a cross-process lease and are fenced at AWS by the request's signing time (checked read-only against S3 and IAM); the quantity worker has a send lease and a provider-side key fence that is unverified against Stripe and lasts only as long as Stripe remembers a key, so it has a second switch that waits on a sandbox test; scoped replication attestation (path A) cannot prove an exclusive writer and is off this branch, parked on `feat/carloku-scoped-attestation-20261001`; replication-write completeness is a launch blocker, not waived. |
| +Two open defects, both with their paths disabled, neither offered as a risk to accept: a quantity request that runs after Stripe has forgotten its key, and a late invoice-line request that can leave a finalized invoice with a wrong total a customer could pay. The design that removes both (a request cannot outlive its connection) is `docs/superpowers/plans/2026-10-01-late-request-fencing.md`, begun on `feat/carloku-late-request-fencing-20261001` (`3be871db`, not gated, not reviewed). |
| -Review servers on docs-t1, each answering 200 on its IP form at 04:32 Dublin time on 2026-10-01: pricing http://docs-t1.tail5fd3ba.ts.net:38009 (fallback http://100.119.180.57:38009), console billing page http://docs-t1.tail5fd3ba.ts.net:45033 (fallback http://100.119.180.57:45033), signup and billing demo http://100.119.180.57:41881 (Keymail and Stripe simulated; not Stripe proof). |
| +Scoped replication attestation (path A) cannot prove an exclusive writer and is off this branch, parked on `feat/carloku-scoped-attestation-20261001` (pushed). Replication-write completeness is a launch blocker, not waived. |
| + |
| +Review servers on docs-t1, each answering 200 on its IP form at 05:06 Dublin time on 2026-10-01: pricing http://docs-t1.tail5fd3ba.ts.net:38009 (fallback http://100.119.180.57:38009), console billing page http://docs-t1.tail5fd3ba.ts.net:45033 (fallback http://100.119.180.57:45033), signup and billing demo http://100.119.180.57:41881 (Keymail and Stripe simulated; not Stripe proof). |
| **NEEDED:** |
| - Paul: approve or edit both copy reviews; confirm the HALF code word; decide the proration policy; approve or change the whole-paid-day rule for partial months; rule on a store's first clock hour and a box's first minutes; review member copy for a bucket retained by another account. |
| - Scoped approvals, prepared as plans only: the `rk_live` restricted key and Stripe catalog; the Cost and Usage Report export; Stripe test mode, to run `TestSandboxQuantityFence` and confirm the provider's treatment of a proration date. |
| **RECOMMENDED:** |
| -- Two open defects, both with their paths disabled: a quantity request that runs after Stripe has forgotten its key, and a late invoice-line request that can leave a finalized invoice with a wrong total a customer could pay. Design: `docs/superpowers/plans/2026-10-01-late-request-fencing.md`, built on `feat/carloku-late-request-fencing-20261001`. |
| -- Read round seven, fix what it finds, re-review the exact tip. Push when the repository answers and read CI on that tip. |
| +- Read round eight, fix what it finds, re-review the exact tip. Push when the repository answers and read CI on that tip. |
| +- Finish the late-request design on its branch (the invoice engine's void on a failed verification, the idle measurement in the sandbox test), then review it. |
| - Then, each on its own branch: path B of the attestation plan, quantity reduction at renewal, the AWS principal inventory and the bucket ownership attestation door, Free-tier enforcement, dormancy and pool accounting (none started). |
| - Find what moved 1,395 GB out of Ireland to three other regions in September (collector plan). |