{
  "product": "NerveOps",
  "short_name": "Nerve",
  "boundaries": {
    "sender_dsn": {
      "can": ["send encrypted signals into one pipe"],
      "cannot": ["read history", "decrypt payloads", "connect as an agent", "execute commands"],
      "leak_impact": "A leaked sender DSN can create alert noise in one pipe, but should not expose previous plaintext alert content or command execution."
    },
    "agent_token": {
      "can": ["connect a trusted local agent", "receive signed command envelopes", "return bounded encrypted output"],
      "cannot": ["read sender-only secrets", "act without explicit agent setup"],
      "leak_impact": "Agent credentials are more sensitive than sender DSNs and should only be used on machines the user controls."
    },
    "relay": {
      "sees": ["routing metadata", "delivery metadata", "ciphertext"],
      "should_not_need": ["plaintext alert payloads", "sender private keys", "mobile private keys"]
    },
    "push_providers": {
      "role": "APNs and FCM wake or notify the phone. The client syncs encrypted records and decrypts locally.",
      "not_role": "Push providers should not be treated as the plaintext alert transport."
    },
    "mobile_client": {
      "role": "Owns local decryption and secure identity state.",
      "risk": "If local recovery keys are unavailable after reinstall, old ciphertext may be unreadable by design."
    }
  }
}
