Files
taskgraph_ts/tasks/implementation/schema/enums.md
glm-5.1 131e3e929b 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.
2026-04-27 08:30:05 +00:00

1.8 KiB

id, name, status, depends_on, scope, risk, impact, level
id name status depends_on scope risk impact level
schema/enums Define TypeBox categorical enum schemas and type aliases pending
setup/project-init
narrow trivial component implementation

Description

Define all categorical enum schemas using Type.Union([Type.Literal(...)]) pattern per schemas.md. Each enum gets a schema constant (PascalCase + Enum suffix) and a Static<typeof> type alias (PascalCase, no suffix).

The six enums: TaskScopeEnum, TaskRiskEnum, TaskImpactEnum, TaskLevelEnum, TaskPriorityEnum, TaskStatusEnum.

Acceptance Criteria

  • src/schema/enums.ts exports all six enum schemas and their type aliases
  • Each enum uses Type.Union([Type.Literal("value"), ...]) pattern per typebox-patterns.md
  • TaskScopeEnum: "single" | "narrow" | "moderate" | "broad" | "system"
  • TaskRiskEnum: "trivial" | "low" | "medium" | "high" | "critical"
  • TaskImpactEnum: "isolated" | "component" | "phase" | "project"
  • TaskLevelEnum: "planning" | "decomposition" | "implementation" | "review" | "research"
  • TaskPriorityEnum: "low" | "medium" | "high" | "critical"
  • TaskStatusEnum: "pending" | "in-progress" | "completed" | "failed" | "blocked"
  • Type aliases derived via Static<typeof>: TaskScope, TaskRisk, TaskImpact, TaskLevel, TaskPriority, TaskStatus
  • Naming convention matches spec: Enum suffix on schema constants only, never on type aliases
  • src/schema/index.ts re-exports all schemas and types

References

  • docs/architecture/schemas.md — enum definitions, naming convention
  • docs/research/typebox-patterns.md — TypeBox enum patterns, naming convention

Notes

To be filled by implementation agent

Summary

To be filled on completion