Repository navigation
Conversation
…ert-carriers) Compile-stage memo (operator ruling 2026-10-08): its only lookup, resolve_cache_miss, answered Miss unconditionally, so the governed door never served. Deleted: resolve_cache_miss and the cached wrapping in v2.compiler.compile compile_ingest_staging (the tokenize -> parse -> normalize -> resolve -> translate then_outcome sequence is unchanged); v2.compiler.materialization_carriers compile-stage demand, provider, verdicts, admission door (admitted_prescription_in and its controls), CachedStageRealization, cached_stage_realization, cached_stage_governed, realized_step_for and v2_compiler_cache_providers; v2.std.staging CacheProbe/resolve_probe/cached_stage; extdeps.realization.compile_stage_memo with its cache catalog, provider-target, scope-frontier, doc-root and commit-gate rows. The cache planner claims now use the parse_cache row as their in-process layer. materialization_allows_memo_store stays (its self-host emitted contract consumes it). v2.compiler.eval: TestClaimCacheKey, TestClaimCacheReceipt and their helpers are deleted; TestClaimRun carries the claim directly, so test_claim_run_claim reads run.claim. inferred_tree_digest, the interpretation digest chain and every claim result field are unchanged. v2.workflow.floor_preparation and its only witness are deleted; the two in_process_materialization admit_callers rows that named that witness go with it (the FNV preimage-verified exception is unchanged). v2.workflow.floor2_prepared_subject: FloorSelectionPosture, FloorExecutionKey, floor_execution_key, floor_execution_key_is_one_prepared_subject and PreparedSubjectSpec are deleted; WitnessIdentity and witness_identity_qualified_name stay. v2.workflow.native_cache_fusion and its own claims are deleted; the emit-host native build cache is untouched. Grandfathered-roster removals carry WitnessDeleted dispositions; the compiler_materialization_witness debt row retires as FileDeleted. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
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.
Roadmap node
native-memory-inert-carriers. This PR stacks on #13582 (parse-memo-delete). CI will not run on it until it is retargeted tomain, after #13577 and #13582 land.What was deleted (by symbol)
1. The compile-stage memo (operator ruling 2026-10-08). Its only lookup,
resolve_cache_miss, answeredMissevery time, so the governed door never served a hit.v2.compiler.compile:resolve_cache_miss, plus thecached_stage_realizationmatch and thecached_stage_governedwrapping insidecompile_ingest_staging.compile_ingest_stagingis now the plainthen_outcomesequence tokenize → parse → normalize → resolve → translate. Stage results and stage refusals still flow through it unchanged.v2.compiler.materialization_carriers: deletedcompile_stage_memo_demand_identity, the compile-stage demand, provider and id,v2_compiler_cache_providers,v2_compiler_materialization_demands/verdicts/ladder_holds, the process, run and workflow frames,admitted_prescription(_in)with its diagnostic and admission readers,CachedStageRealization,cached_stage_realization,cached_stage_governed,realized_step_for,compile_stage_realized_step, and everycompile_stage_memo_*control. The prose-as-Stringnote row also goes. The module keeps onlymaterialization_allows_memo_storeand its disposition, because the self-host emitted contract consumes them.v2.std.staging: deletedCacheProbe,resolve_probeandcached_stage.then_outcomestays.extdeps.realization.compile_stage_memo: the file is deleted. Its references are gone fromextdeps.cache(cache_catalog,cache_layer_default_order, the projected row),gunbc.materialization_provider_targets,gunbc.doc_graph_roots,legacy_extdeps_scope_frontier.tsv,gunbc.commit_workflow(thecompiler_materialization_witness_testenrollment) andwitness_row_cost_basis.tsv.src/v2/test/claim/compiler_materialization_witness_test.dagand the twocached_stage_*claims instaging_test.dagare deleted.2. Claim-cache machinery (
v2.compiler.eval). DeletedTestClaimCacheKey,TestClaimCacheReceipt,test_claim_cache_key_*,test_claim_cache_receipt(_node)andtest_claim_cache_receipt_claim.TestClaimRun.cacheis replaced byTestClaimRun.claim: TestClaim, andtest_claim_run_claimreads it directly. The constructors updated to match are inemit_host,language_behavior_equivalence_test(the rejected-emit arm now carries its sentinel claim) andmanual/infer_ground_add. Seven manual translate tests had only an unused import, which is removed.3.
v2.workflow.floor_preparation: the whole module is deleted, includingprepared_floor_subject_serve,PreparedFloorSubjectRequestandprepared_claim_subject_identity. So is its only consumer,dag/test/claim/floor/floor_preparation_witness_test.dag. Instd.materialization_provider,in_process_materializationloses the twoadmit_callersrows that named that witness, and its frontier sentence drops the phrase "floor-preparation witnesses". The FNV preimage-verified exception andminted_in_processare unchanged.4.
v2.workflow.floor2_prepared_subject: deletedFloorSelectionPosture,FloorExecutionKey(withOnePreparedSubjectKey),floor_execution_key,floor_execution_key_is_one_prepared_subjectandPreparedSubjectSpec, whose only consumer was the key.5.
v2.workflow.native_cache_fusionandsrc/v2/test/claim/native_cache_fusion_test.dagare deleted. The real emit-host native build cache is untouched.Bookkeeping
floor_grandfathered_roster: addedWitnessDeletedrows for the 8 cut members this PR deletes (3compiler_materialization_witness, 2staging.cached_stage_*, 3native_cache_fusion_test).floor_unimported_bare_provider_debt_roster: thecompiler_materialization_witness_test.dagrow moves fromRetired ImportsFixedtoRetired FileDeleted. The floor demanded this (RetiredImportsFixedButFileAbsent).cache_layer_planner_testnow usesparse_cache_idandparse_cache_projectedas its in-process layer.materialization_provider_witness_test:consumer_target_frontier_names_five_caches…becomes…names_four_caches…with== 4, the same pattern Delete the v2 packrat parse memo carrier (R2, stacked on #13577) #13582 used.What was kept, and why (red_control)
compile_ingest_staginghas the same five stages, andthen_outcomecomposes them as before.compile_eval_thesis_proof_testpasses.EvalContext.cache_authority.interpretation,eval_context_interpretation,effect_io, and every claim result and verdict field.inferred_tree_digestand its whole diagnostic/extent/ByteOffsetCacheKeydigest chain, plustest_claim_cache_interpretation_hash_nodeand the other digest functions. Nothing was renamed to "computation_identity".WitnessIdentityandwitness_identity_qualified_name, which the terminal and wet-evidence ledgers use.std.materialization_providermachinery, including its FNV preimage-verified exception.Where #13582's generic ladder controls went
#13582 moved four controls onto the compile-stage demand. With that demand deleted:
test.claim.materialization_ladder_witness. These are RefusedScopeTooNarrow for an isolated plural site, RefusedNoProvider without a provider, discharge for a demand that recurs inside the provider's scope, and single recompute. The cells areprovider_scope_too_narrow_is_refused,obligation_without_provider_is_typed_refusal,unbounded_siblings_frame_obligates_up_front/declared_replay_frame_obligates_up_front, andsingle_pure_demand_is_accepted_recompute. All 32 claims in that module pass on this head. I did not add copies of them.an_unruled_identity_is_not_admitted,a_refused_identity_is_not_admitted) testedadmitted_prescription_in, the green-or-nothing admission door inmaterialization_carriers. That door's only production caller was the compile-stage demand. Keeping it alive on a test-local fixture would keep a mechanism nothing in production calls, only so its controls had a subject (DESIGN §3c). So the door and its controls are deleted together. This is the one judgment call in this PR, and it is easy to reverse: if reviewers want the door kept as a generic rule, it can move next tostd.materialization_ladder, with these two controls on a fixture demand.Consumer census (grep across src/, dag/ and the src/v1 Rust before each deletion)
compile_stage_memo*,cached_stage*,CacheProbe,resolve_probe: the consumers are the ones listed above. Some code comments still name them as historical specimens (trait_bound_witness_testself-contained fixture strings,anonymous_record_head_use_line_witness_test,src/v1/05_emit_rust.dag,docs/plans/*). The committed snapshot fixturefrontier_probe_elision_boundary_overlayalso mentions them. These were left as they are. No seed Rust or stage0 mirror references any deleted symbol, so neither stage0 nor the generated artifacts were regenerated.TestClaimCache*:emit_host,language_behavior_equivalence_test,manual/infer_ground_add, and 7 manual translate tests (import only).floor_preparation: only its own witness, plus the twoadmit_callersrows.native_cache_fusion: only its own test.srv1_residue_rehearsalanddocs/rung-drops/required_lanes_do_not_resolve_product_layer_modules_2026-09-20.txt.Evidence (local, head 0b92d40)
cargo build --release(gunbc, claim_batch, claim_executor): succeeded. No Rust changed, so clippy and fmt were not run.claim_batchover 16 entries (231 claims): 227 passed, 4 failed. All 4 also fail on the base branch (parse-memo-delete427b080) with this binary:floor_eval_step_budget_witness_test.every_declared_removal_names_a_cut_row_and_has_left_the_roster: removal rowv2.test.claim.compiler.kernel_value_type_roster_witness_test.kvr_a_named_calls_bool_formal_is_counted_not_judged_holdsis not in the cut. That row is also onmain. My 8 new removal rows are all members of the cut.external_model_scope_witness_test.roster_paths_resolve_on_diskandcarriers_declare_scope_on_disk.doc_graph_reference_partition_witness_test.doc_graph_production_population_loses_nothing.claim_batchover branch_eval_by_execution, effect_io_eval_by_execution, compile_eval_thesis_proof, manual/rust_add_emit_translate and emit_host_add_equals_eval: 17 of 17 passed.claim_executor --required-ci --required-lane witnesses: exit 1. The only failed phase is the local-repo wet lane, with 16 refusals, all on the known baseline:mtcollins1_kvm_observer_protocol_wet_witness(7),allocation_client_execution_wet_witness(8), andv41_source_patch_converge_witnessred5 (1, intermittent, cause unresolved). There were no other refusals. 15 changed witnesses were planned and passed (blocking=0), includingcache_layer_planner×3 andconsumer_target_frontier_names_four_caches_with_typed_binds.Not executed or unresolved
language_behavior_equivalence_testholds its claims astest datarows, whichclaim_batch --functionswould not address, so I did not run it on its own. It compiles in the lane's prepared subject.manual/infer_ground_addhas notest fn. Its constructors changed but did not execute on their own.materialization_carriersnow holds only a predicate whose sole consumer is its self-host emitted contract. Deleting the whole module would also mean editing the self-host rosters and receipts, which is outside this bounded PR.floor2_prepared_subjectSubjectExclusionGround,WitnessSiteandFloorBindingStrictnessRegression.dag/test/claim/floor/floor_preparation_witness_test.dag, which this PR deletes. Whichever lands second gets a modify/delete conflict, and resolving it means deleting the file.🤖 Generated with Claude Code