Simple loop for viewers. Built from README + docs/ARCHITECTURE.md + docs/SECURITY.md on main (SHA 214e60ba). No invented steps.
PTS = quantum_risk×0.4 + access_violations×0.3 + rate_limit_hits×0.2 + signature_failures×0.1
Safe <50 · Caution 50–149 · Critical ≥150
Agents send SENTINEL_KEY. Server expects PULSAR_SERVICE_KEY. Missing key = process refuses to start. Encapsulate uses ML-KEM + AES-256-GCM.
90-day default. 7-day grace: old keys can still decapsulate, cannot encapsulate. Caller-driven — no background timer.
Each event writes an ASR. Batches of 50 build a Merkle tree and go to the chain logger. Public /health only. Everything else needs auth.
Patent-folder docs describe a different PTS (0–100, quarantine at ≥75) plus Layer 3/4 quarantine and dual-chain shield. That is design text, not the shipped calculator in README/ARCHITECTURE. This animation follows the shipped loop. Source: thebardchat/pulsar_sentinel