SDLC Status Dashboard

2026-08-10 11:20:04 +00:00

Current Phase
documentation
Phases Done
3 / 9
Completion
33%
Re-enter At
existing-solutions
3 completed6 remaining

Pipeline Progress ?
⚪ not started not yet begun
✏️ draft initial version
🔍 in review under review
🚧 in progress actively worked on
⛔ blocked waiting on dependency
✅ done completed
⏭️ skipped not applicable

Foundation
Done: completed requirementsNot Started: not yet begun existing-solutionsNot Started: not yet begun codebase-analysisNot Started: not yet begun feasibilityDone: completed specificationNot Started: not yet begun plan
Build
Not Started: not yet begun implementationDone: completed testing
Ship
Not Started: not yet begun documentation
❓ Open Questions📖 Vocabulary

Requirements: Task Board & Task Lifecycle Management

Overview

The task board is Fusion's core Kanban surface. It lets operators create tasks (free text, import, GitHub), track them through a workflow-driven lifecycle (planning/todo/in-progress/in-review/done), attach prompt specs, comments, and artifacts, declare dependencies and subtasks, and move or delete them with guard rails. Every piece of work in Fusion, including missions and research, eventually resolves to tasks on this board.

Stakeholders

Stakeholder Interest
Operator Creates and tracks tasks, reads prompt specs, adds comments/artifacts, manages dependencies
Agent executor Consumes task state (spec, file scope, branch context) when driving implementation
Dashboard/CLICommand-line interface users Same board and lifecycle surfaced on every device

Functional Requirements

ID Priority Requirement
FR-1MustThe system shall let users create tasks via quick entry, a new-task modal, import, GitHub issues, and mission/research flows Must The system shall let users create tasks via quick entry, a new-task modal, import, GitHub issues, and mission/research flows
FR-2MustThe system shall render tasks on a board (column-based) and a list view, with search and filtering Must The system shall render tasks on a board (column-based) and a list view, with search and filtering
FR-3MustThe system shall persist a task's prompt/spec document, comments, artifacts, dependencies, subtasks, branch context, and file scope Must The system shall persist a task's prompt/spec document, comments, artifacts, dependencies, subtasks, branch context, and file scope
FR-4MustThe system shall enforce lifecycle move rules and guards (column eligibility, dependencies, user pause semantics) Must The system shall enforce lifecycle move rules and guards (column eligibility, dependencies, user pause semantics)
FR-5MustThe system shall let users move tasks between columns and move the board itself (board-level moves) Must The system shall let users move tasks between columns and move the board itself (board-level moves)
FR-6MustThe system shall support archiving and soft-delete with verification, keeping tombstones for audit Must The system shall support archiving and soft-delete with verification, keeping tombstones for audit
FR-7ShouldThe system shall expose task operations through the dashboard API, CLICommand-line interface, and workflow routes Should The system shall expose task operations through the dashboard API, CLICommand-line interface, and workflow routes
FR-8ShouldThe system shall render board columns in a resolved order with degraded-mode flags for unsupported columns Should The system shall render board columns in a resolved order with degraded-mode flags for unsupported columns
FR-9ShouldThe system shall group tasks (GroupTask) and break work into subtasks with their own lifecycle Should The system shall group tasks (GroupTask) and break work into subtasks with their own lifecycle

Non-Functional Requirements

ID Priority Category Requirement
NFR-1MustTask lifecycleThe domain state machine modeling a task's progression and its status values mutations shall use per-task advisory locks to prevent conflicting concurrent moves Must Concurrency Task lifecycleThe domain state machine modeling a task's progression and its status values mutations shall use per-task advisory locks to prevent conflicting concurrent moves
NFR-2MustSoft-deleted tasks shall never be resurrected by lifecycle or self-healing sweeps Must Reliability Soft-deleted tasks shall never be resurrected by lifecycle or self-healing sweeps
NFR-3ShouldThe board shall work on desktop and mobile breakpoints Should Usability The board shall work on desktop and mobile breakpoints
NFR-4ShouldTask search and list reads shall complete without full-table scans in normal use Should Performance Task search and list reads shall complete without full-table scans in normal use

Constraints

  • Task store lives in @fusion/core; dashboard and CLICommand-line interface must not walk the raw DB directly
  • Port 4040 is reserved and must not be used by tests or tooling
  • Backward moves (e.g. in-review → todo) require liveness proof before mutation

Acceptance Criteria

  • FR-1MustThe system shall let users create tasks via quick entry, a new-task modal, import, GitHub issues, and mission/research flows
    • Given an operator with the dashboard or CLICommand-line interface open
    • When they create a task via quick entry, the modal, import, or GitHub
    • Then the task appears on the board with a prompt spec and correct column
  • FR-2MustThe system shall render tasks on a board (column-based) and a list view, with search and filtering
    • Given tasks exist in the store
    • When the board or list view is opened
    • Then tasks render in resolved column order with search/filtering available
  • FR-3MustThe system shall persist a task's prompt/spec document, comments, artifacts, dependencies, subtasks, branch context, and file scope
    • Given a task with comments, artifacts, dependencies, and subtasks
    • When the task detail is opened
    • Then all attached data persists and renders correctly
  • FR-4MustThe system shall enforce lifecycle move rules and guards (column eligibility, dependencies, user pause semantics)
    • Given a task in a non-target column
    • When an invalid move is attempted
    • Then the move is rejected with a guard/error and the task column is unchanged
  • FR-6MustThe system shall support archiving and soft-delete with verification, keeping tombstones for audit
    • Given a task to remove
    • When the operator archives/deletes it
    • Then it becomes tombstoned and is never resurrected by sweeps
  • NFR-1MustTask lifecycleThe domain state machine modeling a task's progression and its status values mutations shall use per-task advisory locks to prevent conflicting concurrent moves
    • Given two concurrent lifecycle mutations on the same task
    • When both are submitted
    • Then exactly one wins and the loser is rejected, with no torn state

Conflicts

None identified yet.

Open Questions

  1. How are board-level (multiple-task) moves reconciled with per-task workflow selection?