Skip to content

Boards + Issues — Work Tracks

active

Boards are named work track containers inside the Pipeline. The Intake Board is the system default — the front gate. Named boards (Discovery, Delivery, etc.) give the captain parallel tracks with board-scoped labels and immutable issue placement.

componentpipelineboardsissuesintakelabelswork-trackskanban
See also: overviewvalue-streamscrew › sal

Boards + Issues — Work Tracks

See also: overview.md | value-streams.md | sal.md


Component Card

OwnerSal
MCP@sector137/mcp-pipeline
Slash/pipeline
CLIsector137 pipeline boards
SDKsdk.pipeline().listBoards()
Statusactive

TL;DR

  • Boards are named work track containers — the Pipeline’s organizational layer for parallel threads of activity
  • Every universe starts with Intake — the system-generated default board that cannot be renamed, edited, or deleted
  • Named boards (Discovery, Delivery, Design Sprint, Hardening) are created by the captain for dedicated work tracks
  • Issue placement is permanentboard_id is immutable after creation; issues never move between boards
  • Board-scoped labels give each board its own vocabulary without cross-contamination
  • Boards are the materialization of dual-track agile: Discovery and Delivery living side by side

What Boards Are

Status: LIVE (v0.14.0)

The Pipeline organizes work into boards — named containers that give the captain and crew dedicated work tracks for parallel threads of activity. Boards are the materialization of dual-track agile: Discovery and Delivery living side by side in the same pipeline, each with its own issue set, its own label vocabulary, and its own kanban view.

A board is a self-contained work track. It has its own issues, its own labels, and its own kanban view. When the captain navigates to a board, they see only that board’s work — no noise from other tracks.

Universe Pipeline
|
+-- Intake Board (system default -- cannot delete or rename)
| +-- Unsorted and cross-cutting issues
| |
| +-- Triage creates issues directly on target boards (not moved -- placed)
|
+-- Discovery Board (hypothesis exploration)
| +-- Labels: hypothesis / validated / no-signal / parked
|
+-- Delivery Board (execution)
+-- Labels: blocked / ready / QA / scope-creep

The Intake Board

Every universe starts with one board: Intake. It is the system-generated default — the Pipeline’s physical front gate. When an issue is created without a board assignment, it lands in Intake automatically.

Intake has special rules:

  • Cannot be renamed. It is always “Intake.”
  • Cannot be edited. Its configuration is system-managed.
  • Cannot be deleted. It exists from universe initialization to heat death.
  • isDefault = true — the only board with this flag.

Intake is not a failure state. It is a legitimate work track — for quick wins, cross-cutting concerns, and anything that hasn’t earned a named track yet.

“The Intake Board isn’t a failure state. It’s a legitimate work track — for quick wins, cross-cutting concerns, and anything that hasn’t earned a named track yet. But when you know what it is, give it a home.” — Sal


Named Boards

Named boards are created by the captain: Discovery, Delivery, Design Sprint, Hardening. Each is a self-contained work track with its own:

  • Issue set — issues placed on this board at creation time
  • Label vocabulary — board-scoped labels that exist only within this board
  • Kanban view — the board’s own visual representation of work state

Named boards have no system restrictions beyond the global rules: they can be renamed, updated, and deleted. Deleting a named board sets its issues’ board_id to null.


Issue Placement Is Permanent

board_id is immutable after creation. An issue belongs to one board for its entire lifecycle. The Pipeline does not shuffle cards between tracks mid-game.

This is a deliberate architectural constraint. When an issue is created on the Delivery board, it stays on the Delivery board — through backlog, in-progress, completed, and cancelled. The board is the issue’s home. Triage does not move issues; triage creates issues on the correct board.


Board-Scoped Labels

Labels are defined at the board level and exist only within that board — no cross-contamination. Discovery’s taxonomy stays clean for research classification. Delivery’s taxonomy stays clean for execution state. The vocabularies never collide.

Each label has:

  • Name — the label’s display text
  • Color — hex color for visual identification

Labels are the board’s own vocabulary. They are not project-scoped tags (which live in projectTags). They are board-scoped — tighter, more tactical, specific to the work track’s classification needs.


Boards and Streams

Boards are the organizational layer that will integrate with Streams (v0.11.0). When Streams land, each board will be associable with a stream — the Discovery Board maps to the Discovery Stream, the Delivery Board to the Delivery Stream. For now, boards are independent containers that visually and organizationally parallel the planned Stream architecture.

The relationship, when complete:

LayerWhat It IsRelationship
StreamStrategic throughput channel — organizational, multi-board, long-durationContains boards; governs the macro direction
BoardTactical work track — concrete, kanban-able, label-scoped, immutable placementLives within a stream; the day-to-day working surface
IssueDelta — permanently placed on a board, optionally scoped to a releaseCreated on a board; never moves

Issue Types

The fundamental unit of change. Creating an issue is declaring that the universe should be different.

TypeCodeMeaning
ExpansionexpansionNew features — the universe grows
CorrectioncorrectionBug fixes — the universe corrects itself
RefinementrefinementPolish — the universe becomes more itself
MaintenancemaintenanceTech debt — the universe maintains its structural integrity

Every issue contains:

  • The Vector (The Why) — Strategic direction. Owned by Margot and Harlan.
  • The Spec (The What) — Architectural + experiential requirements. Negotiated by Kael and Wren.
  • The Payload (The Code) — The actual change.
  • The Trajectory (The Timeline) — Sal’s calculation of transit time.

MCP Tools — Boards

ToolPurpose
list_boardsList all boards in a universe — Intake first, then by position
create_boardCreate a named work track (Discovery, Delivery, etc.)
update_boardRename or update a board — cannot update Intake
delete_boardRemove a board — cannot delete Intake
create_board_labelDefine a label in a board’s vocabulary (name + color)
delete_board_labelRemove a label from a board’s vocabulary

MCP Tools — Issues

ToolPurpose
list_issuesQuery the issue backlog — filter by status, category, release, or tags
get_issueFetch a single issue with all fields
create_issueDeclare a new Delta — title, category, priority, acceptance criteria
update_issueModify issue fields — title, status, priority, dates, labels, tags
update_item_statusQuick status change with optional note
delete_issuePermanently remove an issue
get_issue_statsIssue counts grouped by status
get_issues_by_statusIssues grouped by status — kanban view
bulk_update_statusChange status on up to 50 issues at once
bulk_scope_issuesAssign multiple issues to a release
bulk_assign_issuesAssign user or agents to multiple issues
list_issue_notesFetch all notes on an issue
add_issue_noteAdd a timestamped note — decisions, context, completion reports
update_issue_noteModify existing note content
delete_issue_noteRemove a note
search_notesFull-text search across all issue notes in the project
list_issue_tasksList sub-tasks on an issue
create_issue_taskAdd a sub-task to an issue
update_issue_taskModify a sub-task (title, status, assignee)
complete_issue_taskMark a sub-task done
delete_issue_taskRemove a sub-task
get_issue_relationsList all dependency relations for an issue
add_issue_relationLink two issues (blocks / blocked_by / related_to / duplicate_of)
remove_issue_relationRemove a dependency relation

Implementation

PackageDescription
apps/appBoards API (src/routes/api/v1/boards.ts), pipeline lifecycle (src/lib/pipeline-lifecycle.ts), client pages (board-detail.tsx, universe-pipeline.tsx)
packages/sdkTypeScript SDK — boards resource (resources/boards.ts)
packages/mcpMCP server — 6 board tools (tools/boards.ts)