template-render-idempotency
| Field | Value |
|---|---|
| ID | template-render-idempotency |
| Version | 1.0.0 |
| Mode | contract |
| Layer | Stripe |
| Category | contract |
| Severity | 🟡 warning |
| SLA | 30,000 ms |
| Depends on | none |
| Source | apps/api/__gates__/template-render-idempotency.gate.ts |
What it asserts
Every fixture under packages/templates/fixtures/ replays byte-identically for the same Idempotency-Key + body; 409s for same key + mutated body.
Run it locally
bun run gates --gate=template-render-idempotencySee also
contractmode- Stripe layer
- Allowlists — how to bound a known finding with an expiration
- Contributing — how to evolve this gate or write a new one
Generated by apps/design/scripts/generate-gate-pages.ts from the gate's source-of-truth metadata. Edit this page by editing the gate file's description / version / etc.
template-disclaimer-matrix
Every materialized template carries the disclaimer components required for its category. Blocking when enforce_disclaimer_matrix is set; warning otherwise.
test-clocks
components.parameters.MatterTestSpeed is declared with enum [real, fast, instant]; every mutation accepts it (Matter test-mode clock contract).