chore(conductor): Add new track 'Beads Mode Integration'

This commit is contained in:
2026-03-09 23:53:02 -04:00
parent 3e531980d4
commit 73f6be789a
5 changed files with 83 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
# Track beads_mode_20260309 Context
- [Specification](./spec.md)
- [Implementation Plan](./plan.md)
- [Metadata](./metadata.json)

View File

@@ -0,0 +1,8 @@
{
"track_id": "beads_mode_20260309",
"type": "feature",
"status": "new",
"created_at": "2026-03-09T23:45:00Z",
"updated_at": "2026-03-09T23:45:00Z",
"description": "Add support for beads as a git-backed graph issue tracker alternative to native MMA tracking."
}

View File

@@ -0,0 +1,27 @@
# Implementation Plan: Beads Mode Integration
## Phase 1: Environment & Core Configuration
- [ ] Task: Audit existing `AppController` and `project_manager.py` for project mode handling.
- [ ] Task: Write Tests: Verify `manual_slop.toml` can parse and store the `execution_mode` (native/beads).
- [ ] Task: Implement: Add `execution_mode` toggle to `AppController` state and persistence logic.
- [ ] Task: Conductor - User Manual Verification 'Phase 1: Environment & Core Configuration' (Protocol in workflow.md)
## Phase 2: Beads Backend & Tooling
- [ ] Task: Write Tests: Verify a basic Beads/Dolt repository can be initialized and queried via a Python wrapper.
- [ ] Task: Implement: Create `src/beads_client.py` to interface with the `bd` CLI or direct Dolt SQL backend.
- [ ] Task: Write Tests: Verify agents can create and update Beads using a mock Beads environment.
- [ ] Task: Implement: Add a suite of MCP tools (`bd_create`, `bd_update`, `bd_ready`, `bd_list`) to `src/mcp_client.py`.
- [ ] Task: Conductor - User Manual Verification 'Phase 2: Beads Backend & Tooling' (Protocol in workflow.md)
## Phase 3: GUI Integration & Visual DAG
- [ ] Task: Write Tests: Verify the Visual DAG can load node data from a non-markdown source (Beads graph).
- [ ] Task: Implement: Refactor `_render_mma_dashboard` and the DAG renderer to pull from the active mode's backend.
- [ ] Task: Implement: Add a "Beads" tab to the MMA Dashboard for browsing the raw Dolt-backed issue graph.
- [ ] Task: Implement: Update Tier Streams to include metadata for Beads-specific status changes.
- [ ] Task: Conductor - User Manual Verification 'Phase 3: GUI Integration & Visual DAG' (Protocol in workflow.md)
## Phase 4: Context Optimization & Polish
- [ ] Task: Write Tests: Verify that "Compaction" correctly summarizes completed Beads into a concise text block.
- [ ] Task: Implement: Add Compaction logic to the context aggregation pipeline for Beads Mode.
- [ ] Task: Implement: Final UI polish, icons for Bead nodes, and robust error handling for missing `dolt`/`bd` binaries.
- [ ] Task: Conductor - User Manual Verification 'Phase 4: Context Optimization & Polish' (Protocol in workflow.md)

View File

@@ -0,0 +1,39 @@
# Specification: Beads Mode Integration
## Overview
Introduce "Beads Mode" as a first-class, project-specific alternative to the current markdown-based implementation tracking (Native Mode). By integrating with [Beads](https://github.com/steveyegge/beads), Manual Slop will gain a distributed, git-backed graph issue tracker that allows Implementation Tracks and Tickets to be versioned alongside the codebase using Dolt.
## Functional Requirements
- **Execution Modes:**
- **Native Mode (Default):** Continues using `conductor/tracks.md` and `<track_id>/plan.md` for task management.
- **Beads Mode:** Uses a local `.beads` repository (backed by Dolt) to store the task graph.
- **Project-Level Configuration:**
- Add a `mode = "native" | "beads"` toggle to the `[project]` section of `manual_slop.toml`.
- This setting is intended to be set during project initialization and remain stable.
- **Data Mapping:**
- **Tracks as Epics:** Each implementation track maps to a top-level Bead.
- **Tickets as Sub-beads:** Plan tasks and sub-tasks map to hierarchical Beads (using dot notation).
- **Dependencies:** Map task dependencies to Beads' semantic relationships (`blocks`, `relates_to`).
- **Agent Integration:**
- **Beads Toolset:** Implement a new MCP toolset (e.g., `bd_create`, `bd_update`, `bd_ready`, `bd_list`) that allows agents to interact directly with the Beads graph.
- **Compaction Logic:** Utilize Beads' compaction/summarization feature to feed agents a concise summary of completed work while keeping the context window focused on the active task.
- **GUI Integration (MMA Dashboard):**
- **Augmented Visual DAG:** Ensure the `imgui-node-editor` can visualize nodes from the Beads graph when in Beads Mode.
- **Beads Tab:** Add a dedicated "Beads" panel/tab within the Operations Hub or MMA Dashboard to browse the Dolt-backed graph.
- **Stream Integration:** Tier streams should display Bead IDs and status updates in real-time.
## Non-Functional Requirements
- **Prerequisites:** Users must have the `bd` CLI and `dolt` installed to use Beads Mode.
- **Sync Integrity:** Ensure the GUI state remains synchronized with the local Dolt database.
- **Performance:** Browsing large task graphs must not impact GUI responsiveness.
## Acceptance Criteria
- [ ] A project can be toggled to "Beads Mode" in its TOML configuration.
- [ ] Creating a new track in Beads Mode initializes a corresponding Epic Bead.
- [ ] The Visual DAG correctly renders nodes and links queried from the Beads backend.
- [ ] Agents can successfully query for "ready" tasks and update their status using Beads-specific tools.
- [ ] Completed tasks are automatically summarized using the compaction protocol before being sent to agent context.
## Out of Scope
- Hosting a central Beads/Dolt server (focus is on local distributed tracking).
- Converting existing Native Mode projects to Beads Mode automatically (initial implementation focus).