Decompose architecture into 28 atomic implementation tasks
Break the @alkdev/taskgraph architecture specs into dependency-ordered implementation tasks across 8 component directories: setup, schema, error, graph, analysis, cost-benefit, frontmatter, api, and review. Each task has clear acceptance criteria referencing specific architecture docs. Three review tasks serve as quality gates at critical junction points (schemas-and-errors, graph-complete, complete-library). The dependency graph is validated acyclic with 9 topological levels enabling significant parallelism across independent work streams.
This commit is contained in:
49
tasks/implementation/review/schemas-and-errors.md
Normal file
49
tasks/implementation/review/schemas-and-errors.md
Normal file
@@ -0,0 +1,49 @@
|
||||
---
|
||||
id: review/schemas-and-errors
|
||||
name: Review schema, enum, and error implementations for consistency
|
||||
status: pending
|
||||
depends_on:
|
||||
- schema/enums
|
||||
- schema/input-schemas
|
||||
- schema/graph-schemas
|
||||
- schema/result-types
|
||||
- schema/numeric-methods-and-defaults
|
||||
- error/error-hierarchy
|
||||
scope: narrow
|
||||
risk: low
|
||||
impact: phase
|
||||
level: review
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
Review the schema and error layer implementations before building the graph and analysis layers on top. This is a critical checkpoint because everything downstream depends on these types being correct and consistent with the architecture docs.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] All TypeBox schemas match [schemas.md](../../../docs/architecture/schemas.md) exactly
|
||||
- [ ] All `Static<typeof>` type aliases correctly derived — no manual type definitions
|
||||
- [ ] Nullable helper used consistently in TaskInput (not in TaskGraphNodeAttributes)
|
||||
- [ ] Enum values match DB/frontmatter conventions exactly
|
||||
- [ ] Numeric method tables match spec tables exactly
|
||||
- [ ] `resolveDefaults` correctly separates "nullable categorical→default" from "label-only nullable→stays nullable"
|
||||
- [ ] Error class hierarchy is correct: all extend TaskgraphError, all have proper `name` and typed fields
|
||||
- [ ] `InvalidInputError` can be constructed from `Value.Errors()` output
|
||||
- [ ] `CircularDependencyError.cycles` type is `string[][]`
|
||||
- [ ] No Zod, no gray-matter, no js-yaml in any dependency
|
||||
- [ ] `package.json` lists only approved dependencies
|
||||
- [ ] All tests pass
|
||||
|
||||
## References
|
||||
|
||||
- docs/architecture/schemas.md
|
||||
- docs/architecture/errors-validation.md
|
||||
- docs/architecture/frontmatter.md — supply chain constraints
|
||||
|
||||
## Notes
|
||||
|
||||
> To be filled by implementation agent
|
||||
|
||||
## Summary
|
||||
|
||||
> To be filled on completion
|
||||
Reference in New Issue
Block a user