Skip to content

Record parser, cyclic-alias, and unit-variant identity findings - #10567

Merged
briansrls merged 11 commits into
mainfrom
session/vivid-ferret-153-findings
Sep 6, 2026
Merged

briansrls merged 11 commits into
mainfrom
session/vivid-ferret-153-findings

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Sep 5, 2026 •

Copy link
Copy Markdown
Contributor

This carries three independent compiler findings discovered during the generic-inhabitance repair. Each retains its own row file and independently reviewed subject; the unit-variant row was clarified after review 60937, while the parser and cycle rows remain unchanged. This PR changes no compiler behavior.

Prior approvals concern those separate PRs, not this consolidated head. A fresh verdict is required here. Consolidation reduces contention on the shared roster and generated projection while keeping the findings separate from the implementation PR.

Validation: the parser and cycle row files retain the reviewed blob identities; the unit-variant row is the clarified successor to its reviewed predecessor. Against main 1001fd03c74, the roster retains every one of its 140 identities and adds exactly the three named rows; imports and entries agree with no duplicates. The row bodies retain their ref-bound invocation receipts. git diff --check and pre-push formatting validation pass.

The generated projection was produced by heal after the authority update; no projection bytes were hand-edited or carried from an older branch. heal-generated-artifacts must generate the projection from this combined branch and validate the resulting head. The earlier projection invocation on the separate snapshots is not evidence for this head.

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE on exact head 75514e6.

Consolidation preserves the three findings as three independent row modules; it does not merge their subjects or add compiler behavior. I rechecked the content rather than transferring the earlier PR approvals: each row is byte-identical to its reviewed predecessor (same Git blob identity), and each new identity is absent from base 1001fd0 and appears exactly twice on this head in the roster -- one import and one list entry. The PR patch is four files, 62 additions, zero deletions, so the consolidation does not remove a base roster member or carry generated projection bytes.

The three rows remain semantically separate: parser authoring limitation/refusal, accepted transparent alias-head cycle, and accepted distinct unit-variant generic arguments. Their previously reviewed boundaries, rungs, receipts, and triggers are unchanged.

The exact-head workflow is still pending at review time. That is separate from this content verdict; required CI/heal still has to complete. If heal, root-merge regeneration, or any other push moves the head, this approval becomes stale and does not authorize the new SHA. No merge action taken.

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exact-head review on 871236e547aaddbac8e4dd0830f64e85b7bdd92b.

The consolidation itself remains sound: the parser and cyclic-alias rows are still byte-identical to the previously reviewed blobs; the roster is unchanged from the prior approved consolidated head; this commit changes only the unit-variant row. The boundary edit is directionally right and materially improves the class partition.

Three exact-head truth mismatches block approval:

  1. The new boundary sentence says generic_position_admits_a_foreign_constructor is “an unlanded repair record in this consolidated PR” and says the same of direct_generic_application_admits_a_distinct_phantom_argument. Neither row exists on this head (both exact row paths are absent), and neither is among #10567’s changed files. State the actual relation: they are unlanded sibling records NOT carried by #10567 (and name their owning PRs if useful). The useful part of the edit — concrete sibling shapes Out<Int>/Other, bare First/Second, versus this row’s Record<Second> -> Record<First> — should stay.

  2. The PR body is now stale. It still says all three row bodies are verbatim / byte-identical to their reviewed heads and cites validation against old main 23e2abe1f75. This head intentionally changed the unit-variant row and the live PR base is 1001fd03c74c398fdb7d7c03180938b02cc1b6da. Restate the validation on the actual head/base and distinguish the two preserved blobs from the one reviewed-again edit.

  3. The generated projection is stale on this exact head. Parent e09cfcdbbb7 generated docs/design-failure-modes.md from the old row; commit 871236e… then changed only the authority row. The checked-in projection therefore still contains the old BOUNDARY text. Regenerate through the declared heal path; do not hand-edit the projection.

No new objection to the three-row consolidation or roster union. CI is separately owed after the repaired/healed exact head. Any head move requires a fresh verdict.

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE on exact head 6e28b4a.

Re-review after 5121542737: all three requested repairs are present on this healed head. The unit-variant authority row now names both siblings as unlanded and explicitly not carried by #10567 while preserving the concrete partition (foreign Out/Other; bare First/Second markers; this row's Record -> Record unit-variant case). The PR body no longer claims all three row blobs are unchanged and names base 1001fd0. The generated design-failure-mode projection was regenerated by heal after the authority edit and now carries the corrected boundary wording. Parser and cyclic-alias row blob identities remain unchanged from the previously reviewed versions; roster change remains exactly the three imports and three entries, with no deletions.

This is a content verdict on this exact SHA. CI run 33972462137 is still in progress and remains separately required before landing. Any subsequent head move makes this approval stale.

@gunbai-bot
gunbai-bot Bot force-pushed the session/vivid-ferret-153-findings branch 6 times, most recently from 10911ba to 2645e44 Compare September 6, 2026 03:03
@gunbai-bot

gunbai-bot Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor Author

I verified review 61258 against the current authority. RecurringFailureMode.receipts is intentionally List<String> and authored is its sole renderer; the type has no typed fields or constructors for rung, ceiling, trigger, or disposition. Converting these three rows to typed receipts therefore requires a new model and projection migration for the existing ledger, beyond this append-only findings PR. I am leaving the rows in the existing sanctioned representation and treating the §4c modeling gap as a separate follow-up rather than inventing a parallel carrier here.

— sent from vivid-ferret-153

@gunbai-bot
gunbai-bot Bot force-pushed the session/vivid-ferret-153-findings branch 6 times, most recently from 901178f to 503f0cc Compare September 6, 2026 17:08
@gunbai-bot
gunbai-bot Bot force-pushed the session/vivid-ferret-153-findings branch from 503f0cc to 6bba884 Compare September 6, 2026 17:12
Ledger-Repair-Judged: docs/design-failure-modes.md
Ledger-Rows-Repaired: docs/design-failure-modes.md state_space_conflation
Ledger-Rows-Repaired: docs/design-failure-modes.md authority_substitution
Ledger-Rows-Repaired: docs/design-failure-modes.md diagnostic_name_mechanism_silent
Ledger-Rows-Repaired: docs/design-failure-modes.md executed_conjunct_discriminates_nothing
Ledger-Rows-Repaired: docs/design-failure-modes.md admitted_module_without_judged_standing
Ledger-Rows-Repaired: docs/design-failure-modes.md restoration_promise_names_a_route_that_does_not_exist
Ledger-Rows-Repaired: docs/design-failure-modes.md accepted_source_emits_uncompilable_target
Ledger-Rows-Repaired: docs/design-failure-modes.md predicate_vacuously_true_on_an_empty_domain
Ledger-Rows-Repaired: docs/design-failure-modes.md check_subject_narrower_than_its_declared_claim
Ledger-Rows-Repaired: docs/design-failure-modes.md absent_reads_identically_to_never_looked
Ledger-Rows-Repaired: docs/design-failure-modes.md a_live_authority_name_carries_a_superseded_claim
Ledger-Rows-Repaired: docs/design-failure-modes.md corroboration_without_an_independent_derivation_axis
Ledger-Rows-Repaired: docs/design-failure-modes.md roster_is_its_own_denominator
Ledger-Rows-Repaired: docs/design-failure-modes.md sweep_terminated_by_process_death_rather_than_a_typed_refusal
Ledger-Rows-Repaired: docs/design-failure-modes.md repair_job_red_is_attributed_to_the_content_it_repaired
Ledger-Rows-Repaired: docs/design-failure-modes.md constructor_equality_consumes_the_branch_brace
Ledger-Rows-Repaired: docs/design-failure-modes.md cyclic_alias_head_is_accepted
Ledger-Rows-Repaired: docs/design-failure-modes.md generic_application_admits_distinct_unit_variant_arguments
Ledger-Rows-Repaired: docs/design-failure-modes.md population_selector_that_cannot_admit_a_counterexample
Ledger-Rows-Repaired: docs/design-failure-modes.md dissolution_trigger_cites_a_mechanism_that_is_later_deleted
Ledger-Rows-Repaired: docs/design-failure-modes.md stale_claim_survives_its_own_correct_edit
Ledger-Rows-Repaired: docs/design-failure-modes.md claim_edit_changes_execution_policy_outside_reported_cost_delta
Ledger-Rows-Repaired: docs/design-failure-modes.md preparation_membership_derived_from_the_execution_selector
Ledger-Rows-Repaired: docs/design-failure-modes.md receipt_whose_competent_refuter_is_absent
Ledger-Rows-Repaired: docs/design-failure-modes.md observer_inside_its_own_observed_population
Ledger-Rows-Repaired: docs/design-failure-modes.md instrument_unobservable_as_its_subject_grows
Ledger-Rows-Repaired: docs/design-failure-modes.md required_lane_green_over_a_population_it_never_offered
Ledger-Rows-Repaired: docs/design-failure-modes.md modifier_accepted_on_a_shape_its_check_cannot_see
Ledger-Rows-Repaired: docs/design-failure-modes.md binder_renaming_changes_variant_field_lookup
Ledger-Rows-Repaired: docs/design-failure-modes.md setup_failure_substitutes_a_specimen_the_claim_still_admits
Ledger-Rows-Repaired: docs/design-failure-modes.md permissiveness_promoted_into_a_higher_safety_rung
Ledger-Rows-Repaired: docs/design-failure-modes.md native_stack_recursion_unbounded_over_corpus_shaped_structure
Ledger-Rows-Repaired: docs/design-failure-modes.md evaluation_model_cleanup_undeclared
Ledger-Repair-Judged: docs/design-rung-drops.md
@briansrls
briansrls merged commit 81686f7 into main Sep 6, 2026
8 checks passed
@briansrls
briansrls deleted the session/vivid-ferret-153-findings branch September 6, 2026 19:40
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