Tasks — narvi
New Task
| ID | Title | Status | P | Labels | Deps |
|---|---|---|---|---|---|
narvi-226 |
Phase 2 acceptance | open | 1 | phase2 | 5→ / ←0 |
|
Start narvi serve, open the dashboard in a browser. Verify: (a) Narvi's own timeline shows Phase 0 and Phase 1 work with correct task durations, (b) the dependency graph for Phase 2 renders with status-colored nodes, (c) clicking a completed task shows its detail page with bead comments ([summary], [tests], [review], [adversarial], [runtime]) and the activity trace from the task log. Update docs/usage.md with documentation for the new timeline and graph views. |
|||||
narvi-bdo |
Cache headers and incremental regeneration | open | 1 | phase2 | 2→ / ←1 |
|
Add content hashes to all generated pages (as HTML comment and in site/manifest.json). Configure the static file server to set ETag and Cache-Control headers from these hashes. Verify that unchanged pages are not re-served. See design doc §9.2, implementation plan Phase 2 item 5. |
|||||
narvi-du7 |
Timeline page generator | closed | 1 | phase2 | 1→ / ←2 |
|
Render the timeline event stream as a horizontal SVG chart. Task bars from start to completion, colored by status (green=done, blue=in-progress, red=blocked, gray=waiting). Phase grouping as collapsible rows. Generate day/week/month views as separate pages. Output to site/<project>/timeline.html. See design doc §9.4, implementation plan Phase 2 item 2. |
|||||
narvi-h3l |
Task detail enrichment | closed | 1 | phase2 | 0→ / ←1 |
|
Extend the task detail page generator (from phase1) to parse stream-json task logs from .narvi/task-logs/<bead-id>.jsonl at render time. Produce a filtered activity view showing tool calls (Bash, Read, Write, Edit, Agent) with timestamps. Show the last N actions. See implementation plan Phase 2 item 4. |
|||||
narvi-p65 |
Graph page generator | closed | 1 | phase2 | 0→ / ←2 |
|
Read bd graph --json. Lay out the dependency DAG using a topological sort with layer assignment (no external layout library). Render as SVG with status-colored nodes, dependency edges, and critical path highlighting. Clickable nodes link to task detail pages. Output to site/<project>/graph.html. See design doc §9.4, implementation plan Phase 2 item 3. |
|||||
narvi-4f1 |
Timeline data engine | closed | 1 | phase2 | 0→ / ←2 |
|
Merge bead timestamps (created/started/completed), git log (commits with bead IDs in message), and .narvi/events.jsonl into a sorted event stream per project. Python module narvi/timeline.py. See design doc §9.2, implementation plan Phase 2 item 1. |
|||||
narvi-pws |
Phase 1 acceptance: dashboard milestone | closed | 1 | phase1 | 4→ / ←0 |
|
End-to-end verification that Phase 1 is done. Refs: design-v3 §12 (Phase 1 milestone). Acceptance criteria 1. Start the server via 'narvi serve'. 2. Open the briefing page and see Narvi's own project card with accurate task counts. 3. Create a bead from the browser. 4. Verify it appears on the task list after automatic page regeneration. |
|||||
narvi-1oe |
File-system watchers on .beads/ to trigger regeneration | closed | 1 | phase1 | 3→ / ←1 |
|
Watch each registered project's .beads/ directory; on change, trigger the site generator to regenerate affected pages. Runs inside the 'narvi serve' process. Refs: design-v3 §9.2 (incremental regen triggers). |
|||||
narvi-53l |
Bead CRUD API: proxy to bd, trigger regeneration | closed | 1 | phase1 | 3→ / ←1 |
|
API endpoints that create/update/delete beads by shelling out to bd, then trigger incremental site regeneration for affected pages. Refs: design-v3 §9.1 (API). |
|||||
narvi-6ad |
Task list page generation | closed | 1 | phase1 | 2→ / ←1 |
|
Generate site/<project>/tasks.html with the full bead list (filterable) and per-task detail including bead comments and runtime. Refs: design-v3 §9.4 (Project — Tasks). |
|||||
narvi-lk9 |
narvi serve daemon command | closed | 1 | phase1 | 1→ / ←1 |
|
Add 'narvi serve' CLI subcommand that starts the FastAPI server and the file-system watchers. Refs: design-v3 §7.1 (CLI). |
|||||
narvi-nd9 |
Static file server + thin API (FastAPI) | closed | 1 | phase1 | 1→ / ←2 |
|
FastAPI app serving ~/.config/narvi/site/ as static files and exposing the minimal API surface (CRUD, orchestration control, regen trigger, Matrix webhook). No WebSockets. Refs: design-v3 §9.1. |
|||||
narvi-nwp |
Briefing page generation | closed | 1 | phase1 | 3→ / ←1 |
|
Generate site/index.html with per-project cards: phase progress, since-last-visit delta, active orchestration, next ready tasks, controls. Refs: design-v3 §9.4 (Briefing). |
|||||
narvi-wxt |
Site generator framework: base layout, CSS, incremental regen | closed | 1 | phase1 | 0→ / ←4 |
|
Framework that renders pages using a shared base layout, writes to ~/.config/narvi/site/, tracks content hashes for incremental regeneration, and emits site/manifest.json for client-side conditional fetching. Refs: design-v3 §9.2. |
|||||
narvi-jtt |
Beads reader: parse bd --json output into dataclasses | closed | 1 | phase1 | 0→ / ←3 |
|
Module that shells out to bd list --json, bd show --json, bd graph --json, bd comments --json for a given project directory. Parses output into Python dataclasses consumable by the site generator and API. Refs: design-v3 §9, implementation-plan §Phase 1 beads-reader. |
|||||
narvi-kmw |
Project registry: register/list/unregister | closed | 1 | phase1 | 0→ / ←3 |
|
Implement a project registry stored under ~/.config/narvi/ that tracks which projects Narvi manages. Provides register(path), list(), unregister(path). Refs: design-v3 §9.2 (config directory layout). |
|||||