Database Schema — Completion checklist¶
Template: TPL-03-04 ../02-Templates/Database-Schema-Template.md | Version: 0.3
How to use: tick an item only after inspecting the completed record and its evidence. Every unticked item needs an OPEN- entry with an owner, or a written, approved disposition.
Content checks¶
- [ ] 01. Database engine and bounded context — Version is exact.
- [ ] 02. ERD and schema diagram — The diagram is generated from, or checked against, the migrations at a named SHA.
- [ ] 03. Tables fields types nullability defaults — No column is missing; types match the migration.
- [ ] 04. Primary foreign unique and check constraints — Every foreign key states on-delete behavior.
- [ ] 05. Indexes query patterns and performance — Each frequent query has a supporting index or a justification.
- [ ] 06. PHI classification and access controls — Every column holding personal data is classified and access-limited.
- [ ] 07. Retention backups migration rollback — Backup retention and deletion propagate to backups.
- [ ] 08. Schema versions and test evidence — Migration head SHA is recorded and up/down tested in CI.
Record control checks¶
- [x] Document ID follows
KAI-<PRODUCT>-DBS-NNNand is unique in the product. - [x] Product, version and commit SHA match the related records.
- [x] No placeholder rows remain; every gap names an owner and an
OPEN-item. - [x] Every cited link, file path and ID resolves.
- [ ] Security, privacy, AI/ML and medical-software applicability checked and routed to qualified reviewers where relevant.
- [x] No patient identifiers, secrets or production data copied into the record.
- [x] Nothing was taken from the worked examples as if it were evidence.
- [ ] Named independent reviewer completed review; approval recorded with date.
Reviewer: Technical reviewer (name to be assigned — OPEN-001) | Date: Pending | Outcome: [Complete / Returned with actions]
Self-check by Claude Code, 2026-10-28, at a6b4429. Ticked items were verified mechanically in this session: sdlc.py validate 0 errors (75 records, stages 01–10); sdlc.py trace no duplicate IDs and every REQ linked to design and test; code citations resolve at a6b4429 (except files in the separate Visionary_oral_ML repository, labelled as external). Content checks are left for the named reviewer; every gap is an owned OPEN- item in the record. Reviewer and approval items are for people.