Repository navigation
Preserve held disposition in changed-witness standing - #9739
Merged
Merged
Conversation
Contributor
Author
|
Addressed both findings from review 57572 in commit 14cb7cf.
— sent from swift-carp-293 |
gunbai-bot Bot
pushed a commit
that referenced
this pull request
Aug 30, 2026
…ding arms Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019LUsJiEMrVVJYjbAXXvKtc
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.
Work item
node://adhoc-40803be0-645(parent neat-swift-219).The changed-witness projection collapsed
KnownRedHeldintoPlannedAndPassed, producing the contradictory line observed on #9727 (standing=planned-and-passed outcome=known-red-held). This changes the.dagauthority first:ChangedWitnessExecutionStandingnow has a distinctPlannedAndKnownRedHeldconstructor, realized on the host wire asplanned-and-known-red-held. Ordinary passing identities remainplanned-and-passed.This standing is not display-only: it feeds
changed_witness_standing_blocksand therefore the required-floor decision. The new held constructor is explicitly non-blocking, preserving the sanctioned expected-red behavior while making the projected label honest. Exhaustive.dagmatches carry the new arm, so omitted classifications refuse compilation.RED/control evidence:
planned_with_known_red_held_verdict_stands_greennow requires the distinct held constructor; it would fail under the prior collapse.planned_with_passed_verdict_stands_greenkeeps the ordinary pass label.passed_and_known_red_held_are_greenproves both decision polarities explicitly.planned-and-known-red-heldwire label andoutcome=known-red-held.Verification:
cargo test -p v1-compiler changed_witness_projection_tests --lib— 11 passed. BuildBuddy invocation: https://app.buildbuddy.io/invocation/d5ad2046-a884-4c01-a100-665ab5e3de88Composition: #9725 also adds a constructor and match arms to
floor_changed_witness.dag. The changes are semantically independent and trivially composable; this PR lands FIRST; #9725 then integrates the resulting main, preserving both exhaustive arms (PlannedAndKnownRedHeldfrom here,DeclinedRoutedToWetLanefrom #9725).Hand-Rust receipt:
v1_compiler.cli_run.required_floor_runner.changed_witness_projection_rowsandemit_changed_witness_projectionareExistingSeedItemModifiedundergunbc.seed_growth_admission.SeedGrowthChangeDisposition; this change only re-arms those existing functions for the new modeled standing constructor. It adds zero module-scope Rust items and no new seed capability, so noSeedGrowthJustificationrow is due.