refactor: extract semantic model boundary - #316
Merged
luca-ctx merged 1 commit intoAug 6, 2026
Conversation
Reapply the independently approved S1+C1 merge unit onto public main f116170 while preserving PR #313 JSONL terminal/progress convergence and PR #314 fixture hardening. Source commits: - c85ede52d096c5b4ae8160d50fc2abe3ebbd1d4a (patch 8843f4ec8120e10372b7c12a05998982010fe85e) - bb1529a99b6cd3474038be3f4b9ced6472b7d5b5 (patch ba01dab4fa124c17f9c859f44c4e9c7ea24e6c70) - eadc8ce0a789a727a29d81deffab887cc6224635 (patch 93af91beaf82b4de4b214dffa32bb6068f4402ef) Approved aggregate S1+C1 patch: 33ca291fda7fac11a22dc7e071df528bac0f0db4 Current-main adaptation: route the new PR #313 transport-recovery test through the extracted SharedSemanticRuntime re-export. Integrate the current-main raw-output, SBOM, release-license, exact persisted-policy, release/controller, chronology, and fixture authorities without C2 or G0.
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.
Summary
ctx-semantic-model.ctxcomposition.ctx -> ctx-history-index -> ctx-semantic-model -> ctx-history-core, with no reverse edge.Base:
f116170aba830f6ea66b6478c5b04684eef21e20(PRs #313 and #314 included).Approved source commits:
c85ede52d096c5b4ae8160d50fc2abe3ebbd1d4a(patch8843f4ec8120e10372b7c12a05998982010fe85e)bb1529a99b6cd3474038be3f4b9ced6472b7d5b5(patchba01dab4fa124c17f9c859f44c4e9c7ea24e6c70)eadc8ce0a789a727a29d81deffab887cc6224635(patch93af91beaf82b4de4b214dffa32bb6068f4402ef)33ca291fda7fac11a22dc7e071df528bac0f0db4Current-main adaptation: PR #313 added a transport-recovery test that named the former private
semantic::model_runtimemodule. It now consumesSharedSemanticRuntimethrough the extracted semantic re-export. PR #313's JSONL terminal/progress behavior and PR #314's fixture-path hardening are otherwise retained unchanged.Size and dependency evidence
Pinned
scc 3.7.0production Rust CLOC, using the Bazel production source set (including eachbuild.rsand the explicit productioninclude!source):ctxorigin/mainctxctxctx-semantic-modelctx-semantic-modelis below the 20k production-CLOC ceiling. The claim is a material shrink of the centralctxcrate, not a repository-wide line reduction; composition seams add 467 combined CLOC.Cargo.lockadds exactly the workspace packagectx-semantic-model 0.26.0. All 487 third-party name/version/source/checksum tuples are unchanged. Cargo and Bazel boundary checks both enforce the acyclic graph.Raw-output authority
One scanner/allowlist authority covers all
ctxproduction output plus both build scripts. The build-script inventory is exact and fail-closed:crates/ctx-cli/build.rs: 6 Cargo directives (main#1@3d618d0d6e1305c1throughmain#6@17e10d71b62c3756)crates/ctx-semantic-model/build.rs: 2 Cargo directives (main#1@0947514f54f72ef8,main#2@90a37aff9068bc84)The gate asserts the
6 + 2split and its self-tests reject additions, removals, stale entries, and reorderings. The old moved CLI waiver is absent.Validation
Focused semantic/policy batch — 5/5 passed:
scripts/bazelw test \ //crates/ctx-cli:raw_output_policy_tests \ //crates/ctx-semantic-model:unit_tests \ //crates/ctx-history-index:unit_tests \ //:semantic_model_build_cfg_parity_check \ //:semantic_model_dependency_boundary_check \ --config=ci --test_output=errorsCLI/current-main convergence batch — 4/4 passed:
scripts/bazelw test \ //crates/ctx-cli:unit_tests \ //crates/ctx-cli:daemon_config_reload_tests \ //crates/ctx-cli:search_show_tests \ //:loc_check \ --config=ci --test_output=errorsRelease/route/inventory batch — 14/14 passed, including all six platform release-route analyses:
scripts/bazelw test \ //:release_sbom_tests \ //tools/bazel:release_route_analysis_tests \ //:public_cli_bazel_release_contract \ //:linux_bazel_release_controller_tests \ //:native_bazel_packaging_contract_tests \ //:buildkite_pipeline_check \ //:rust_target_inventory_check \ //:test_tier_inventory_check \ --config=ci --test_output=errorsFinal no-cache raw-output/format check — 2/2 passed:
scripts/bazelw test \ //:rustfmt_check \ //crates/ctx-cli:raw_output_policy_tests \ --config=ci --nocache_test_results --test_output=errorsFull public merge gate — 121/121 passed:
scripts/bazelw test //:ci --config=ci --test_output=errorsResidual limitation
Validation ran on the Linux host. The macOS, Windows, and FreeBSD release routes passed configured analysis and packaging contracts, but their native binaries were not executed on those operating systems in this review-preparation run.