Skip to content

BL-0: three-state frontier disposition, rejection carries diagnostics - #8228

Merged
briansrls merged 1 commit into
mainfrom
session/warm-fox-179-bl0
Aug 13, 2026
Merged

briansrls merged 1 commit into
mainfrom
session/warm-fox-179-bl0

Conversation

@gunbai-bot

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

Copy link
Copy Markdown
Contributor

Auto-opened by session-dashboard for session warm-fox-179.
Pushing to session/warm-fox-179-bl0 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.

The observer carried two arms over three reachable states, and the missing
arm failed OPEN: every Rejected outcome fell to the else branch and reported
BodyLoweringLowered. The instrument used to measure the body-lowering gap
was counting failures as successes, so any population read through it
undercounted by exactly the refusals.

That arm is reachable by construction, not in theory: the rejection-
propagation repair deliberately made body_lower_finish_for_normalize
propagate genuine rejection through rejected_with_pending, and this
classifier then discarded the distinction it created.

Recognition had the same fail-open by a second route. It read the diagnostic
HEAD alone, while retention travels through diagnostics_merge and
rejected_with_pending — both of which place OUTER diagnostics first — so a
retained body behind any pending diagnostic also read as lowered. It now
scans the whole list.

Six claims green by execution. RED verified by restoring the previous
classifier: the rejection claim, the rejection-diagnostics claim and the
behind-a-pending-diagnostic claim all red, while the three negative controls
stay green — so the claims pin these two defects rather than failing
broadly. The controls are the load-bearing half: a classifier that answered
retained more often would satisfy the positive claims and destroy the count.

Two existing consumers gain the third arm. Residue declared on the carrier:
recognition still reads an encoding rather than a producer-returned variant,
correct for every encoding the single retention producer can emit, with
dissolve-on naming the producer change that makes this function the identity.

First step of the sequence gunbc.roadmap_authority already declares: honest
frontier, then the normalized-tree construction boundary, then the retained
population to zero.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review August 13, 2026 16:46
@gunbai-bot gunbai-bot Bot changed the title Body Lowering BL-0: three-state frontier disposition, rejection carries diagnostics Aug 13, 2026
@briansrls
briansrls merged commit 9c5d007 into main Aug 13, 2026
5 of 10 checks passed
@briansrls
briansrls deleted the session/warm-fox-179-bl0 branch August 13, 2026 18:44
gunbai-bot Bot pushed a commit that referenced this pull request Aug 13, 2026
Merges main through 3c533ba rather than through its tip. #8228 landed at
9c5d007, so this drops the BL-0 files this branch was duplicating and
reduces the diff to the BL-2 work alone.

It deliberately stops one commit short. #8214 (9156b78) introduced in-body
source annotations across 13 files, confirmed by compiling dag/std/affine_space.dag
against the live tree, so merging main's tip today would import a known
compile-clean red into a branch that is currently green — turning an unrelated
lane's defect into this PR's failure. 3c533ba is the newest main commit whose
tree carries neither the in-body nor the unattached annotation form.

The remainder of main merges once that class is repaired.
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