Compare commits
2 Commits
5a8a91ecf7
...
727274728f
| Author | SHA1 | Date | |
|---|---|---|---|
| 727274728f | |||
| befb480285 |
+9
-22
@@ -10,29 +10,25 @@ This file tracks all major tracks for the project. Each track has its own detail
|
||||
|
||||
### Architecture & Backend
|
||||
|
||||
1. [x] **Track: External MCP Server Support**
|
||||
*Link: [./tracks/external_mcp_support_20260308/](./tracks/external_mcp_support_20260308/)*
|
||||
*Goal: Add support for external MCP servers (Local Stdio and Remote SSE/WS) with flexible configuration and lifecycle management (including auto-start on project load).*
|
||||
|
||||
2. [ ] **Track: RAG Support**
|
||||
1. [ ] **Track: RAG Support**
|
||||
*Link: [./tracks/rag_support_20260308/](./tracks/rag_support_20260308/)*
|
||||
*Goal: Add support for RAG (Retrieval-Augmented Generation) using local vector stores (Chroma/Qdrant), native vendor retrieval, and external RAG APIs. Implement indexing pipeline and retrieval UI.*
|
||||
|
||||
3. [x] **Track: Agent Tool Preference & Bias Tuning**
|
||||
2. [x] **Track: Agent Tool Preference & Bias Tuning**
|
||||
*Link: [./tracks/tool_bias_tuning_20260308/](./tracks/tool_bias_tuning_20260308/)*
|
||||
*Goal: Influence agent tool selection via a weighting system. Implement semantic nudges in tool descriptions and a dynamic "Tooling Strategy" section in the system prompt. Includes GUI badges and sliders for weight adjustment.*
|
||||
|
||||
4. [x] **Track: Expanded Hook API & Headless Orchestration**
|
||||
3. [x] **Track: Expanded Hook API & Headless Orchestration**
|
||||
*Link: [./tracks/hook_api_expansion_20260308/](./tracks/hook_api_expansion_20260308/)*
|
||||
*Goal: Maximize internal state exposure and provide comprehensive control endpoints (worker spawn/kill, pipeline pause/resume, DAG mutation) via the Hook API. Implement WebSocket-based real-time event streaming.*
|
||||
|
||||
5. [ ] **Track: Codebase Audit and Cleanup**
|
||||
4. [ ] **Track: Codebase Audit and Cleanup**
|
||||
*Link: [./tracks/codebase_audit_20260308/](./tracks/codebase_audit_20260308/)*
|
||||
|
||||
6. [ ] **Track: Expanded Test Coverage and Stress Testing**
|
||||
5. [ ] **Track: Expanded Test Coverage and Stress Testing**
|
||||
*Link: [./tracks/test_coverage_expansion_20260309/](./tracks/test_coverage_expansion_20260309/)*
|
||||
|
||||
7. [ ] **Track: Beads Mode Integration**
|
||||
6. [ ] **Track: Beads Mode Integration**
|
||||
*Link: [./tracks/beads_mode_20260309/](./tracks/beads_mode_20260309/)*
|
||||
*Goal: Integrate Beads (git-backed graph issue tracker) as an alternative backend for MMA implementation tracks and tickets.*
|
||||
|
||||
@@ -103,18 +99,6 @@ This file tracks all major tracks for the project. Each track has its own detail
|
||||
|
||||
---
|
||||
|
||||
### Path Configuration
|
||||
|
||||
1. [x] **Track: Project-Specific Conductor Directory**
|
||||
*Link: [./tracks/project_conductor_dir_20260308/](./tracks/project_conductor_dir_20260308/)*
|
||||
*Goal: Make conductor directory per-project. Each project TOML can specify custom conductor dir for isolated track/state management.*
|
||||
|
||||
2. [x] **Track: GUI Path Configuration in Context Hub**
|
||||
*Link: [./tracks/gui_path_config_20260308/](./tracks/gui_path_config_20260308/)*
|
||||
*Goal: Add path configuration UI to Context Hub. Allow users to view and edit configurable paths directly from the GUI.*
|
||||
|
||||
---
|
||||
|
||||
### Manual UX Controls
|
||||
|
||||
1. [x] **Track: Saved System Prompt Presets**
|
||||
@@ -168,6 +152,9 @@ This file tracks all major tracks for the project. Each track has its own detail
|
||||
|
||||
### Completed / Archived
|
||||
|
||||
- [x] **Track: External MCP Server Support** (Archived 2026-03-12)
|
||||
- [x] **Track: Project-Specific Conductor Directory** (Archived 2026-03-12)
|
||||
- [x] **Track: GUI Path Configuration in Context Hub** (Archived 2026-03-12)
|
||||
- [x] **Track: True Parallel Worker Execution (The DAG Realization)**
|
||||
- [x] **Track: Deep AST-Driven Context Pruning (RAG for Code)**
|
||||
- [x] **Track: Visual DAG & Interactive Ticket Editing**
|
||||
|
||||
@@ -48,6 +48,13 @@ from src.paths import get_config_path
|
||||
|
||||
CONFIG_PATH = get_config_path()
|
||||
|
||||
def _clean_nones(data: Any) -> Any:
|
||||
if isinstance(data, dict):
|
||||
return {k: _clean_nones(v) for k, v in data.items() if v is not None}
|
||||
elif isinstance(data, list):
|
||||
return [_clean_nones(v) for v in data if v is not None]
|
||||
return data
|
||||
|
||||
def load_config() -> dict[str, Any]:
|
||||
with open(CONFIG_PATH, "rb") as f:
|
||||
return tomllib.load(f)
|
||||
@@ -55,6 +62,7 @@ def load_config() -> dict[str, Any]:
|
||||
def save_config(config: dict[str, Any]) -> None:
|
||||
import tomli_w
|
||||
import sys
|
||||
config = _clean_nones(config)
|
||||
sys.stderr.write(f"[DEBUG] Saving config. Theme: {config.get('theme')}\n")
|
||||
sys.stderr.flush()
|
||||
with open(CONFIG_PATH, "wb") as f:
|
||||
|
||||
+5
-1
@@ -200,7 +200,7 @@ def live_gui() -> Generator[tuple[subprocess.Popen, str], None, None]:
|
||||
temp_workspace.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
# Create minimal project files to avoid cluttering root
|
||||
(temp_workspace / "manual_slop.toml").write_text("[project]\nname = 'TestProject'\n", encoding="utf-8")
|
||||
(temp_workspace / "manual_slop.toml").write_text("[project]\nname = 'TestProject'\n\n[conductor]\ndir = 'conductor'\n", encoding="utf-8")
|
||||
(temp_workspace / "conductor" / "tracks").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
# Create a local config.toml in temp_workspace
|
||||
@@ -209,6 +209,10 @@ def live_gui() -> Generator[tuple[subprocess.Popen, str], None, None]:
|
||||
'projects': {
|
||||
'paths': [str((temp_workspace / 'manual_slop.toml').absolute())],
|
||||
'active': str((temp_workspace / 'manual_slop.toml').absolute())
|
||||
},
|
||||
'paths': {
|
||||
'logs_dir': str((temp_workspace / "logs").absolute()),
|
||||
'scripts_dir': str((temp_workspace / "scripts" / "generated").absolute())
|
||||
}
|
||||
}
|
||||
import tomli_w
|
||||
|
||||
Reference in New Issue
Block a user