Skip to content

Move the fleet, session and tenant tests beside their owners; state the fleet loop's, the session's and the postings cache's remaining contracts; remove 88 inherited warnings - #136

Closed
sorenbs wants to merge 10 commits into
slatefrom
codex/warnings-big-owners-1
Closed

sorenbs wants to merge 10 commits into
slatefrom
codex/warnings-big-owners-1

Conversation

@sorenbs

@sorenbs sorenbs commented Sep 11, 2026

Copy link
Copy Markdown
Member

Chunk of the inherited-warning cleanup: the fleet loop, the SSE session, the tenant grammar and the postings cache (88 occurrences).

Moved beside their owners: the inline unit tests of fleet.rs, sse/session.rs and tenant.rs now live in fleet/tests.rs, sse/session/tests.rs and tenant/tests.rs (the last declared by path, since the fuzz and invariant harnesses compile the tenant module by path). None of them is referenced by the scenario map or the review registries. With the tests out, both oversized owners end well below their merge-base size.

Fixed rather than annotated

  • sse/session.rs: the three identical drive-outcome arms are one; the lane key and the task state move instead of being cloned; serve's bare argument allowance carries its reason.
  • tenant.rs: the component width converts with try_from.
  • fleet.rs and postings_cache.rs: start, return_home_allowed, install_chunk and runs_for are crate-visible.

Stated as expectations (owner; invariant; why the simpler alternative is wrong): the fleet tick's line, nesting, cast, lock-poison and spawn contracts, the mach footprint cast, the session driver's line, nesting, wait and spawn contracts (the driver task is a registered effect owner), the tenant grammar's checked preconditions, and the postings cache's line and nesting contracts.

src/fleet.rs and src/sse/session.rs are registered mutation owners; the local mutation experiment on the diff is reported in the PR conversation.

🤖 Generated with Claude Code

sorenbs and others added 9 commits September 11, 2026 20:44
…ing contracts; flatten the delete cascade

The tombstone repair and the billing closes leave delete_lifecycle as
their own functions, the retained-name refusal joins the winner
decision, identical seal-claim arms are combined, and the dead-letter
refusal is one match on the append outcome. Everything that stays as
it is carries its contract as a narrow expectation. Both ledgers are
pruned of the 59 occurrences this removes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…hain walk and the batch overflow verdict

The fork-chain walk breaks with let-else, the runtime constructor
consumes its entropy, the cursor widths convert with try_from, the
hot-key merge keeps the minimum with min, the failpoint registry has a
named type, and every stale or bare allowance is gone or reasoned. The
remaining line, argument, nesting, lock-poison, cast and effect
contracts are narrow expectations; the shutdown driver, the touch
flusher and main are registered effect owners. Both ledgers are pruned
of the occurrences this removes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…g contracts; combine the unknown-outcome arms

The trace store consumes its operation inputs, the fault store's FNV
prime is grouped at byte boundaries, latencies sort with total_cmp, the
compactor options are one literal, and the bare allowances carry their
reasons. The remaining fixture, argument, nesting and cast contracts
are narrow expectations; the deliberate stream leak is a registered
effect owner. Both ledgers are pruned of the occurrences this removes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s' into codex/warnings-batch-7

# Conflicts:
#	docs/quality/diagnostic-allowances.json
…nto codex/warnings-batch-7

# Conflicts:
#	docs/quality/diagnostic-allowances.json
#	docs/quality/source-allowances.json
#	scripts/quality/mutations.sh
… codex/warnings-batch-7

# Conflicts:
#	docs/quality/diagnostic-allowances.json
#	docs/quality/owners.json
#	docs/quality/source-allowances.json
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…he fleet loop's, the session's and the postings cache's remaining contracts

With the inline tests out, the oversized owners end below their
merge-base size. The session's identical drive-outcome arms are one,
its lane key and task state move instead of being cloned, the tenant
component width converts with try_from, and the entry points are
crate-visible. The remaining line, nesting, cast, lock-poison, wait
and spawn contracts are narrow expectations; the session driver is a
registered effect owner. Both ledgers are pruned of the 88
occurrences this removes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The session's unit tests never drive serve end to end, so a blank
serve survived them; the DST SSE delivery and livefeed swap scenarios
observe the served stream.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The cast sits in the macOS-only task_info block, so the expectation
was unfulfilled on linux and failed the CI build.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@sorenbs

sorenbs commented Sep 12, 2026

Copy link
Copy Markdown
Member Author

Landed on slate through batch 7 (#141, merge commit e97b84a); this branch's last commit was applied inside the batch, so GitHub did not detect the merge.

@sorenbs sorenbs closed this Sep 12, 2026
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