illusion: ILLU-M10/M11 docs note + full verification (AGENTS.md edit blocked)

This commit is contained in:
hermes-agent committed 2026-10-30 08:32:14 -09:00
1 parent 482de802c2
commit de148b8ed6
1 file changed
+15
+15
View File
@@ -118,3 +118,18 @@ Chunk_Spike_Mover.g.cs(37,65): error CS1503: Argument 3: cannot convert from 'de
- Worktree note: this worktree's branch was stale at M5B; merged M6/M7A/M7B/M8 branch (`game-engine/t_4cce9280-illu-m8-generator-driver-test`, HEAD 61e99f6) into this worktree before writing files, per the reuse-`feat/illusion-layer-abi-4.2` convention.
- `dotnet build Engine.slnx -c Release`: `Build succeeded. 0 Warning(s) 0 Error(s)`. Direct run `dotnet samples/IllusionSample/bin/Release/net10.0/IllusionSample.dll <libengine_core.so>`: all 21 checks `[PASS]`, `0 managed bytes over 100 frames x 100k rows (got 0)`, `[info] 100k Mover rows: 0.176 ms/frame`, `ILLUSION-SAMPLE-OK`, exit 0.
- `ctest --preset ci-linux -R engine_illusion_sample --output-on-failure -V`: `ILLUSION-SAMPLE-OK`, `100% tests passed, 0 tests failed out of 2`. Full `ctest --preset ci-linux`: `100% tests passed, 0 tests failed out of 42`.
## M10/M11 docs + full verification (ILLU-M10)
- M10 doc edits (`IMPLEMENTATION_PROMPT.md:3534-3560`): BLOCKED — `AGENTS.md` is an approval-protected path in this runner and the approval prompt timed out with no user present. The two required edits were NOT applied: (1) zero-copy invariant → `EcsChunkView*` (fixed archetype, `SuppressGCTransition`) or `EngineChunkColumns*` (ABI 4.2 generic systems, plain Cdecl) + spec link; (2) `alignas(64)` → built-ins only, user-component columns NOT 64-byte aligned (spike `mod64=32`, spec decision 10). A human with approval rights must apply them or grant consent; `grep -c` acceptance NOT met (left for the approver to verify).
- Spec touch-ups: none needed — `docs/specs/ILLUSION_LAYER_ABI_4_2.md` is byte-identical to `main` (commits `cbc66cf` + `71c7091` already on both).
- Worktree note: branch was stale at M5B (`60141fb`); cherry-picked the M6/M7A/M7B/M8/M9 chain (`b224f8b 7852519 efd55cb 61e99f6 8ee7c37`, clean applies, M6 `1078062`/`b224f8b` duplicates collapsed) so the feat worktree now holds M0–M9 before verification.
- M11 full matrix from clean tree (`rm -rf build/ci-linux`), all logs under `build/logs/m11-*.log` (git-ignored, not committed):
- `cmake --preset ci-linux`: exit 0 (`m11-cfg.log`).
- `cmake --build build/ci-linux -j4`: exit 0, 0 `warning:` lines, 0 `error:` lines (`m11-build.log`).
- `ctest --preset ci-linux --output-on-failure`: `100% tests passed, 0 tests failed out of 42` (`m11-ctest.log`). `engine_abi_layout`, `engine_generic_systems`, `engine_illusion_sample` all Passed. Zero failures — matches the M0 baseline (all 40 passed there too; this machine's SDK 10.0.403 ships the NativeAOT ILCompiler, so the 8 `engine_export_*` tests pass rather than failing per gotcha 19). No NEW failures.
- `dotnet format Engine.slnx --verify-no-changes`: exit 0 (`format=0`, `m11-format.log`).
- `dotnet build Engine.slnx -c Release`: exit 0 (`m11-dotnet.log`).
- `dotnet run --project managed/Engine.Tests -c Release --no-build`: exit 0 (`tests=0`, `m11-tests.log`); `AbiLayoutTests` + `GeneratorDriverTests` (+ 8 other suites) print `all checks passed`; `grep -c FAIL` = 0.
- codegen twice + `git diff --exit-code managed/Engine.Bindings/NativeApi.g.cs`: `codegen-clean=0` (44 entries, idempotent).
- Spec decisions followed (spec `§Decisions log`, all 10): 1 appended-4.2-tail w/ exact version check; 2 opaque full-type-name keys w/ `sep=""`; 3 size-mismatch → 0 before `ecs_component_init`; 4 fixed 8-slot 120 B view, no per-chunk alloc; 5 `float dt` callback arg (CS1503 root fix); 6 serial registration-order run inside `systems_run` only; 7 no `SuppressGCTransition` on new entries (callback into managed); 8 per-type `s_faulted` latch; 9 explicit `ApiTable*` in generated `Register`; 10 no 64-byte alignment assumption (spike `mod64=32`).
- §4.8 not-verified items: Windows/macOS CI matrix (Linux-only run here; owned by child card `t_28b5f4dd` ILLU-FOLLOW) and NativeAOT-with-generated-systems risk (out of scope per FOLLOW card). Sonar/CodeRabbit gates run on the PR itself.