Skip to content

Route-A: reconcile seed-green branch + emit-fresh cargo-green witness - #6073

Merged
briansrls merged 55 commits into
mainfrom
emitter/seed-green-integration
Jul 1, 2026
Merged

briansrls merged 55 commits into
mainfrom
emitter/seed-green-integration

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jul 1, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Closes the emitter/seed-green-integration branch for Route-A (Section 5 self-host):

  • Reconcile stale merge regressions — the branch had accidentally reverted #6045 record serialization during prior main merges; restored main-line authorities and merged latest main.
  • Add execution-grounded cargo-green witness — route_a_emit_fresh_cargo_green_test::emit_fresh_crate_cargo_builds_green assembles the faithful regen_stage0 --emit-fresh crate and proves cargo build succeeds in debug and release (0 rustc errors). This complements the existing regen --verify CI gate, which only proves byte-identical seed, not rustc-green.
  • Update stale Route-A comment in route_a_final_six_test.rs (the 0-E0308 milestone comment still claimed ~32 other-family errors remained).

Route-A cargo-green itself landed on main via #5777/#5873; this PR lands the branch closure receipt and the discriminating witness.

Test plan

  • cargo test -p v1-compiler-tests route_a_final_six — 6 passed
  • cargo test -p v1-compiler-tests route_a_emit_fresh -- --list — test registered
  • cargo test -p v1-compiler-tests emit_fresh_crate_cargo_builds_green -- --ignored — passed (~204s)
  • cargo run -p v1-compiler --release --bin regen_stage0 -- --emit-fresh target/emit-fresh-pr --verify — committed seed matches fresh self-compile

briansrls and others added 30 commits June 20, 2026 17:45
…ols (empty_intern_table, InductiveField, is_bare_leaf_item, SemVerConstraint) — clears E0425 from peeled/turbofish types not in source import set
…d-injection patch (clears E0433 x6 in bootstrap)
…ch (option d, container analogue of String/Nat) — guarded, List-only, at the 2 preserve-nominal sites; clears E0425/E0432 for newly-enrolled std files (realization_schedule Schedule, std_types list_length). v2-target faithful FreeMonoid untouched.
…s at the bare-nominal alias-RHS branch so Int/Nat as a generic ARG (Measure<...,Int>) lowers to i64 in the seed, consistent with the type Int = i64 alias def — clears the std_measure Int E0425
…r conflicts)

Resolved 4 conflicts in src/v1/05_emit_rust.dag and 1 in width_nat_type_arg_test.rs:
- render_rust_applied_type: keep branch's rust_seed_host_container_base (List->host Vec)
- rust_phantom_marker_inner: take main's join() simplification (equivalent, supersedes Optional-peel)
- emit_rust_expr_record_lit: take main's peeled_type_name refactor (branch lines were superseded duplicates)
- phantom-field comment: take main's wording (matches the refactor)
- machine_width test: keep active (un-ignore) — this branch carries the #5325 emitter fix the ignore waited on

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The test runs compile_sources against the in-process lib (committed stage0
seed), whose emit_rust.rs does not yet carry this branch's .dag peel fix
(branch updated 05_emit_rust.dag only, not the committed seed mirror). So it
must stay #[ignore]d until the seed regen lands (Track A step 3 / 2-stage
bootstrap). Reverts an over-eager un-ignore from the main merge.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…g/metering)

So `gunbc run` can interpret the live .dag compile/emit fold (compile_sources)
WITHOUT regenerating the seed mirror — making a .dag emitter fix verifiable BY
INTERPRETATION (DESIGN §5 green-by-execution, §7 self-host).

Additive only (fills previously-erroring builtin cases; cannot regress existing
behavior). Proven by execution: the interpreter now resolves the source closure
and runs the full lexer (tokenize) over a probe source, advancing into
parse/resolve. Remaining gaps are deeper interpreter semantics (e.g.
raw_map_lookup on a plain Record), not missing builtins.

- chars(s) -> List<Int>: code points (matches languages.dag emit template +
  lexer source_chars: List<Int>), method dispatch.
- chars_to_string(List<Int>, start, end) -> String: code-point slice -> token
  text, free-fn dispatch.
- record_source_chars_index_lookup(): no-op unit metering stub.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Bounded spike (parent-approved) toward running the emit fold by interpretation.
Both additive / non-regressing (fill previously-erroring cases):

- raw_map_lookup: a Record without a callable `lookup` field is now treated as a
  record-form map (key looked up as a field name; miss -> Null -> Violates via the
  existing Witness bridge). Unblocks `data x: Map<K,V> = { ... }` literals, which
  the interpreter builds as Records. (Deeper root: literals are never built as
  type-directed Maps; this handles it at the consumption site.)
- list_push: dedicated method-dispatch arm (was free-fn only). Pushes the arg as
  a single element, unlike concat/append/push which merge a list-valued arg.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…59-2e3

The HAND-APPLIED-REGEN-MIRROR-SYNC mark previously pointed at snappy-swift-91 /
#5325 (done-but-re-drifted, unreachable). The live dissolution lane is
bright-stag's adhoc-1bdd0259-2e3: re-repair the 18-error regen-fixpoint hole +
add a regen-equals-committed CI drift-gate so a main-merge can never silently
re-drift the fixpoint. Comment-only; the panic! splice (code) is unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The compile_error! -> panic! mirror splice shortened the string literal, so
rustfmt joins it onto one line (the original was split for the longer
compile_error! form). Hand-edit fmt-drift; cargo fmt --all applied. No code
change -- the splice is identical, only formatting. Restores rust_monolith_gate
fmt --all --check green on #5481.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…dag-only)

Foundational half of the class-3 corpus-representation-coherence fix (the
realization-layer handler-selection root behind the 26 List + 15 generic-syntax
census errors). Adds the named selector RustCorpusRepr = HostNative |
FaithfulFreeMonoid (04_emit_info.dag, auto-committed) and computes it ONCE as
the single authority in build_emit_graph_info (rust_corpus_repr over the whole
module corpus), threading it as the corpus_repr field through all 7 EmitGraphInfo
construction sites (each COPIES the field, never recomputes — quick-seal's
field=authority/param=read invariant).

INERT checkpoint: the type-renderer leaf gates still read the old per-module
rust_corpus_includes_v1_compiler/rust_emit_faithful_text_carrier, so emitted
output is byte-unchanged. Typechecks clean via the existing binary (0
diagnostics, 410 files emitted). The gate-switch + ~15-fn corpus_repr threading
+ leaf-fn param swap + dead-gate deletion + exact mirror transcription land in
the next pass, then the full-loop census oracle.

Realization-layer coherence fix, not a model change (List<e>=FreeMonoid<e> at
std/types.dag:227 untouched). Carrier B-home, idiom-threaded (per quick-seal).
adhoc-1bdd0259-2e3 dissolution lane. #5481.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
briansrls and others added 17 commits June 22, 2026 04:41
…ough emitter (class-3 representation-coherence)

Realization-layer-not-model-change: replaces the per-module host-vs-faithful
gate (rust_emit_faithful_text_carrier(source_indices)) with a single corpus-global
RustCorpusRepr (computed once in rust_corpus_repr, stored on EmitGraphInfo.corpus_repr),
threaded as the corpus_repr selector to every renderer/emitter/seam site. Deletes the
old per-module gate fns (§5 single-authority: divergence was writable). §6-transitional:
collapses to HostNative when src/v1 is deleted.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ass-3 logic

The auto-committed regen'd seed pulled in pre-existing .dag<->seed drift (the
extdeps.cargo_version import wiring + faithful-emitted orphan modules) that breaks
the v1-compiler build — that drift is the regen-lockstep capstone's domain, not
class-3. The class-3 representation-coherence work stays fully in the .dag source;
the seed regen lands via the regen-lockstep lane once a class-3 gunbc emits the
bundled extdeps modules host-mode. Seed .rs reverted to the committed fixpoint so
CI's rust gate is green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…gain)

Local class-3 verification re-ran the regen in the working tree, which the harness
auto-committed and re-broke the seed build. Seed reverted to the committed fixpoint;
class-3 logic remains entirely in the .dag source. Seed regen is the regen-lockstep
lane's deliverable.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…deleted → FaithfulFreeMonoid, not HostNative)

quick-seal by-execution review: 05_emit_rust.dag:221 stated the dissolution
collapse backwards. src/v1 deleted → no seed → has_seed=false → FaithfulFreeMonoid
(the pure-v2 faithful target), matching 04_infer.dag:6395 and the §6 ruling.
Comment-only; the code (04_infer.dag else-branch) was already correct.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
HAND-SYNCED MIRROR, not a regen fixpoint. Splice the three class-3 emitter
files (v1_compiler_emit_rust.rs, v1_compiler_infer.rs, v1_compiler_infer_emit_info.rs)
from a faithful regen of the class-3 .dag onto the committed seed; every other
module stays byte-identical to committed. Two local drifts hand-resolved:
- cargo header inlined in emit_rust so it does not import the deliberately-unwired
  extdeps_cargo_version orphan (byte-identical to committed emit);
- wire policy passed by value (Rc clone) at wire_value_serialize.rs to match the
  class-3 by-value policy_* signatures.

The std-tower orphans (std_measure / std_algebra / std_realization_schedule /
std_machine_constraints / std_integer / extdeps_version_semver / extdeps_cargo_version)
stay UNWIRED exactly as on main. A faithful full regen would wire them and surface
the deferred ~150-gap emitter-completeness lane (regen-fixpoint emitter-self-host);
that lane is NOT closed here and `regen_stage0 --verify` is expected to differ.
Carrier mark recorded in regen_stage0.rs + the 3 spliced file headers (self-contained;
breadcrumb node://adhoc-80af9ff8-40f).

Validated in scratch: cargo build -p v1-compiler --release --features
text_lookup_work_counter --bins = 0 errors / 0 warnings (all 5 bins); cargo fmt
--all --check clean.

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

Comment-only. Append quick-seal's verbatim invariance line to all four carrier
marks (regen_stage0.rs registry + the 3 spliced file headers): the class-3
host-vs-faithful selection is representation-invariant on the v1-bundled host seed
at this tip (CONTROL B gate-isolated revert builds green; CONTROL A errors are the
wire policy confound, not representation), so the selection's behavioral
discriminating-proof is OWED by the deferred faithful target where the selection
actually fires. Keeps the HAND-SYNCED-MIRROR / not-regen-fixpoint / deferred-~150-lane
mark intact. Still cargo-green (0 errors/0 warnings, all 5 bins; fmt --all --check clean).

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

The branch had accidentally reverted #6045 record serialization and related
witnesses during prior main merges. Restore the main-line authorities so the
emitter/seed-green-integration branch tracks current main for Route-A closure.

Co-authored-by: Cursor <cursoragent@cursor.com>
Reconcile emitter/seed-green-integration with main and land an ignored-by-default
test that assembles the faithful --emit-fresh crate and proves debug+release
cargo build succeed (0 rustc errors). Closes the Route-A last-mile receipt loop
alongside the existing regen --verify CI gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 1, 2026 04:04
@gunbai-bot gunbai-bot Bot changed the title Section 5 self-host execution manager: Lane A drive the emitted rust crate to cargo-green building (Route-A last mile) — CONTINUE the existing emitter/seed-green-integration branch which is mid-flight clearing compile errors, do NOT start fresh; Lane C TypeScript emit to first-class beyond the add s Route-A: reconcile seed-green branch + emit-fresh cargo-green witness Jul 1, 2026
gunbc_ci_floor_spawn_width_for_budget(0) returned the blind conservative
fallback (4) while witness_floor_spawn_width_zero_budget_falls_back expected
min(4, execution_corpus_spawn_width()) = 3. Apply the same int_min at the
authority site and update the envelope witness to match.

Co-authored-by: Cursor <cursoragent@cursor.com>
@briansrls
briansrls merged commit 5d50bbf into main Jul 1, 2026
3 checks passed
@briansrls
briansrls deleted the emitter/seed-green-integration branch July 1, 2026 05:42
briansrls added a commit that referenced this pull request Jul 1, 2026
…ority.

Merge origin/main picked up #6073 int_min in gunbc_ci_floor_spawn_width_for_budget(0);
witness_floor_spawn_width_zero_budget_falls_back must match (same as envelope witness).

Co-authored-by: Cursor <cursoragent@cursor.com>
gunbai-bot Bot pushed a commit that referenced this pull request Jul 1, 2026
Per operator directive: white-box/tautological witnesses do not belong in the
codebase. These four re-computed the implementation and asserted it equals
itself (testing nothing), and kept flip-flopping main red<->green as unrelated
PRs shifted the live execution-corpus width:

- witness_floor_spawn_width_zero_budget_falls_back — after #6073 moved the
  int_min(fallback, exec) clamp into gunbc_ci_floor_spawn_width_for_budget,
  this asserted fallback == int_min(fallback, exec) ≡ fallback <= exec, a
  fragile corpus-coupled property and the current MAIN-RED on this witness.
- witness_floor_unreadable_budget_uses_conservative_envelope — envelope built
  from the same for_budget path: int_min(...) == int_min(...) tautology.
- witness_plan_spawn_width_is_floor_width_at_runner_cap — plan_spawn_width is a
  thin wrapper over for_budget: for_budget(cap) == for_budget(cap) tautology.
- witness_execution_corpus_spawn_width_at_runner_cap — white-box magic pin
  (execution_corpus_spawn_width() == 3); breaks on any corpus-size change.

Genuine behavioral witnesses (tight-budget backoff inequality, memory-fit,
headroom) are kept. Verified by execution: ci_floor_run_envelope_witnesses,
ci_floor_spawn_width_live_budget_witnesses, ci_floor_honest_width_fold_witnesses
all PASS. (The #6078 unwired-model lens, the other main-red, was reverted
separately in #6085.)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
gunbai-bot Bot pushed a commit that referenced this pull request Jul 1, 2026
Per operator directive: white-box/tautological witnesses do not belong in the
codebase. These four re-computed the implementation and asserted it equals
itself (testing nothing), and kept flip-flopping main red<->green as unrelated
PRs shifted the live execution-corpus width:

- witness_floor_spawn_width_zero_budget_falls_back — after #6073 moved the
  int_min(fallback, exec) clamp into gunbc_ci_floor_spawn_width_for_budget,
  this asserted fallback == int_min(fallback, exec) ≡ fallback <= exec, a
  fragile corpus-coupled property and the current MAIN-RED on this witness.
- witness_floor_unreadable_budget_uses_conservative_envelope — envelope built
  from the same for_budget path: int_min(...) == int_min(...) tautology.
- witness_plan_spawn_width_is_floor_width_at_runner_cap — plan_spawn_width is a
  thin wrapper over for_budget: for_budget(cap) == for_budget(cap) tautology.
- witness_execution_corpus_spawn_width_at_runner_cap — white-box magic pin
  (execution_corpus_spawn_width() == 3); breaks on any corpus-size change.

Genuine behavioral witnesses (tight-budget backoff inequality, memory-fit,
headroom) are kept. Verified by execution: ci_floor_run_envelope_witnesses,
ci_floor_spawn_width_live_budget_witnesses, ci_floor_honest_width_fold_witnesses
all PASS. (The #6078 unwired-model lens, the other main-red, was reverted
separately in #6085.)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
briansrls added a commit that referenced this pull request Jul 1, 2026
…ses, and Phase 2 credential design (#6066)

* Model operator Tailscale ACL as cited extdeps authority with emit and faithfulness witnesses.

Phase 1 lands extdeps/tailscale/acl.dag (security spine invariants, cutover-transient 100.65.94.55), JSON emit, hujson+json golden fixtures, and fail-closed witnesses; host_standup P0 now cites ACL authority while credential upsert remains Phase 2.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Design Phase 2 Tailscale ACL credential as operator user-principal Secret Accessor.

Models tailscale-acl-api-key in gunbai-secrets with roles/secretmanager.secretAccessor granted only to user:briansrls@gmail.com via local ADC (explicitly not repo-scoped WIF); acl_api upsert shape and diff-gate are DESIGN_ONLY pending operator sign-off before any wet write.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Refine Phase 2 ACL credential as operator-dispensed 1hr ephemeral token.

Secret Manager JIT reference (tailscale-acl-ephemeral-token) or runtime injection; fail-closed on absent/expired; upsert wet shape is diff-print-only pending operator sign-off.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Mark tailscale_acl_emit as scaffolded medium-as-string with roster dissolution trigger.

Addresses review: on-carrier Scaffold bind to to_json plus medium_structure_exception_roster entry and witness for explicit dissolve-on path before wet upsert lands.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Replace tautological Phase 2 credential witnesses with structural binding checks.

operator_bindings_admit_repo_scoped_wif/admit_bmc_assimilator_sa scan binding members (perturbation witness reddens on WIF/SA poison); drop literal false/AdcRefresh-match launders.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Remove unused GCP credential flow imports from Phase 2 design module.

Co-authored-by: Cursor <cursoragent@cursor.com>

* WIP: Continuous deployment pipeline: on push-to-main (gated on floor green),

* Integrate Phase 2 ACL credential through gunbc/auth patterns authority.

Composes tailscale_acl_operator_ephemeral_credential from gcp_oauth_access_token(AdcRefresh) + optional_impersonation(3600s) + gcp_secret_credential; keeps ACL upsert-gate delta and IAM contrast witnesses; DESIGN_ONLY scaffold held.

Co-authored-by: Cursor <cursoragent@cursor.com>

* WIP: Continuous deployment pipeline: on push-to-main (gated on floor green),

* Align host_standup P0 gap ledger with partial ACL modeling.

P0 interim_realization and gap_ledger now agree on dag authorities plus
remaining ctrl interim; spine witness accepts partial gaps citing
extdeps/gunbc modules instead of requiring lib/ ctrl paths only.

Co-authored-by: Cursor <cursoragent@cursor.com>

* WIP: Continuous deployment pipeline: on push-to-main (gated on floor green),

* Remove dead GcpBinding helper and fix shell.Env resolve.

Drop unused operator_secret_accessor_binding (witnesses use
SecretAccessBinding rows). Alias extdeps.shell in auth/patterns to
avoid shell transport shadowing shell.Env during discovery resolve.

Co-authored-by: Cursor <cursoragent@cursor.com>

* WIP: Continuous deployment pipeline: on push-to-main (gated on floor green),

* WIP: Continuous deployment pipeline: on push-to-main (gated on floor green),

* Fix discovery resolve for github_oidc env reads.

Add gunbc.auth.oidc_env.read_env_value (no uses net) so github_oidc
does not call shell.Env inside a func with uses net, and avoid importing
from extdeps.shell.credentials where module-path shell shadows the
extdeps.shell service namespace on full-module resolve.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Split optional_impersonation to fix phase2 discovery resolve.

Extract gunbc.auth.optional_impersonation so Phase 2 credential design
witnesses do not transitively resolve gunbc.auth.patterns (github_oidc
shell.Env shadow under uses net). Update DeclarationRef module paths.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Remove unused TAILNET_PLACEHOLDER from Phase 2 design module.

Dead data with no consumers — tailnet binding lands with acl_api wet
upsert scaffold, not a silent NonEmptyStr placeholder.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(tailscale-acl): exhaustive AclUpsertGate match for non_fold residue

* fix(ci-floor): zero-budget spawn width uses conservative fallback only.

#6079 updated witness_floor_spawn_width_zero_budget_falls_back but left
gunbc_ci_floor_spawn_width_for_budget on int_min(fallback, exec_corpus).
With execution_corpus_spawn_width=3 and fallback=4, plan_spawn_width(0)
returned 3 while the witness expected 4. Align implementation and the
unreadable-budget envelope witness with the stable fallback invariant.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Revert "fix(ci-floor): zero-budget spawn width uses conservative fallback only."

This reverts commit 19f1da9.

* fix(ci-floor): delete white-box/tautological spawn-width witnesses

Per operator directive: white-box/tautological witnesses do not belong in the
codebase. These four re-computed the implementation and asserted it equals
itself (testing nothing), and kept flip-flopping main red<->green as unrelated
PRs shifted the live execution-corpus width:

- witness_floor_spawn_width_zero_budget_falls_back — after #6073 moved the
  int_min(fallback, exec) clamp into gunbc_ci_floor_spawn_width_for_budget,
  this asserted fallback == int_min(fallback, exec) ≡ fallback <= exec, a
  fragile corpus-coupled property and the current MAIN-RED on this witness.
- witness_floor_unreadable_budget_uses_conservative_envelope — envelope built
  from the same for_budget path: int_min(...) == int_min(...) tautology.
- witness_plan_spawn_width_is_floor_width_at_runner_cap — plan_spawn_width is a
  thin wrapper over for_budget: for_budget(cap) == for_budget(cap) tautology.
- witness_execution_corpus_spawn_width_at_runner_cap — white-box magic pin
  (execution_corpus_spawn_width() == 3); breaks on any corpus-size change.

Genuine behavioral witnesses (tight-budget backoff inequality, memory-fit,
headroom) are kept. Verified by execution: ci_floor_run_envelope_witnesses,
ci_floor_spawn_width_live_budget_witnesses, ci_floor_honest_width_fold_witnesses
all PASS. (The #6078 unwired-model lens, the other main-red, was reverted
separately in #6085.)

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

---------

Co-authored-by: Brian Searls <briansearls1@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
briansrls pushed a commit that referenced this pull request Jul 1, 2026
…6087)

Per operator directive: white-box/tautological witnesses do not belong in the
codebase. These four re-computed the implementation and asserted it equals
itself (testing nothing), and kept flip-flopping main red<->green as unrelated
PRs shifted the live execution-corpus width:

- witness_floor_spawn_width_zero_budget_falls_back — after #6073 moved the
  int_min(fallback, exec) clamp into gunbc_ci_floor_spawn_width_for_budget,
  this asserted fallback == int_min(fallback, exec) ≡ fallback <= exec, a
  fragile corpus-coupled property and the current MAIN-RED on this witness.
- witness_floor_unreadable_budget_uses_conservative_envelope — envelope built
  from the same for_budget path: int_min(...) == int_min(...) tautology.
- witness_plan_spawn_width_is_floor_width_at_runner_cap — plan_spawn_width is a
  thin wrapper over for_budget: for_budget(cap) == for_budget(cap) tautology.
- witness_execution_corpus_spawn_width_at_runner_cap — white-box magic pin
  (execution_corpus_spawn_width() == 3); breaks on any corpus-size change.

Genuine behavioral witnesses (tight-budget backoff inequality, memory-fit,
headroom) are kept. Verified by execution: ci_floor_run_envelope_witnesses,
ci_floor_spawn_width_live_budget_witnesses, ci_floor_honest_width_fold_witnesses
all PASS. (The #6078 unwired-model lens, the other main-red, was reverted
separately in #6085.)

Co-authored-by: Brian Searls <briansearls1@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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