The 751-line architecture.md violated the SDD process modular documentation target (~500 lines). It also had duplicate TaskGraph class definitions (one monolith, one decomposed) that directly contradicted each other, and embedded consumer-specific tool dispatch mappings that belong in downstream projects. Changes: - Split into 8 focused documents + 7 ADR records + redirect page - Removed the monolithic TaskGraph class (kept only decomposed version) - Moved CLI→plugin dispatch mapping out (belongs in plugin architecture) - Extracted implementation code (frontmatter splitter, findCycles, DAG propagation) into WHAT/WHY descriptions per architect role spec - Added proper ADR format for all resolved design decisions - Fixed review issues: C_fail mapping, DuplicateNodeError/DuplicateEdgeError types, ValidationError/GraphValidationError definitions, mutation error handling contract, enum naming convention, validation timing clarification
1.3 KiB
1.3 KiB
Architecture
This document has been decomposed into modular documents. See docs/architecture/ for the current architecture specification.
The monolithic architecture document was split to follow the SDD process's modular documentation pattern (~500 line target per document). The content now lives in:
- architecture/README.md — Overview, problem statement, consumer context
- architecture/graph-model.md — Edge direction, construction, defaults, metadata
- architecture/api-surface.md — TaskGraph class, standalone functions, return types
- architecture/schemas.md — TypeBox schemas, enums, numeric methods
- architecture/cost-benefit.md — EV math, risk, DAG propagation, findCycles
- architecture/frontmatter.md — Parsing, serialization, supply chain security
- architecture/errors-validation.md — Error types, validation levels
- architecture/build-distribution.md — Dependencies, project structure, targets
- architecture/decisions/ — ADR records for design decisions