# Evolution 18 — invention register delta (register v50)

Source of truth: `scripts/ip/recalculate_ip_value_v50.py` → `artifacts/valuation/CAIN_IP_VALUE_RECALC_V50.json`.
Evidence scale used in the specification: E3 deterministic tests, E4 adversarial and regression tests, E5 independently
reproduced. **Everything below is E4.** Nothing is E5: the "clean-room" verifier is independent code, not an
independent person; nobody outside this session has reproduced the results.

## Created (6)

| ID | Problem | Mechanism | Technical effect (measured) | Closest prior art | Alternative implementations | Failure modes | Unresolved novelty question |
|---|---|---|---|---|---|---|---|
| SPO-KEY | the executor's report is the only account of what it did | two sensor processes, no CAIN imports, own keys, different methods (snapshot diff; inotify), statements bound by nonce to one action, self-declared scope and gaps | omitted write, undeclared read and transient file detected (EO-01..03); mmap blind spot surfaces as a conflict (CX-02) | Tripwire/AIDE, inotify/fanotify, Falco, Tetragon | fanotify permission events; eBPF LSM; a sensor under another uid or in another VM | same kernel/uid; window ends at report; snapshot cost grows with tree | is "action-bound, separately keyed, dual-method" claimed anywhere in runtime-security patents? not searched |
| EVG-LVL | "observed" hides how, by whom, and what was not looked at | per-effect level from cover/saw/missed; shared key, process or method does not corroborate; incomplete sensor covers nothing; absence ≠ evidence; independence ceiling in every grade | 300-example properties hold; no scenario reaches an external level without an external sensor | this repository's REALITY classes R0–R6; RATS appraisal; N-version voting | weights or probabilities instead of levels; quorum of ≥3 sensors | a shared deception is graded as agreement | overlap with REALITY R-classes is large; is the per-effect absent/uncovered/conflict split new? |
| DPE-OBJ | an approval names a path; the path is resolved again at use | approver signs object identity; enforcer pins each component without following links, compares, executes through descriptors, re-checks authority before the mutating call | 8 swap scenarios prevented, victim files byte-identical (TT-01..08); revocation at commit stops the effect (CR-02) | openat2 RESOLVE_BENEATH/NO_SYMLINKS, O_NOFOLLOW, Capsicum | one `openat2` call; Landlock-confined executor; overlay/snapshot filesystems | `unlinkat` by name; path executors unprotected (TT-09); regular files only | signing object identity into an *authorization* may be the only distinct part |
| CEG-TYP | evidence lists do not say who vouches for what, or what caused what | digest-addressed nodes with source basis; typed edges; only causal relations form a path; gap and contradiction nodes | reordered, re-typed, clock-inverted and grafted graphs rejected (CO-01..05) | W3C PROV, in-toto, SLSA, Lamport clocks | PROV-JSON serialization; Merkle DAG with inclusion proofs | recorder-asserted nodes are context only | low: an application of PROV ideas |
| CRV-RDR | a signed receipt can be signed and false | verifier with no CAIN imports re-derives level and verdict; rejects overclaims; counts only reader-anchored sensors; remembers receipts and authorizations | lying-enforcer scenarios rejected (OC-02, IE-05, CO-02..05, RC-03); grader and verifier agree on 300 random cases | RATS verifier role; this repository's clean-room verifiers | verifier as a service; verifier in another language | replay memory is local; no transparency log | low–medium |
| RCV-DRV | "rolled back" is asserted, not shown | recovery state computed from VERIFIED restoring runs against the approver-signed prior state; crash before evidence → AMBIGUOUS, never retried | partial repair reported as partial; overstated statement rejected (RC-01..04); restart blocks reuse (PE-03) | sagas, intent logs; Evolution 16 journal | filesystem snapshots for rollback | file content only | low |

## Merged or rejected (3) — not counted

| Candidate | Decision | Duplicate of |
|---|---|---|
| decision/enforcer key separation with tool-and-passport binding | rejected | TALOS v3 request-bound authorization (v48); E17 GCP-LIF (v49) |
| single-use durable admission ledger | rejected | TALOS durable replay ledger (v48); E16 mission journal (v47) |
| passport suspension on an observed undeclared effect | rejected | E17 OBS-DIS (v49) |

Not inventions and not counted: the corpus, the mutation runner, the fixtures, the tests, the lock, the use of standard
primitives.

## Deferred

- kernel-side or other-uid sensors (not built);
- OpenTelemetry correlation attributes (mapping written, nothing implemented);
- network and process effect observation (no method here).

## Dependencies and licensing

Python standard library, `cryptography` (Apache-2.0 / BSD), Linux inotify through `ctypes`. `hypothesis` (MPL-2.0) in
tests only. No third-party code was copied.

## Questions for qualified counsel

1. Is any of SPO-KEY, EVG-LVL, DPE-OBJ patentable subject matter given openat2, inotify, Tripwire-class monitors,
   Falco/Tetragon, PROV and RATS? A prior-art search has not been done.
2. These files are uncommitted work in a repository with no incorporation record and no IP assignment; who owns them?
3. Does anything published on the three sites already disclose these mechanisms in a way that starts a filing clock?

## Product mapping

See `top100_delta.md`: ranks 78, 21, 6, 8/88, 64/65. No registry change.
