---
name: shield
kind: syntax
since: 0.1
stability: stable
---

Security boundary and compliance gate.

```axon
shield Name {
  scan: [pii_leak, prompt_injection]
  on_breach: halt
  severity: high
  compliance: [GDPR, HIPAA]
}
```

A `shield` declaration pins a closed catalogue of scanners that
must be applied at any boundary referencing it. `compliance`
lists regulatory authorisations covered by the shield; the type
checker refuses to publish a value of type `T` on a shielded
channel unless the shield's `compliance` covers `T.compliance`
(see `Trusted<T>`).

Shields are referenced from `channel`, `axpoint`, `daemon`, and
`flow` declarations via `shield: ShieldName`.
