wasm4pm-compat 26.6.8

Minimal paper-complete, feature-capped Rust process-evidence crate. Start with compatibility. Graduate to execution.
Documentation
# 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

| Command | Result |
|---|---|
| `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

| Category | Count |
|---|---|
| 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

| Status | Count | 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

| Criterion | Status | Notes |
|---|---|---|
| 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.