# Nested source defaults: admission evidence, 2026-09-13 **Branch-specific existing-compatibility result, not a compact writer fix.** Ten Windows tests pass against unchanged production code. They exercise both OA and SA source 7 through `compile_bundle`, with fixed authored identities, handwritten omitted/explicit syntax, complete literal `Project` expectations and exact unchanged `SourceBundle` checks. Independent review counted **44 accepted authored evaluations and 14 refusals** (12 missing-field and two unknown-field checks). It found no blocking test or clarification findings. The proposed clarification now records that passing evidence while retaining its pending-integration status. | Selected constructor/record | Confirmed omission | Confirmed retained requirement/distinction | | --- | --- | --- | | Integer / Real | Either bound individually or both together means `none` | The supplied other bound stays exact; Integer maximum 0 differs from no maximum | | String | Maximum length absent means `none` | Minimum length is required even when 0; a nonzero minimum remains 4 | | Record | Supertype absent means `none`; `{}` is admitted | Unknown `fields` rejects | | Enumeration | No omission permission established | `literals` is required, including for an admitted empty list | | Legacy port record | Interface absent means `none` | Direction remains required and explicit Out is retained | | Port declaration | No contract omission | A supplied legacy record does not replace the required explicit contract | The checked-in language reference's section 4.5 labels all DataTypeDefinition payloads under “Required fields,” although the parser admits the omitted fields above. The section 4 Legacy example also fails to state that its interface may be omitted. The tests establish existing source-7 behavior without expanding admission or inferring universal omission from nullable types. A proposed precise replacement table and Legacy paragraph are retained in the evidence archive; they are **not yet applied to the normative reference**. Integrate that narrow clarification with the coordinated formatter/specification work. No broader source8 or old-version compatibility claim follows from these cases. The [preservation baseline](text-default-omission-baseline-20260913.md) remains unchanged: its three desired-source regressions still fail. Passing admission tests means the proposed omissions parse correctly, not that generated text is already compact or that edits preserve all authored defaults. ## Execution and reproduction ```text cargo test --locked --offline -p oa-core --test default_omission_admission --message-format=json -- --nocapture ``` Gate `admission-1`, 2026-09-13 10:00:54–10:00:58 UTC: **10 passed, 0 failed, 0 ignored**, exit 0. Windows `stable-x86_64-pc-windows-gnullvm`, Rust/Cargo 1.98.1, LLVM-MinGW, one build job, incremental compilation disabled, locked offline dependencies. HEAD at execution was `595cad479045898a5ba521b0cb0e80132726873a` plus the newly authored admission test. All **606 captured inputs** remained unchanged. Production sources and the prior preservation test are unchanged. The [portable archive](experiments/default-admission-20260913/README.md) retains exact source inputs, raw logs, receipts, original runner, independent review and the proposed clarification. Its read-only `verify.py` checks file/ZIP membership, hashes, receipt consistency and recorded outcomes. Parent also checked staged Git blobs against the captured source and archive. The executable hash is a historical runner receipt; the test binary is not distributed. This is a focused core result. It does not establish GUI usability, canonical format/parse round trips, performance, all constructors, all required-field refusals, a full-suite pass, Linux support or release completion. Whole-definition absence and Legacy without its legacy record were inspected in the implementation rather than exercised by these tests. The latter is a model-validation requirement. Duplicate-field rejection, Boolean payloads, nonempty supertype/interface references and numeric boundary cases are also outside this new test set.