31 lines
2.4 KiB
Markdown
31 lines
2.4 KiB
Markdown
# Device Plane baseline test matrix
|
|
|
|
| Boundary | Required proof |
|
|
| --- | --- |
|
|
| Restricted identity | IMEI accepts exactly 15 decimal digits internally |
|
|
| Browser projection | Safe discovery view contains only a masked identifier |
|
|
| Identifier hashing | HMAC digest is deterministic and does not reveal input |
|
|
| Secret boundary | Secret-like or raw-payload keys are rejected recursively |
|
|
| Command boundary | Discovery contract rejects command-shaped input |
|
|
| Framing bound | B2 evidence inspection rejects empty and oversized buffers |
|
|
| Framing honesty | Unverified B2 bytes return `official_framing_required` |
|
|
| No identifier guessing | Embedded digit sequences are never returned as IMEI |
|
|
| Model profile | Four server routes and INTERNAL identification are recorded |
|
|
| Gelios preservation | Gelios is a parallel route, not a dependency or failover |
|
|
| Core database secret | Production Compose uses a file-backed password, not a plaintext environment value |
|
|
| Core health | Database is ready while discovery ingest and command transport remain disabled |
|
|
| Gateway health | Public ingress, TCP listener and command transport remain disabled |
|
|
| Compose exposure | Only loopback health ports `18120/18121` are published; raw `9921` is not |
|
|
| Application service scope | `files.txt` selects only affected Core/Gateway services with `--no-deps` |
|
|
| Database preservation | Ordinary application artifacts never select `device-postgres` |
|
|
| Database bootstrap | Exact descriptor selects PostgreSQL only when both container and volume are absent |
|
|
| Bootstrap rollback | Candidate container may be removed; named volume is never removed |
|
|
| Rollback predecessor | Backup records actual pre-apply services; Compose presence cannot invent Core/Gateway |
|
|
| Failed-001 evidence | Recovery requires exact failed archive, journal and backup digests |
|
|
| Partial source | Recovery accepts only DB-bootstrap source plus the observed healthy foundation runtime |
|
|
| Recovery mutation | Source is published without build, restart, recreate or service removal |
|
|
| Recovery rollback | Failed acceptance restores source only and leaves runtime unchanged |
|
|
| Artifact policy | `.env`, secrets, runtime state, tests, logs and `node_modules` are excluded |
|
|
| Artifact reproducibility | Repeated builds for the same patch id are byte-identical |
|
|
| Runner compatibility | Existing canonical Platform registry tests remain green |
|