Skip to content

T-IIRK-add-the-roadmap-entity-type-and-its-create-check-ops

State: closed/done · Impact: high · Complexity: medium

The sdlc 1.0 plan needed a checkable entity that groups milestones under a shipped version and validates the group as a whole — the tracking document the rest of the 15-phase plan hangs its milestones and tasks off. No such entity type existed.

Milestone and Task entities existed with their own schema/contract/ops triads, but nothing sat one level above Milestone to group them by shipped version and validate the group as a whole.

A new roadmap entity type: RoadmapSchema/RoadmapContract in schema.ts, docs/planning/roadmaps/RM<NNNN>.md id-only filenames, a body template with an Overview section plus free-form ## vX.Y.Z version sections, sdlc roadmap create, and sdlc roadmap check validating that every milestone wikilink resolves, every one of those milestones’ own tasks resolve, no milestone is double-booked across versions, and no unexplained closed/abandoned or closed/superseded milestone lingers.

  1. Added RoadmapSchema/RoadmapContract to lib/model/entities/roadmap/schema.ts, mirroring Milestone’s shape minus the sub-id suffix and the version/target_date fields.
  2. Wrote the roadmap/definition.md companion doc and body-template.eta.
  3. Implemented ops/create.ts (mints RM-NNNN) and ops/check.ts (the cross-reference validator).
  4. Registered the entity type in the model’s dispatch/obsidian-index wiring and added schema/create/check tests.
AreaNote
solutions/ontological/lib/model/entities/roadmap/New entity: schema, definition, body template, create/check ops, tests
  • AC-1: sdlc roadmap create -t "<title>" --plan-doc "…" mints an RM-NNNN file under docs/planning/roadmaps/.
  • AC-2: sdlc roadmap check reports a broken milestone wikilink, a milestone linked from two version sections, and an unresolved task inside a linked milestone.
  • AC-3: bun test solutions/ontological/lib/model/entities/roadmap passes.
  • none
  • none

← Back to Tasks