12fd2537e3
churn.py emits a seed-deterministic kill/spawn schedule (pure data — no real VM spin/kill; the live fabric half stays gated by the containment law). selector.py consumes the schedule and rebuilds a circuit whenever a kill drops one of its hops, across static | random | agent strategies; the paid frontier-model agent arm (GOAL envelope (c)) is human-gated and NOT wired — the agent strategy here is a local stability heuristic that spends nothing. analysis/metrics.py aggregates the four DV families (RQ1 correlation AUC, RQ2 entropy bits, RQ3 throughput retention + rebuild-classifier AUC) into a schema-valid, write-once metrics.json. Acceptance check green: under a fixed churn seed the selector rebuilds every dropped circuit (every_drop_rebuilt, all strategies) and metrics.json is produced. Python R7 selector suite 11 passed; full SOR suite 92 passed. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
24 lines
1.2 KiB
Python
24 lines
1.2 KiB
Python
"""R7 (partial) — offline analysis calibration primitives.
|
|
|
|
This package holds only the *offline-validatable* half of R7: the detectors that
|
|
the instrument-validation gate calibrates on **synthetic fixtures** (never on
|
|
confirmatory-cell data — CLAUDE.md build discipline). Specifically:
|
|
|
|
- ``detectors.shannon_entropy_bits`` — the RQ2 anonymity-set entropy metric; gate
|
|
item 4 requires it to return ``log2(N)`` for ``N`` equiprobable senders.
|
|
- ``detectors.bridge_correlation_auc`` — the RQ1 bridge-linkability scorer; gate
|
|
item 3 requires AUC ≈ 1 on a known-linked control pair and ≈ 0.5 on a
|
|
known-unlinked pair.
|
|
|
|
These are pure functions over in-memory series/distributions — they read no
|
|
pcaps, spawn no engine, move no traffic, and touch no VM fabric.
|
|
|
|
The rest of R7 is landed alongside: ``metrics.py`` (this package) aggregates the
|
|
four DV families into a schema-valid, write-once ``metrics.json``; the seeded
|
|
churn schedule + rebuild loop live in ``cmd_chat/sor/{churn,selector}.py``. The
|
|
live VM spin/kill against the isolated hackhouse fabric, and the full
|
|
pre-registered confirmatory battery, remain gated by the containment law + the
|
|
human freeze (see OVERSEER-STATUS.md) — the churn schedule is seeded *data* here,
|
|
not a real VM operation.
|
|
"""
|