Skip to content

Delete the 56 transition-admission rows orphaned by the removed namespace-wave wall - #12195

Merged
gunbai-bot[bot] merged 3 commits into
mainfrom
session/silent-lark-570
Sep 24, 2026
Merged

gunbai-bot[bot] merged 3 commits into
mainfrom
session/silent-lark-570

Conversation

@gunbai-bot

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

Copy link
Copy Markdown
Contributor

First burn-down from the out-of-closure blocking-error census (dashboard node adhoc-a2a92155-454).

What: delete every row under dag/gunbc/namespace/transition_admission/ (56 files). Each one imports gunbc.namespace.transition_admission, which gunbc#11774 deleted along with the namespace-wave-admission wall. The pinned v2.compiler.reference_conservation_census reference_conservation_stratified_sample_paths is left unchanged. That sample is pinned to fec339d and declared byte-for-byte rerunnable, and the census renders a deleted path as an explicit unreadable line, so its six entries for this directory now render that way.

Why the rows exist: #11625 (32 rows), #11565 (10), #11667 (10) and #11689 (4) authored them to adjudicate namespace-wave refusals. Those branches landed after #11774 had removed the wall. #11681's 13 rows are not among them, because #11696 already deleted them. #11771 had already deleted 23 survivors on the same reasoning. gunbc.rung_drop.namespace_wave_admission_wall_removed records the directory as "deleted with the wall", and the namespace-cut plan names none of these rows, so this is §3c dangling, not a migration. (An earlier version of this body and the first commit message named the wrong PRs and said 17; the second commit states the correction.)

Why they landed: before #11829, a refused floor did not fail the job. #11625's floor job 106202716752 printed all of these errors and required-ci: floor refused, and the job still concluded SUCCESS.

Receipt: neat-ibex-861's whole-root sweep of 2026-09-23 (gunbc compile --source-root dag --source-root src/v2 --target dag --repository gunbc --measured-root-demands tools/whole_corpus_compile_measured_root_demands.json) reported 500 blocking errors. 280 of them are these 56 files × 5 (the unresolved import, plus TransitionAdmission, Binding and NotAuthored). After this PR, no .dag or .rs file imports the module. The remaining 220 errors (39 designed-refusal probes, and 181 wall-class errors in 62 modules) are out of scope; the compiler-change vector behind them is declared in #12201.

🤖 Generated with Claude Code

…pace-wave wall

gunbc#11774 (2026-09-20) deleted the namespace-wave-admission wall together with
gunbc.namespace.transition_admission, the module every row under
dag/gunbc/namespace/transition_admission/ imports. #11771 then deleted the 17
survivors it could see, but #11565, #11667, #11681, #11689 and #11625 were already
in flight and landed 56 more rows afterwards. Each one was written to adjudicate a
namespace-wave refusal that no longer exists.
They landed green because before gunbc#11829 a refused floor did not fail the job:
#11625's floor job 106202716752 printed every one of these errors and
`floor refused`, and still concluded SUCCESS.

These rows are 280 of the 500 blocking diagnostics in the whole-corpus
`gunbc compile --target dag` sweep, 5 per file: the unresolved import plus
TransitionAdmission / Binding / NotAuthored. Nothing consumes them.
gunbc.rung_drop.namespace_wave_admission_wall_removed already records the
directory as "deleted with the wall", so this delete carries out that record.
No row carries a fact meant for a replacement authority:
docs/plans/namespace-cut-replacement-plan.md names none of them.

v2.compiler.reference_conservation_census reference_conservation_stratified_sample_paths
named 6 of the deleted files. They are dropped from the sample: the list is a rule over
existing .dag files, and leaving them in would print `unreadable` lines.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
gunbai-bot Bot pushed a commit that referenced this pull request Sep 24, 2026
…tanding blocking roster

A compiler change that adds or tightens a refusal can refuse code in admitted modules that no
required lane compiles on that change. The touched-entry seed and gunbc#12130's interface-consumer
planning cover a changed module and every module reading a changed declaration. A compiler change
changes no declaration a module imports, so it seeds nothing, and its new refusals land on main
while every lane is green. The 2026-09-23 whole-root sweep (session neat-ibex-861) found 500
blocking diagnostics. 280 came from the transition-admission rows gunbc#12195 deletes. Most of the
rest are refusals from checks that landed after the files they refuse were last edited.

- gunbc.rung_drop.compiler_change_refusals_land_outside_every_compiled_closure: previous rung 2,
  temporary rung 1, LostAsPassenger of the whole-corpus compile-clean pass. Its trigger is the
  capability: a whole-root blocking-diagnostic identity join runs on a schedule or gate against a
  committed roster.
- gunbc.whole_root_blocking_diagnostic_roster: the standing population keyed by (module, verbatim
  message, occurrence), minus #12195's rows, typed TranscribedUncited (DESIGN section 4d) because
  it is a hand-split snapshot rather than a classifier's observation. The read obligation is to
  re-seed it from the first real run. Its consumer is the join, a declared frontier: it needs a
  runner, which waits on an operator ruling, and no trigger is wired here.

No variant is keyed. The CLI prints none, and adding one would be refused v1 surface growth
(gunbc.v1_maintenance_standing PublicSurfaceGrowth). The verbatim message names the offending
symbol, which is finer.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
gunbai-bot Bot pushed a commit that referenced this pull request Sep 24, 2026
…tanding blocking roster

A compiler change that adds or tightens a refusal can refuse code in admitted modules that no
required lane compiles on that change. The touched-entry seed and gunbc#12130's interface-consumer
planning cover a changed module and every module reading a changed declaration. A compiler change
changes no declaration a module imports, so it seeds nothing, and its new refusals land on main
while every lane is green. The 2026-09-23 whole-root sweep (session neat-ibex-861) found 500
blocking diagnostics. 280 came from the transition-admission rows gunbc#12195 deletes. Most of the
rest are refusals from checks that landed after the files they refuse were last edited.

- gunbc.rung_drop.compiler_change_refusals_land_outside_every_compiled_closure: previous rung 2,
  temporary rung 1, LostAsPassenger of the whole-corpus compile-clean pass. Its trigger is the
  capability: a whole-root blocking-diagnostic identity join runs on a schedule or gate against a
  committed roster.
- gunbc.whole_root_blocking_diagnostic_roster: the standing population keyed by (module, verbatim
  message, occurrence), minus #12195's rows, typed TranscribedUncited (DESIGN section 4d) because
  it is a hand-split snapshot rather than a classifier's observation. The read obligation is to
  re-seed it from the first real run. Its consumer is the join, a declared frontier: it needs a
  runner, which waits on an operator ruling, and no trigger is wired here.

No variant is keyed. The CLI prints none, and adding one would be refused v1 surface growth
(gunbc.v1_maintenance_standing PublicSurfaceGrowth). The verbatim message names the offending
symbol, which is finer.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

@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.

SOURCE HOLD at exact head b79067af1d60f82d1f962b09c9480b0590c54de1.

The 56 row deletions themselves are correct. #11774 removed the namespace-wave-admission phase and gunbc.namespace.transition_admission; the standing rung-drop explicitly says this roster directory is deleted with the wall; and I found no replacement-authority obligation for these temporary admission rows. All five required checks are green and GitHub reports CLEAN.

Two repairs remain.

1. Do not silently shrink the pinned reference-conservation sample

This head removes six dag/gunbc/namespace/transition_admission/... members from reference_conservation_stratified_sample_paths and adds no replacements. That is not consistent with the authority in the same module:

  • it calls this the pinned 2026-09-23 sample over main fec339d561;
  • it says each stratum takes max(6, round(...)) files;
  • it says the list is kept so the sample reruns byte-for-byte;
  • and the census explicitly says an unreadable path is its own line, never an omission.

After this edit the original 315-path sample becomes 309 paths, and the dag/gunbc/namespace stratum has only namespace_structural_observation_bridge_seed_growth.dag left: seven sampled paths become one, below the stated minimum of six even though the live namespace stratum still has enough <=8 KB files. This rewrites and weakens the evidence denominator while leaving the declaration of that denominator unchanged.

Required disposition: either leave the six paths in the historical pinned sample, where deletion honestly yields six unreadable lines, or mint/recompute a new, separately identified sample from this exact corpus using the declared selection rule while preserving the old sample and its receipts. Do not hand-shrink the pinned sample and continue calling it byte-for-byte stratified evidence.

2. Correct the provenance account

The current body and source commit say #11565, #11667, #11681, #11689 and #11625 account for these 56 survivors, and that #11771 deleted 17 rows. The exact history does not support that:

  • the 56 rows being deleted divide as 32 owned by #11625, 10 by #11565, 10 by #11667 and 4 by #11689;
  • #11681 contributes none of these 56, because #11696 already deleted its 13 admission rows;
  • the final #11771 diff deleted 23 transition-admission rows, not 17.

Please amend the commit/body provenance while changing the sample treatment. The core deletion should then be a straightforward re-review; I found no objection to removing all 56 orphan rows.

…rovenance

The six transition_admission paths go back into
v2.compiler.reference_conservation_census reference_conservation_stratified_sample_paths.
The sample is pinned to fec339d and declared byte-for-byte rerunnable, with at least six
paths per stratum. The census renders an unreadable path as its own `unreadable` line, never
an omission, so a deleted path belongs in that rendering, not in a shrunken list. Recomputing
the sample is not this change's work.

CORRECTION to the first commit's message, which named the wrong landing PRs and a wrong count.
The 56 surviving rows came from gunbc#11625 (32), #11565 (10), #11667 (10) and #11689 (4).
#11681 contributed none: its 13 rows were already deleted by #11696. #11771 removed 23 rows,
not 17.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

@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-MERGE at exact head 5f7309e3480b86477c0f541f86cbf95f34e88ff7, superseding my REQUEST_CHANGES review at b79067af1d60f82d1f962b09c9480b0590c54de1.

Both held issues are discharged.

  1. The historical sample is preserved. The only source delta from the held head restores the six dag/gunbc/namespace/transition_admission/... members to reference_conservation_stratified_sample_paths. The sample therefore remains the pinned, byte-for-byte 315-path denominator over fec339d561; after the row deletion, those six members produce the census's explicit unreadable <path> result rather than silently disappearing. The PR diff against main is now exactly the 56 deleted roster files: 56 changed files, zero additions, 1,064 deletions.

  2. The provenance account is corrected. The second commit and PR body now state the actual surviving population: #11625 = 32, #11565 = 10, #11667 = 10, #11689 = 4; #11681 contributes zero because #11696 already deleted its 13 rows; and #11771 deleted 23 rows, not 17.

The underlying deletion remains the correct disposition: #11774 removed the namespace-wave-admission phase and its carrier, while the standing rung-drop says the transition-admission roster directory is deleted with the wall. I found no replacement-authority obligation in these temporary rows.

Compiler, clippy, emit-build, floor and the witnesses rollup all pass at this exact SHA, and GitHub reports the pull request mergeable. No further condition remains unless the head moves.

@gunbai-bot
gunbai-bot Bot added this pull request to the merge queue Sep 24, 2026
Merged via the queue into main with commit 318345e Sep 24, 2026
5 checks passed
@gunbai-bot
gunbai-bot Bot deleted the session/silent-lark-570 branch September 24, 2026 11:31
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