UNPKG

paqad-ai

Version:

Spec-driven development framework — AI agents that think before they type

38 lines (27 loc) • 1.75 kB
# Modeling judgment verified: 2026-11-02 Modeling is where the map earns its meaning. A scanner can prove a route exists; only judgment can say it is the checkout screen, that it is an entry point, and that it belongs to the payments module. That judgment must stay tied to evidence. ## Slugs and titles - The slug is a stable, semantic identifier derived from the surface's evidence and purpose, not a restatement of the file path and not an invention. `checkout-review`, not `page-42`. - The title is what a human would call the surface. Keep it identical to the language the product and code already use, so the map and the app agree. ## Kinds - Pick the kind from the closed vocabulary: `page | screen | modal | action | api | cli-command | job | external-system | router | terminal | …`. The kind shapes how the surface renders in the overview, so a wrong kind is a wrong map. - When a surface could be two kinds, choose the one its evidence supports and note the ambiguity rather than silently picking. ## Entries, exits, and modules - An entry point is a surface a user can reach from outside the app (a deep link, a landing route, a CLI command). Mark it only when evidence shows it is reachable from outside. - Attribute each surface to the module that owns its code, joined through the module map. A surface with no module is a gap to note, not a blank to leave. ## Accounting discipline - Every extracted surface must be accounted for: modeled, or excluded with a stated reason. A surface that silently disappears between extraction and the map is a defect the accounting lint is designed to catch. - Do not model a surface the extractor never produced. The map never contains a surface the code cannot prove.