Skip to content

fix: make dev's Full check green (promotion tests, archived relay client, run-row ordering) - #2077

Merged
AbirAbbas merged 4 commits into
devfrom
fix/full-check-reds
Oct 30, 2026
Merged

AbirAbbas merged 4 commits into
devfrom
fix/full-check-reds

Conversation

@AbirAbbas

Copy link
Copy Markdown
Collaborator

Full check on dev has failed every day since 2026-10-23. Three causes, each fixed on the side that was wrong:

Test Failing since Wrong side Fix
TestC16PromotionTriggerAndCutoff, TestPromotionWorkflowExplainsItsSafetyLaws 10-25 (#1922) test — #1922 rewrote it to want explicit dispatch only, but the workflow, docs/rules/promotion.md and CLAUDE.md all ship the Friday 17:00 Toronto schedule tests pin the shipped contract
TestR25ArchivedPreconditionalClient 10-26 (#1950, since it was added) test — builds an older client from a temp folder where VCS stamping fails hermetic build
TestStartTaskBashBeltFoldsRunDollarsOnceOnEveryEnding, TestARunsSpendIsFoldedIntoTheConversationAndNotTheRunningTurn, …RunSpendRefusesNextTurn… 10-28 code — the money assertions never failed; publishRunRow announced a settled run before persisting it and Close didn't join an ending run, so the driver recreated tasks.jsonl/its lock in a closed session's bucket (TempDir cleanup failed) persist first, Close joins an already-answered run (bounded by closeGrace), late index writes after close are declined; new regression test TestSettledRunRowIsRecordedBeforeTaskUpdateAndJoinedOnClose

Latent since #1627; widened into a consistent failure by the checkpoint locking in #1944/#1990 (bisected at each commit).

Verified: internal/release, internal/relayserve (targeted), focused internal/session over Belt|RunSpend|RunsSpend|SettledRun|Close|TaskIndex|Quit|StartTask, make test-laws, build, vet, gofmt.

🤖 Generated with Claude Code

AbirAbbas and others added 4 commits October 30, 2026 14:29
…ow and docs ship

#1922 rewrote TestC16PromotionTriggerAndCutoff to want explicit dispatch only
and dropped the explanation the workflow still carries, while
promote-staging.yml and docs/rules/promotion.md kept the Friday 17:00
Toronto schedule. The tests now pin that shipped contract; dev's Full check
has failed on them since 2026-10-25.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
TestR25ArchivedPreconditionalClient builds an older client from a temporary
folder, where Go's VCS stamping fails (error obtaining VCS status), so the
test has failed in every Full check since #1950 added it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
…Close joins it

publishRunRow emitted the settled task update before keeping the run row and
indexing it, and Close did not wait for a run that had already ended, so a
caller that closed on the announcement raced the index write: the driver
recreated tasks.jsonl and its lock in a closed session's bucket. In CI that
surfaced as the run-spend tests failing TempDir cleanup since 2026-10-28.
The row is now persisted first, Close joins a run whose engine has already
answered (bounded by closeGrace), and late index writes after close are
declined.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
@AbirAbbas
AbirAbbas merged commit f128ec3 into dev Oct 30, 2026
7 checks passed
@AbirAbbas
AbirAbbas deleted the fix/full-check-reds branch October 30, 2026 19:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant