Move the SSE source's span rule and the feed's retention entry beside their owners; state their remaining contracts; remove 71 inherited warnings - #138
Merged
Conversation
…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>
… their owners; state the source's and the feed's remaining contracts The linearization rule, the ownership check and the fatal cutoff live in source/spans.rs, the retention entry's admission mirror in feed/retention.rs and the budget's test knobs in feed/test_support.rs. The sealed span's cached reader has a named type and the span identity allowance carries its reason. Each source's and the feed's lock-poison contract is one attribute on the impl that owns the lock; the remaining line, argument, nesting, wait, cast, wildcard-arm and precondition contracts sit on their functions, and the transition retry task is a registered effect owner. Both files end below their merge-base size and both ledgers are pruned of the 71 occurrences this removes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…cenarios for the source owners The mutation experiment found the moved span rule's arithmetic, its redundant last-span guard, the fatal cutoff's Display and the ownership check unobserved by the sse unit tests. The rule is pinned on a three-span lineage, the guard whose result equalled the fallback is gone, the cutoff names its reason, and the source owners also run the DST livefeed ownership and swap scenarios. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ant last-span flag The moved ownership check's blank mutant hangs the ownership scenarios instead of failing them, so it stays in source.rs out of the diff and the source owners run the sse unit tests again. With the second guard gone the last-span flag in the first guard is unobservable too: continuing past the last span reaches the fallback with the same position, so the flag and its arithmetic are gone. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Moving ProjectRetention's mirror into retention.rs made its three methods executable mutants, and no sse:: test observed the mirrored bytes on the bound admission entry. The feed tests now bind an admission entry to a fresh retention entry and check that nothing mirrors before the bind, that every add and sub after it lands exactly, and that a second bind never redirects the mirror. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Chunk of the inherited-warning cleanup: the SSE lineage source and the live feed (71 occurrences).
Moved beside their owners: the source's engine-free pieces (the linearization rule
locate_in_spansand the fatal cutoff) insse/source/spans.rs; the ownership check stays insource.rs, because its blank mutant hangs the ownership scenarios instead of failing them; the feed's per-project retention entry insse/feed/retention.rsand its test-only budget knobs insse/feed/test_support.rs.Fixed rather than annotated: the sealed span's cached local reader has a named type (
LocalReader), which retires bothtype_complexitysites; the span identity allowance carries its reason.Stated as expectations (owner; invariant; why the simpler alternative is wrong): the lock-poison contract of each source and of the feed's state cell is one attribute on the impl that owns the lock; the remaining line, argument, nesting, wait, cast, wildcard-arm and precondition contracts sit on their functions, several lints per attribute where a function carries several. The feed's transition retry task is a registered effect owner.
Both files end below their merge-base size. Every touched file is a registered mutation owner. The mutation experiment on the moved span rule found its arithmetic, its redundant guards and the cutoff's Display unobserved: the rule is pinned on a three-span lineage, both redundant guard conditions (whose results equalled the fallback) are gone, and the cutoff names its reason.
🤖 Generated with Claude Code