Source changes (dormant parity infra, retained from iterate 2.AI/2.AO): - xenia-kernel/exports.rs: nt_create_event manual_reset polarity + related event wiring - xenia-gpu/mmio_region.rs: D1MODE_VBLANK_VLINE_STATUS hardcode parity Also lands the audit-runs/ analysis notes (.md/.txt/.json digests) for the iterate 2.x VSync/0x10e8/0x1004 wedge investigation. Raw trace dumps (.jsonl/.gz/.csv/.stdout) and agent worktrees (.claude/) are gitignored as regenerable local artifacts — see memory + HANDOFF for the running findings. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
55 lines
2.2 KiB
Markdown
55 lines
2.2 KiB
Markdown
# Phase 4 — Re-validation (XAM audit)
|
|
|
|
| gate | result |
|
|
|---|---|
|
|
| 1. cvar-OFF determinism (3 runs) | **PASS** all 3 = `c6d895829b4611964978990ae1cb8a6a` (SAME as C+6½ baseline) |
|
|
| 2. Phase B `image_canonical_sha256` | **PASS** unchanged (no Phase B re-snap needed — no body changes) |
|
|
| 3a. Phase A main matched prefix ≥ 102158 | **PASS** 102158 (unchanged) |
|
|
| 3b. Phase A all other tid chains | **PASS** no regression — see below |
|
|
| 4. Both engines build clean | **PASS** ours: `cargo build --release` ok (only pre-existing dead-code warning) |
|
|
| 5. Unit tests | **PASS** 146 passed, 0 failed, 0 ignored, 0 measured |
|
|
| 6. Hallucination count | **N/A** — 0 hallucinations found, audit clean |
|
|
|
|
## Gate 1 — determinism
|
|
|
|
```
|
|
c6d895829b4611964978990ae1cb8a6a digest-cvaroff-1.json
|
|
c6d895829b4611964978990ae1cb8a6a digest-cvaroff-2.json
|
|
c6d895829b4611964978990ae1cb8a6a digest-cvaroff-3.json
|
|
```
|
|
|
|
Identical to C+6½'s baseline. Confirms the single class-E rewire is
|
|
cvar-OFF inert (and indeed `XamShowGamerCardUIForXUID` is not hit in
|
|
the 50M Phase A window, so even cvar-ON behavior is unaffected at
|
|
this horizon).
|
|
|
|
## Gates 3a, 3b — Phase A matched-prefix table
|
|
|
|
| chain | C+6½ | XAM-audit | Δ |
|
|
|---|---|---|---|
|
|
| canary tid=6 → ours tid=1 (main) | 102158 | 102158 | 0 (preserved) |
|
|
| canary tid=4 → ours tid=11 | 5 | 5 | 0 |
|
|
| canary tid=7 → ours tid=2 | 26 | 26 | 0 |
|
|
| canary tid=12 → ours tid=7 | 2 | 2 | 0 |
|
|
| canary tid=14 → ours tid=9 | 39 | 39 | 0 |
|
|
| canary tid=15 → ours tid=10 | (no div) | (no div) | 0 |
|
|
|
|
**No regressions on any chain. No advances on any chain** — expected,
|
|
because XamShowGamerCardUIForXUID is not exercised by the current
|
|
boot window.
|
|
|
|
## Gate 5 — unit tests
|
|
|
|
`cargo test -p xenia-kernel --release` — 146/146 pass. Same count
|
|
as C+6½ (no tests added or modified — XAM audit is rewire-only).
|
|
|
|
## Phase A capture
|
|
|
|
`xrs-xamaudit exec -n 50000000 --quiet --phase-a-event-log
|
|
audit-runs/phase-c6half-xam-audit/ours.jsonl ...`
|
|
|
|
Compared against canonical canary log at
|
|
`audit-runs/phase-c-first-divergence/phase-a/canary.jsonl`.
|
|
Diff at `diff-report.md` (head shown above; identical summary
|
|
table to C+6½).
|