3.3 KiB
Public mixed read implementation
Base7b06b8ea, selected root contract bcddaba3. Public
language::check_mixed_bundle returns opaque non-Clone CheckedMixed borrowing the
complete original SourceBundle, with only immutable project/warnings accessors.
Its private resolved field retains syntax, expression/occurrence vectors, ledger
and admission evidence; there is no index, output, save or extraction authority.
The shared parser mixed hooks now compile in production. Ordinary callers still select None. The fresh constructor binds the actual bundle and exact ProjectLimits, derives existing internal policy once, selects Some(Borrowed) with zero carry and both producers, then consumes syntax through complete resolution/admission. The borrowed guard retains the actual source reference even when test-only Pending/Retained variants are absent. No duplicate live policy/model is added. Public schema/UUID requirement wording replaces private-staging wording only; all limiter phase/category/span transport remains inherited.
Private legacy index/update/write, ordinary-index/rename/emission/acceptance and fixture/pending constructors remain test-only. Shared parse/lower code remains private. Necessary retained fields have individual documented non-test dead-code allowances; no module-wide suppression, fake read, or new public lint-only API. Exact production compiler lint findings remain a parent gate, not inferred clean from source inspection. Existing298 tests are not edited.
One internal public_read test invokes the actual production parse helper and observes borrowedC0, both producer inventories, every inherited/derived policy field (including262144 entries independent of model records1), full empty-Project and warning parity, Usage/numeric parity and unchanged input. Three rustdoc blocks provide a compiling real usage example plus source-drop and source-mutation compile-fail cases with later result use. Independent worker owns the non-test mixed_source8_read integration target and its separate complete-model oracles.
Established docs/language.rst gains a bounded staged-read note without changing its broader conformance/version obligations. Existing docutils HTML5 generation with halt/report level2 regenerated language.html successfully. An initial local RST generation refused the new section formatting; the section separator and blank line were corrected before successful regeneration. No Rust compiler, Cargo test, CLI, debugger or publication was run by this worker.
Parent owns pinned compilation, all old/new runtime tests, doctests, strict Clippy, formatting disposition and production Parser stack regression checks. DEPTH_128_VALIDATED=false, existing depth policies, logical-accounting exclusions, full-pipeline limitation and deferred Linux qualification remain unchanged.
First non-test compile correction
Parent's integration-list build at ddf823a stopped with E0063: the semantic review
row-key reader's Parser initializer still gated mixed:None under cfg(test).
That initializer now supplies None in production too, preserving its ordinary
facet-reading behavior. Source inventory found the other shared Parser initializers
in language.rs and mixed.rs already coherent; language::legacy uses its own
separate Parser type. No API, test or runtime policy changed. The failed build
record remains preserved; no compiler was run for this repair by the worker.