Codex-956atf: preserve actual stack failure, correct filter count and freeze iterative typechecking
+33
-12
@@ -1,22 +1,43 @@
|
||||
# Schema8 analysis core — source freeze, 2026-09-11
|
||||
# Schema8 analysis core — iterative typechecker awaiting rerun
|
||||
|
||||
Codex-956atf `/root/analysis_core_resume`. Root resumed this bounded worker after user return. The dedicated worktree `.local/analysis-core-worktree-20260911` remains on `codex/analysis-core-20260911`, HEAD `b96ff3935ab3f36b7144566e46559a05a29292a5`; the resumed delta is uncommitted and uncompiled. Root owns toolchains, Cargo/native execution, integration and publication.
|
||||
Codex-956atf `/root/analysis_core_resume`, 2026-09-11. The dedicated worktree `.local/analysis-core-worktree-20260911` remains on `codex/analysis-core-20260911`, HEAD `b96ff3935ab3f36b7144566e46559a05a29292a5`, with uncommitted corrections. Root owns Cargo/native execution, integration and publication. The source correction below is frozen and uncompiled; the previous candidate failed its first real gate.
|
||||
|
||||
The saved core supplies actual Project definitions and analysis property/case/check records, bounded static admission, exact nominal numeric type helpers, typed reference/reidentification/deletion behavior, frozen pre8 migration and explicit unsupported history/transition guards. It has no evaluator or source8 parity. [Saved reboot WIP](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/b96ff3935ab3f36b7144566e46559a05a29292a5) is historical source, not a release.
|
||||
## Actual failed gate and corrected count
|
||||
|
||||
The resumed correction precharges queued Expr children, scanned analysis text and scoped parameter names, initial closure entries and Call argument-key scans/lookups. Relation subject lookup charges every hop, including malformed/cyclic relation chains before architectural validation. Known indexed element layers use direct map lookup. BindingContext removes the eight-argument typecheck helper. Scoped parameter identity, baseline and every effective-case graph, unused branches, fixed KindHandle, nominal kinds and exact arithmetic are preserved. The provisional1,000,000 aggregate static-event ceiling remains lowerable; its revised usage includes these costs and still needs measurement.
|
||||
[Root's issue1 comment305](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-305) records warning-free Windows compilation in3m34s,28 discovered tests and16 named passes before `analysis::tests::logical_depth_and_call_depth_have_exact_boundaries` aborted with `STATUS_STACK_OVERFLOW` / `0xc00000fd`. Preserve root `.local/logs/analysis-core-first-20260911.log`, SHA256 `84C6B63039472363412B66C7A24DE825A846518725EC9F7436C252603AEF54FC`, and root-reported binary `target/debug/deps/oa_core-a7a95d666500007c.exe`, SHA256 `548850D3606C9B4A58859677E86A1C1813EB6E71785C529F771E04125E7A33AF`. There was no full analysis pass.
|
||||
|
||||
Prepared focused gate: `cargo test --locked -p oa-core --lib analysis:: -- --test-threads=1`, from the dedicated worktree with root's existing cache. **25 expected tests: saved22 plus three new meter regressions; 21 actual-Project and four meter tests total.** Then rerun `analysis_numeric::tests` and strict core Clippy because earlier numeric26 evidence at7d14bd0 does not cover this source. Three changed Rust files pass standalone rustfmt2024 check and git diff whitespace check. No Cargo/rustc/tests/Clippy/native/memory/stack result is claimed by this worker.
|
||||
The substring filter `analysis::` selects25 schema8 tests plus three existing `topology_context::analysis::tests`. The earlier prepared25 count described only the new module; actual28 is correct. The saved22 would likewise have selected25 including topology. The correction retains all28 functions and introduces no ignored tests.
|
||||
|
||||
Frozen resumed files:
|
||||
## Current correction and source inventory
|
||||
|
||||
| Path | SHA256 |
|
||||
The large recursive Checker::expression was the concrete source-level suspect; the exact abort instruction/frame size was not measured. An explicit continuation machine now retains at most128 heap frames and one returned type. It borrows Expr and calculation definitions; its frame owners contain only fixed-size resolved types/handles. Lists and calls schedule one ordered child at a time. No Rust call stack grows with expression depth. The rejected129th frame is never allocated, while entry charging retains error precedence.
|
||||
|
||||
Left-to-right operands, condition/both branches, Sum initial-before-values, AsKind reference-before-operand, parameter declaration order, contextual empty lists, nominal/exact algebra and current work precharges are preserved. The original failing test now covers unary128/129, mixed Binary/If/Call/Power/Unary128/129, contextual empty-list If/Call128, and definition-call32/33, with phase messages. Existing parameter tests make call declaration order versus UUID order and binary first-error order observable.
|
||||
|
||||
| Path | Current SHA256 |
|
||||
| --- | --- |
|
||||
| `crates/oa-core/src/analysis/typecheck.rs` | `831F14346BBAE83FBDEEB744F9F29460FAB13A8315645FAA6CE94D0B60B1516F` |
|
||||
| `crates/oa-core/src/analysis/tests.rs` | `9FB30B28E305CB00E7C39204912F8311E96AA92D0334CE4A73FB08FADDFE83C5` |
|
||||
| `crates/oa-core/src/analysis/admission.rs` | `5F85EAA868AC43C4819C98556281D8226F9C0E2A4B11E5C97CF24D855D2127AE` |
|
||||
| `crates/oa-core/src/analysis/typecheck.rs` | `1AC3A92E97B886F4BFAC31BA22C182347131D0A82BEDBF6B2F2073D02AD5A6E4` |
|
||||
| `crates/oa-core/src/analysis/tests.rs` | `9EC9C12C618600039BC2DC0A9B9BF6DC5378FD4D8749E21EDEC699EEE06AB0E2` |
|
||||
| `harness/release-analysis-core-schema8-wip-20260911.md` | `67F7D8794CA07B2D3E59FDAB68BEAE75F32EFE83062D15F9BF27DA8087F97693` |
|
||||
| `harness/release-analysis-core-schema8-wip-20260911.md` | `6990BA9C8E8D143A6A018EC3DD5191B8B8133C76C710F96154F7F74A902C9AB5` |
|
||||
|
||||
The report preserves the original20-file source inventory and reboot hashes below its resumed freeze. Only these four paths changed afterb96ff393; no root checkout, manifests, numeric semantics, ledgers or other worker source changed. [Issue1 resume lease291](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-291) identifies current ownership.
|
||||
Only typecheck/tests/report changed after the first compiled candidate. Admission still precharges wide child queues, text spans and scoped names, closure entries and relation-subject hops, with direct known-element layer lookups and an aggregate lowerable1,000,000-event ceiling. From b96ff393, only these four paths are modified. Standalone rustfmt2024 check and git diff whitespace check pass. No worker Cargo/rustc/native/install/commit, stack-size override or release-only optimization workaround.
|
||||
|
||||
Default serde_json recursion rejection remains enabled. The decoder review in `harness/release-analysis-decoder-review-20260911.md` is authoritative for pending allocation/codec/lifecycle/output gates: some logical-depth128 trees cannot reopen, wide header allocation precedes analysis admission, pretty output can exceed the input budget and recursive clone/debug/drop remain separate risks. Existing architectural validation has its own scaling costs. Source8/evaluator, real package environment, capture, API/CLI/UI, historical and transition parity remain open. No runnable schema8 release or complete product transport is claimed.
|
||||
## Root's next gates
|
||||
|
||||
From the dedicated worktree with root's established toolchain/cache:
|
||||
|
||||
1. `cargo test --locked -p oa-core --lib analysis::tests::logical_depth_and_call_depth_have_exact_boundaries -- --exact --test-threads=1 --nocapture`
|
||||
2. `cargo test --locked -p oa-core --lib analysis:: -- --test-threads=1` (28 expected).
|
||||
3. `cargo test --locked -p oa-core --lib analysis_numeric::tests -- --test-threads=1` (26 expected).
|
||||
4. `cargo clippy --locked -p oa-core --all-targets -- -D warnings`.
|
||||
|
||||
The handoff report retains original reboot and first-resume inventories/hashes and the actual failure evidence. [Saved WIP](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/b96ff3935ab3f36b7144566e46559a05a29292a5), [resume lease291](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-291), [first source freeze299](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-299), and [debugging lease310](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-310) distinguish history from current source.
|
||||
|
||||
## Scope and remaining limits
|
||||
|
||||
Saved code implements actual Project definitions/property/case/check records, static admission, nominal exact numeric type helpers, identity/reference/deletion commands, frozen pre8 migration and explicit unsupported history/transition guards. The fixed KindHandle, baseline/every-case/unused-branch checks and scoped parameter identity are unchanged.
|
||||
|
||||
Structural Expr/reference walks and dependency graphs are iterative. Inspected architecture indexes borrow analysis records and clone ordinary step-ID vectors; analysis reference enumeration avoids cloning Expr-bearing elements. This is source reasoning, not stack/RSS acceptance. Derived Expr Clone/Debug/equality/Serialize/Deserialize/Drop, partial decode teardown, command cloning, wide header allocation and output expansion remain separate lifecycle/codec work. Default Serde recursion rejection is unchanged. The decoder review and [comment257](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/1#issuecomment-257) remain authoritative; some admitted logical-depth128 shapes cannot reopen and pretty output can exceed the input budget.
|
||||
|
||||
Source8/evaluator, actual package environment, capture, API/CLI/UI, history/transition parity, target stack/memory evidence and complete transport/release acceptance remain pending.
|
||||
Reference in New Issue
Block a user