Skip to content

Resolver cost: demand-scoped typed census, import-facts cost shape, bare-admission scoping - #12970

Closed
gunbai-bot[bot] wants to merge 45 commits into
mainfrom
session/bold-bat-516-bare-scope
Closed

gunbai-bot[bot] wants to merge 45 commits into
mainfrom
session/bold-bat-516-bare-scope

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

Auto-opened by session-dashboard for session bold-bat-516.
Pushing to session/bold-bat-516-bare-scope 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 30 commits September 29, 2026 18:08
The via-index parse and the parse-cache miss arm re-lexed every closure file the pool
census had already lexed under the same spelling. Both now ask pool_acquire. Adds the
per-term attribution probe and a live identity differential (pooled vs fresh artifact
over the whole pool).

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

pool_acquire holds one file-local heads reading (empty intern table, occurrence
ordinals from zero). module_path_index reads it as-is; the pool census maps it into
its threaded intern/occurrence space by a total projection (occurrence ids offset by
the entry base, idents relabeled through the file's string list) instead of parsing
the file a second time. Anything the parser does not produce refuses.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Every Node field and every ExprData / MatchPattern / InferredNode arm is named with
no '..' or wildcard, so a field or variant added later fails to compile at the walker
instead of passing through with file-local ids (review 72735).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
build_symbol_index_census_nodes is census_with_resolved_fn_sigs over the raw census;
closure_name_census(index, Some(root)) already builds and memoizes exactly that raw
census over the same nodes and source indices. tree_bare_census_for_root now upgrades
the memoized value. Adds a live whole-SymbolIndex differential per root.

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

# Conflicts:
#	src/v1/stage0/src/cli_run/entry_resolve.rs
…ites it, so Some refuses

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

# Conflicts:
#	src/v1/stage0/src/cli_run/entry_resolve.rs
…t-516-bare-fill

# Conflicts:
#	src/v1/stage0/src/v1_compiler_infer.rs
…refusal, builtin arm

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

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ads name index once per index; transitive-pick row rung and trigger restated

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

# Conflicts:
#	src/v1/stage0/src/cli_run.rs
#	src/v1/stage0/src/cli_run/entry_resolve.rs
#	src/v1/stage0/src/v1_compiler_infer.rs
The builtin arm no longer pulls another tree's fn get for a builtin get call, so these pairs
no longer occur (floor: RosterStale ... retire it as ImportsFixed).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…essWet rows, with its declared rung drop

A changed witness whose file is a BinWitnessWet WitnessExclusionRow is declined, counted and
located per row, instead of planned into a certain route gap: no CI lane executes that class.
The loss is declared as gunbc.rung_drop.edited_bin_witness_wet_rows_not_executed_by_ci (appended
to the roster; docs/design-rung-drops.md regenerated).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…; retire the 12 get pairs as NotAReference (review 73273)

A test-row provider was never pulled, so it does not refuse. The get pairs stopped occurring
because the reader now resolves get as the builtin, not because any import was fixed.

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

The rung drop's population is one data list, edited_bin_witness_wet_rows_not_executed_by_ci_population,
which the RungDrop row and the floor gate both read. A BinWitnessWet row it does not name is
not declined, so the drop is bounded and widening it is an edit to that list.

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

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
gunbc-ci-auto-heal and others added 15 commits September 30, 2026 17:16
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…n entries

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

# Conflicts:
#	src/v1/stage0/src/cli_run/entry_resolve.rs
…disposition

gunbc#12794's decline pushed a disposition row, but the sublane's exactness join counted only
PlannedAsChangedWitness, so every declined selection refused as selected_without_disposition
(observed on gunbc#12741's floor, run 36768985832). The decline was unreachable by its route.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…-join' into session/bold-bat-516-bare-scope
…austively, and file the class

changed_witness_sublane_join is extracted and driven with a DeclinedNoCiWetLane selection
(red on the pre-fix allow-list predicate with ChangedWitnessSublaneJoinInexact, green here);
decides_a_changed_selection is an exhaustive match, so a new disposition arm cannot compile
without stating its membership. Class filed as
gunbc.recurring_failure_mode.a_new_decision_arm_the_downstream_join_does_not_admit.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…-join' into session/bold-bat-516-bare-scope
…73414)

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

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… typed-graph exclusive-bytes reader

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

suppress_withheld keeps every changed witness in the expected-red, route-gap and non-verdict
rosters on the premise that the changed sublane executes it. A DeclinedNoCiWetLane decline
falsifies that premise, so the route-gap reverse join refused three declined witnesses as stale
on this PR's floor. They are now suppressed with their own ground
(ExpectedRedSuppressionGround::DeclinedNoCiWetLane), decided by an exhaustive match.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…h; census filed as the RFM row's second specimen

Five hand-written seed sites decided by catch-all or matches!. partition_cost_debt_roster's
Some(_) contradicted its .dag authority for the two changed-selection declines (now
OutsideThisRunsUniverse, unit red on the restored catch-all). The others are converted without
behavior change; the site-projection line now counts the two declines it omitted.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@briansrls
briansrls marked this pull request as ready for review October 2, 2026 03:13
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-02T03:17:15.794735Z 3159123 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 315912398e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

};
let mut route_gap_roster = route_gap_roster;
let _ = suppress_withheld(&mut route_gap_roster, "floor_route_gap");
let _ = suppress_declined_no_ci_wet_lane(&mut route_gap_roster, "floor_route_gap");

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Suppress matching route-gap expectations too

When a changed BinWitnessWet identity also has a typed route-gap expectation—several declared members do, such as the namespace-structural and self-host artifact witnesses in src/v2/workflow/floor_route_gap.dag—this line removes the identity from route_gap_roster, but the expectation decoder at lines 9559-9562 still iterates its expectation and refuses because the identity is now absent from that roster. Consequently, edits to those explicitly non-blocking wet rows still fail the required floor with located identity is absent from derived roster; suppress the corresponding expectation under the same DeclinedNoCiWetLane condition.

Useful? React with 👍 / 👎.

Comment thread target_rr.sh
@@ -0,0 +1,8 @@
CG=/sys/fs/cgroup/gunbc-probe; S=""; command -v sudo >/dev/null && S=sudo
echo "+memory" | $S tee /sys/fs/cgroup/cgroup.subtree_control >/dev/null; $S mkdir -p $CG; echo 23622320128 | $S tee $CG/memory.max >/dev/null; echo $$ | $S tee $CG/cgroup.procs >/dev/null
git stash push -q -- src/v1/stage0/src/cli_run/required_floor_runner.rs

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Restore the source file after the temporary stash

When this helper is run with local changes to required_floor_runner.rs, git stash push -q -- <pathspec> removes those changes from the worktree, but the script never executes git stash pop or git stash apply. Because the stash is also quiet, the helper appears to finish while leaving the user's edits hidden in the stash; preserve and restore the file without mutating the caller's stash state.

Useful? React with 👍 / 👎.

@gunbai-bot

gunbai-bot Bot commented Oct 2, 2026

Copy link
Copy Markdown
Contributor Author

Closing rather than rebasing. This PR was auto-opened when bold-bat-516's session was closed out. Its branch is #12741's history, which already landed on main by squash (hence the conflicts), plus one close-out WIP commit (3159123) that contains only untracked scratch scripts (target_*.sh) and isn't meant to land. Nothing here needs merging. The branch is kept. — sent from jolly-boar-500

@gunbai-bot gunbai-bot Bot closed this Oct 2, 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