diff --git a/.scratch/distributed-inference-network/issues/15-ralph-agent-agnostic-status-aware.md b/.scratch/distributed-inference-network/issues/15-ralph-agent-agnostic-status-aware.md index f43ad2d..61ed493 100644 --- a/.scratch/distributed-inference-network/issues/15-ralph-agent-agnostic-status-aware.md +++ b/.scratch/distributed-inference-network/issues/15-ralph-agent-agnostic-status-aware.md @@ -138,3 +138,41 @@ The OpenRouter model is set via `--model` (e.g. `openai/gpt-4o`, `mistralai/mist - `ralph_progress.py run-next --agent custom --agent-cmd ./my-agent.sh` runs a task via custom script - `python -m pytest` passes from repo root - Commit only this story's changes + +--- + +## Part 4: Per-story metadata in dashboard + +Every story in the dashboard gets an optional second line showing what is known about it: + +``` +✓ US-012 12 — Real PyTorch model backend + codex · done · "Added model_backend.py with bitsandbytes NF4 support" +⚡ US-014 14 — Tracker-as-first-layer-node + codex · in-progress · worktree: ../AI-worktree-us-014 +→ US-015 15 — Ralph agent-agnostic runner + claude · in-progress · worktree: ../AI-worktree-us-015 +``` + +### Sources + +| Data | Source | +|------|--------| +| Active worktree path | `git worktree list --porcelain` — match branches `feat/` | +| Agent (active story) | `.ralph-tui/agent-config.json` → `agent` field | +| Agent (completed story) | `.ralph-tui/session.json` → `agentPlugin`; or `completionNotes` text | +| Last output summary | `story.completionNotes` (done); latest `git log -1 --format=%s feat/` (worktree); last lines of most recent `.ralph-tui/iterations/__.log` (in-progress) | + +### Behaviour + +- Metadata line is omitted if there is nothing to show (no agent, no worktree, no notes) +- Default: shown (verbose). `--compact` flag suppresses it for a tighter one-line-per-story view +- `_active_worktrees() -> dict[story_id, rel_path]` helper, called once per dashboard render +- `_story_meta(story, worktrees, session) -> str | None` helper returns the joined metadata string + +### Additional acceptance criteria + +- `ralph_progress.py show` displays worktree path for any story whose branch exists as `feat/` +- Agent name appears next to in-progress and recently-completed stories +- `completionNotes` from prd.json appears as the summary for done stories +- `--compact` suppresses metadata lines