Skip to content

delete the ci floor and any associated rust code - #8404

Closed
gunbai-bot[bot] wants to merge 2 commits into
mainfrom
fix/optional-absent
Closed

gunbai-bot[bot] wants to merge 2 commits into
mainfrom
fix/optional-absent

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Auto-opened by session-dashboard for session sleek-moth-351.
Pushing to fix/optional-absent advances this PR.

Worker attestation

Before flipping this PR to ready for review, confirm each item:

  • Title describes the change (not the session id or branch).
  • PR body summarises what and why (replace the TODO below).
  • Tests run: name the command (e.g. npm test, cargo test) and the result.
  • If this closes a work item, the body contains a Closes #N directive.
  • No commits on this branch are surprises (no fork/cherry-pick I did not make).
  • No secrets / credentials / large binaries staged.

Summary

TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.

Test plan

  • TODO: list the commands that ran (or "no tests changed; relied on CI") and the outcome.

gunbc-ci-auto-heal and others added 2 commits August 17, 2026 23:29
…at now pass

THE FIRST COMPLETE RUN OF THE NEW FLOOR LANDED (main 611fd02, run
32076934126) and every mechanism reported. planned = executed = terminal = 9366;
8523 passed + 795 held + 48 failed reconciles exactly; the decline partition came
out 1088 = 309 long-home + 779 live-tree; and the roster's own partition held at
820 = 795 held + 25 now-passing. What follows is the two things it found.

TWENTY-FIVE ENROLLED ROWS NOW PASS, so they red the build and name themselves for
removal. That is the removal path working as designed rather than a roster edit:
six merges landed under a roster measured on 380c242, and these are the rows
those merges fixed. Removed at exact identity grain; the roster is 795.

ELEVEN FAILURES ARE MINE, and they are the same over-correction wearing a
different hat. My earlier qualification commit rewrote bare `Absent` to
`std.upsert_decision.Absent` across eight modules to break a collision with
ConvergeVerdict. But `Absent` is ALSO the absent arm of Optional, and in a match
over `SwapStats?` the arm belongs to Optional, not to ObservationVerdict. So I
qualified twelve patterns to the wrong authority and turned exhaustive matches
into non-exhaustive ones — `non-exhaustive pattern match on: null`, where null is
the Optional's own runtime absence.

That is worth naming precisely, because it is the mirror of the defect it was
fixing. The original bug was a bare name binding to the wrong declaration by
insertion order; my fix was a qualified name binding to the wrong declaration
because I qualified without checking which type the match scrutinee had. Both
mis-bind; only one of them looks careful. Site-level qualification is exactly as
capable of naming the wrong authority as bare lookup is, which is an argument for
the construction wall rather than for more of what I did.

Reverted at the twelve sites whose match carries a `Present {` sibling arm — those
scrutinees are Optional. The sites that genuinely match ObservationVerdict keep
their qualification; readback_independence's two arms are checked and correct.

Verified the roster evaluates through required_floor's own closure, which is the
frame the floor reads it in.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Four witnesses runs, one row per [floor-witness-slow] line, each carrying its
source log, subject and planned count. Two of the four predate the
reads_live_tree decline (planned=10114), so a merged denominator mixes
witnesses the current fold never executes with ones it does. The table carries
the provenance per row so a reader can partition it; the note records the
retraction that merging them already caused.
@gunbai-bot

gunbai-bot Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor Author

Cut from a pre-squash base, so it re-proposes #8400's already-merged content. Reopened as a clean two-file branch off current main.

@gunbai-bot gunbai-bot Bot closed this Aug 18, 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.

0 participants