Ryan Perez · System graph & agent interface

One graph. One rule file. Any agent.

Every system in this library is a node, and every dependency between them is an edge you can trace before you change anything. The same file that draws this graph is what the REST API answers from — so an agent maintaining one of your sites and this page can never disagree about what the rules are.

Source of truth /api/rules Read live by this page and by the server. Edit it once.
{{ counts }}
Dependency graph

Click a node to trace it

{{ b.label }}
{{ l.t }}
Selected node

{{ sel.name }}

{{ sel.blurb }}
Owns §{{ sel.section }}
{{ o.t }}
{{ sel.file }}
{{ s.v }} {{ s.k }}
Supplies · what breaks downstream if this changes
{{ e.kind }}{{ e.other }} {{ e.label }}
Nothing downstream depends on this node.
Depends on · read these first
{{ e.kind }}{{ e.other }} {{ e.label }}
Rules this node owns
{{ r.id }} {{ r.severity }}
IF {{ r.if }} THEN {{ r.then }}
Every rule in the library

{{ ruleCount }} conditionals, one file

{{ s.v }}{{ s.k }}
{{ r.id }} {{ r.systemName }} {{ r.severity }}
IF {{ r.if }} THEN {{ r.then }} Override requires: {{ r.gate }}
No rules match that filter.
Selection engines

Five, callable by name

{{ e.name }}
{{ b.when }}→{{ b.use }}
Gates

Three, all-or-nothing

Not scores. Any single missing key blocks release.
{{ g.name }} {{ g.count }} keys
{{ k.t }}
Install

Point a client at it

HTTPS and JSON with an API key in the X-API-Key header. Keep the key in a trusted server environment.
{{ l.t }}
Verified
{{ s.t }} {{ s.v }}
npm test · cdn/
REST endpoints

What an authenticated client can request

{{ t.name }} {{ t.when }}
{{ t.d }}
The integration flow

Authenticate, publish, embed

{{ x.stage }} {{ x.t }}
{{ l.t }}
{{ x.note }}
Guarantees

Three properties an agent can rely on

{{ g.t }} {{ g.d }}
Design precedence in the rule library
{{ p.t }} {{ p.arrow }}
Known limits

Four, stated plainly

{{ l.t }} {{ l.d }}
Adding a rule
{{ l.t }}
Bump the version, log it on the Style Guide page, and both this graph and the server pick it up. No code change.