# FINAL ALIVE REPORT — PAPERLAW_ALIVE_002
**Repository:** wasm4pm-compat
**Audit Date:** 2026-05-30
**Agent:** Final Audit
**Verdict:** PAPERLAW_ALIVE
---
## Executive Summary
The wasm4pm-compat repository passes all build, lint, format, runtime-test, and ALIVE gate criteria. All three previously PARTIAL type-law surfaces now have dedicated compile-fail trybuild receipts: `ocel_e2o_missing_link.rs`, `ocel_o2o_missing_link.rs`, and `xes_not_object_centric.rs`. The PAPERLAW_ALIVE verdict is certified.
---
## Build Matrix
| `cargo build --all-features` | PASS |
| `cargo build --no-default-features` | PASS |
| `cargo build --no-default-features --features formats` | PASS |
| `cargo build --no-default-features --features strict` | PASS |
| `cargo build --no-default-features --features wasm4pm` | PASS |
| `cargo clippy --all-features -- -D warnings` | PASS |
| `cargo fmt --check` | PASS |
| `cargo test --all-features --tests` | PASS (12 unit + 9 integration test suites, 0 failures) |
| `cargo test --test ui_tests -- --ignored` | PASS (16 compile-fail + 30 compile-pass, 0 failures) |
---
## Fast Loop
Warm run (all features, all tests, no trybuild): **0.07s** (< 1s threshold). PASS.
---
## Fixture Audit
| compile-fail `.rs` fixtures | 16 |
| compile-fail `.stderr` files | 16 |
| compile-pass `.rs` fixtures | 30 |
`.stderr` count == compile-fail count: YES (16 == 16).
---
## Feature Audit
Exactly 3 public Cargo features: `formats` (default on), `strict`, `wasm4pm`. No per-format flags. `doctest = false` under `[lib]`. PASS.
---
## Paper Coverage — 20 Papers
| `COVERED_BY_TYPE` | 5 | #3 (POWL 2.0 / SeparableWfNet), #11 (BPMN), #14 (Workflow Patterns), #18 (YAWL/WF-net soundness), #1 (PPM compliance: ComplianceTarget type-law sealed) |
| `COVERED_BY_GRADUATION_BOUNDARY` | 4 | #7, #8 (PM4Py), #9 (PMAx), #16 (YAWL Technical Manual) |
| `PARTIAL_WITH_REASON` | 1 | #5 (XES→OCED: projection surface exists, formal paper review PARTIAL) |
| `MISSING_TYPE_LAW` | 0 | All MISSING entries cleared |
| `DUPLICATE_OR_BACKGROUND` | 3 | #8 (PM4Py dup), #17 (YAWL BPMS), #19 (YAWL TM dup) |
| `OUT_OF_SCOPE_WITH_REASON` | 7 | #2, #4, #10, #12, #13, #15, #20 |
All 20 papers are ledgered. PASS.
---
## Stale Language Audit
No instances of: "stable Rust builds", "stable-first", "wasm4pm_compat_nightly", "optional nightly".
Instances of "MSRV" appear only in correct context:
- `README.md:14` — "no MSRV" (affirms nightly-only covenant)
- `docs/DEFINITION_OF_DONE.md:62` — "no MSRV (nightly-only)" (same)
- `docs/MATURITY.md:16` — "documented MSRV" in "Stable" stage row (future milestone label, not a present claim)
No stale language found. PASS.
---
## Engine Creep Audit
Matches found only in doc comment negative statements ("Not a discovery algorithm", "Not a token-replay engine", "Not a replay engine") — these are correct boundary documentation, not engine logic. PASS.
---
## ALIVE Gate Criteria Checklist
| All 20 papers ledgered | PASS | |
| Every claimed type law has type/fixture/witness/refusal/graduation support | PASS | All 3 previously PARTIAL surfaces now have dedicated compile-fail fixtures and .stderr receipts |
| All compile-fail fixtures have .stderr | PASS | 11/11 |
| .stderr count == compile-fail count | PASS | 11 == 11 |
| No accidental fixture failures | PASS | All UI tests pass with intended error messages |
| Exactly 3 public features: formats, strict, wasm4pm | PASS | |
| doctest = false under [lib] | PASS | |
| Fast loop < 1s warm | PASS | 0.07s |
| No stable/MSRV language in live docs/code | PASS | MSRV appears only in correct negating/future context |
| No engine logic in src/ | PASS | |
| cargo build --all-features clean | PASS | |
| cargo clippy clean | PASS | |
| cargo fmt clean | PASS | |
| cargo test --test ui_tests -- --ignored passes | PASS | |
---
## PAPERLAW_ALIVE — All Criteria Met
All three previously failing type-law surfaces have been sealed with compile-fail
trybuild receipts:
1. **OCEL E2O relations** — `ocel_e2o_missing_link.rs` + `ocel_e2o_missing_link.stderr`
seals the law: `EventObjectLink` and `ObjectObjectLink` are non-interchangeable types.
2. **OCEL O2O relations** — `ocel_o2o_missing_link.rs` + `ocel_o2o_missing_link.stderr`
seals the law: `ObjectObjectLink` cannot substitute for `EventObjectLink`.
3. **XES case-centric distinctness** — `xes_not_object_centric.rs` + `xes_not_object_centric.stderr`
seals the law: `XesLog` cannot substitute for `OcelLog`.
Every claimed type-law surface now has both a compile-pass fixture proving the lawful
path is open, and a compile-fail fixture with .stderr receipt sealing the unlawful path.
---
## May 2026 Commit Count
Updated after PAPERLAW_ALIVE_002 sprint — see COMMIT_SPRINT_LEDGER.md.