2c08c778a9
REQ-221: skills/ directory with 9 Atelier-derived skill files mapped to the BA.A citizen-developer catalog: api, security, data, testing, observability, errors, devops, infrastructure-as-code, compliance. Each names the Atelier source path, distills first-principles to the citizen-dev-relevant subset, links to agent-checklist triggers, maps to BA.A 5-skill catalog. REQ-222: docs/skills.md index (9-skill table, Atelier provenance, 8 core principles C1-C8, consumption instructions, reference-only domains, excluded domains). PROJECT.md BA.A decision extended with the Atelier-derived skill catalog reference. ---ci--- project: acdl phase: 4 milestone: v1.18 status: execute requirements: covered: [REQ-221, REQ-222] partial: [] ---/ci---
34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# Skill: Data
|
|
|
|
> **Atelier source:** `domains/data/` (first-principles + schema-design,
|
|
> migrations, indexing)
|
|
> **Core principles:** C1 Correctness, C4 Locality, C6 Composability
|
|
> **BA.A mapping:** web API, worker, scheduled job
|
|
> **Consumer:** read this before authoring a service with a database.
|
|
|
|
## First Principles (citizen-developer-relevant subset)
|
|
|
|
- **Schema reflects the domain, not the application.** Tables model
|
|
real-world entities, not ORM classes.
|
|
- **Constraints are in the schema.** NOT NULL, UNIQUE, FK — the database
|
|
enforces integrity, not the application.
|
|
- **Migration has an `up` and a `down`.** Every migration is reversible.
|
|
- **Types are domain-accurate.** UUID for IDs, TIMESTAMPTZ for timestamps,
|
|
DECIMAL for money — not string/integer/everything.
|
|
- **No `SELECT *`; no N+1.** Explicit columns; eager-load relations.
|
|
|
|
## Agent-Checklist Triggers (§ Data)
|
|
|
|
- Schema reflects the domain (not the application)
|
|
- Constraints are in the schema (NOT NULL, UNIQUE, FK)
|
|
- Migration has an `up` and a `down`
|
|
- Types are domain-accurate (UUID, TIMESTAMPTZ, DECIMAL for money)
|
|
- No `SELECT *`; no N+1
|
|
|
|
## How Nova Uses This
|
|
|
|
Nova deploys your infrastructure (RDS, DynamoDB) but does not author your
|
|
schema. The data skill ensures the schema you bring meets production-grade
|
|
standards. The submission-readiness gate checks that your contract declares
|
|
the infrastructure; the data skill checks that the application running on
|
|
that infrastructure uses the database correctly. |