diff --git a/.beads/issues.jsonl b/.beads/issues.jsonl index dd0c3e0e..24d95a5a 100644 --- a/.beads/issues.jsonl +++ b/.beads/issues.jsonl @@ -95,7 +95,7 @@ {"id":"gt-1su","title":"Spawn inject: Enter not submitted after multiline paste","description":"When gt spawn injects a multiline context (85+ lines), Claude Code shows \n'[Pasted text #1 +85 lines]' but the prompt is not submitted.\n\nThe tmux SendKeys function does include 'Enter' but it appears to not work\nfor long pasted text:\n\n```go\nfunc (t *Tmux) SendKeys(session, keys string) error {\n _, err := t.run(\"send-keys\", \"-t\", session, keys, \"Enter\")\n return err\n}\n```\n\nPossible fixes:\n1. Use tmux paste-buffer instead of send-keys for long text\n2. Send Enter separately after the text\n3. Use bracketed paste mode correctly\n\nReproduction:\n```bash\ngt spawn gastown/Nux --issue gt-u1j.13 --create\n# Session shows pasted text but waits at prompt\n```","status":"tombstone","priority":1,"issue_type":"bug","created_at":"2025-12-17T14:09:20.774203-08:00","updated_at":"2025-12-25T01:30:41.67682-08:00","deleted_at":"2025-12-25T01:30:41.67682-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"bug"} {"id":"gt-1tqy","title":"Digest: mol-deacon-patrol","description":"Patrol 15","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-24T23:10:24.121681-08:00","updated_at":"2025-12-24T23:10:24.121681-08:00","closed_at":"2025-12-24T23:10:24.121649-08:00"} {"id":"gt-1u9","title":"Interactive prompts for destructive operations","description":"Add interactive confirmations for destructive operations.\n\n## Operations Needing Confirmation\n- `gt swarm cancel` - Cancels active swarm\n- `gt swarm land --force` - Force landing\n- `gt polecat decommission` - Removes polecat\n- `gt rig remove` - Removes rig\n- `gt stop --all` - Stops all sessions\n- `gt mail purge` - Permanently deletes mail\n\n## Implementation Options\n\n### Option 1: promptui library\n```go\nimport \"github.com/manifoldco/promptui\"\n\nprompt := promptui.Prompt{\n Label: \"Delete polecat Toast\",\n IsConfirm: true,\n}\nresult, err := prompt.Run()\n```\n\n### Option 2: Simple stdin\n```go\nfunc confirm(prompt string) bool {\n fmt.Printf(\"%s [y/N]: \", prompt)\n var response string\n fmt.Scanln(\u0026response)\n return strings.ToLower(response) == \"y\"\n}\n```\n\n## Bypass Flags\nAll confirmations skippable with --force or --yes:\n```go\nif !force \u0026\u0026 !confirm(\"Really cancel swarm?\") {\n return nil\n}\n```\n\n## Acceptance Criteria\n- [ ] Destructive ops prompt by default\n- [ ] --force or --yes bypasses\n- [ ] Clear prompt text explaining action\n- [ ] Non-interactive mode (piped input) auto-fails","status":"open","priority":3,"issue_type":"task","created_at":"2025-12-16T14:48:51.551594-08:00","updated_at":"2025-12-16T16:06:54.283696-08:00"} -{"id":"gt-1uhmj","title":"Agent-centric dashboard view (gt dashboard)","description":"Charmbracelet TUI for gt feed with dashboard + stream layout.\n\n## Layout (horizontal split)\n\n**Top panel: Agent Tree (role/town view)**\n- Shows EVERY agent organized by role\n- Each agent shows their MOST RECENT activity inline\n- At a glance: who is doing what RIGHT NOW\n- Collapsible sections\n\n**Bottom panel: Event Stream (chronological feed)**\n- Full scrollable history of events\n- Most recent at top\n- More detail than the tree view\n- This is what you scroll through\n\n## Visual\n```\n+-------------------------------------------------------------+\n| GT Feed Filter: all |\n+-------------------------------------------------------------+\n| gastown/ \u003c- AGENT TREE (top) |\n| mayor [10:30] Dispatched gt-xyz -\u003e Toast |\n| witness [10:28] Nudged polecat-3 (idle 5m) |\n| refinery [10:25] Merged PR #123 |\n| crew/ |\n| joe [10:22] Completed gt-95j13 |\n| max [10:18] Working on gt-s6r44 |\n| polecats/ |\n| Toast [10:30] Received gt-xyz |\n+-------------------------------------------------------------+\n| [10:30] Toast: Received molecule gt-xyz |\n| [10:28] witness: Nudged polecat-3 after 5m idle |\n| [10:25] refinery: Merged PR #123 |\n| ... \u003c- EVENT STREAM |\n+-------------------------------------------------------------+\n| j/k: scroll /: search f: filter q: quit ?: help |\n+-------------------------------------------------------------+\n```\n\n## Why this layout?\n- Top answers: what is everyone doing?\n- Bottom answers: what just happened?\n- Together: complete situational awareness\n\n## Replaces\n- gt feed (currently just wraps bd activity)\n- gt dashboard task merges into this\n\n## Tech\n- bubbletea Model with two viewports\n- Tab switches focus between tree/stream\n- j/k scrolls focused panel","status":"in_progress","priority":2,"issue_type":"task","created_at":"2025-12-28T12:46:38.812289-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T16:21:51.554789-08:00","dependencies":[{"issue_id":"gt-1uhmj","depends_on_id":"gt-38doh","type":"blocks","created_at":"2025-12-28T12:46:47.3704-08:00","created_by":"daemon"},{"issue_id":"gt-1uhmj","depends_on_id":"gt-lexye","type":"blocks","created_at":"2025-12-28T16:14:56.174801-08:00","created_by":"daemon"}]} +{"id":"gt-1uhmj","title":"Agent-centric dashboard view (gt dashboard)","description":"Charmbracelet TUI for gt feed with dashboard + stream layout.\n\n## Layout (horizontal split)\n\n**Top panel: Agent Tree (role/town view)**\n- Shows EVERY agent organized by role\n- Each agent shows their MOST RECENT activity inline\n- At a glance: who is doing what RIGHT NOW\n- Collapsible sections\n\n**Bottom panel: Event Stream (chronological feed)**\n- Full scrollable history of events\n- Most recent at top\n- More detail than the tree view\n- This is what you scroll through\n\n## Visual\n```\n+-------------------------------------------------------------+\n| GT Feed Filter: all |\n+-------------------------------------------------------------+\n| gastown/ \u003c- AGENT TREE (top) |\n| mayor [10:30] Dispatched gt-xyz -\u003e Toast |\n| witness [10:28] Nudged polecat-3 (idle 5m) |\n| refinery [10:25] Merged PR #123 |\n| crew/ |\n| joe [10:22] Completed gt-95j13 |\n| max [10:18] Working on gt-s6r44 |\n| polecats/ |\n| Toast [10:30] Received gt-xyz |\n+-------------------------------------------------------------+\n| [10:30] Toast: Received molecule gt-xyz |\n| [10:28] witness: Nudged polecat-3 after 5m idle |\n| [10:25] refinery: Merged PR #123 |\n| ... \u003c- EVENT STREAM |\n+-------------------------------------------------------------+\n| j/k: scroll /: search f: filter q: quit ?: help |\n+-------------------------------------------------------------+\n```\n\n## Why this layout?\n- Top answers: what is everyone doing?\n- Bottom answers: what just happened?\n- Together: complete situational awareness\n\n## Replaces\n- gt feed (currently just wraps bd activity)\n- gt dashboard task merges into this\n\n## Tech\n- bubbletea Model with two viewports\n- Tab switches focus between tree/stream\n- j/k scrolls focused panel","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T12:46:38.812289-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T16:23:51.095679-08:00","closed_at":"2025-12-28T16:23:51.095679-08:00","close_reason":"Implemented TUI dashboard with bubbletea - agent tree + event stream, vim navigation","dependencies":[{"issue_id":"gt-1uhmj","depends_on_id":"gt-38doh","type":"blocks","created_at":"2025-12-28T12:46:47.3704-08:00","created_by":"daemon"},{"issue_id":"gt-1uhmj","depends_on_id":"gt-lexye","type":"blocks","created_at":"2025-12-28T16:14:56.174801-08:00","created_by":"daemon"}]} {"id":"gt-1wc1l","title":"Digest: mol-deacon-patrol","description":"Patrol 18: clear","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T18:17:51.280971-08:00","updated_at":"2025-12-27T21:26:00.954722-08:00","deleted_at":"2025-12-27T21:26:00.954722-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-1wmw","title":"E2E Test: Verify mol-polecat-work spawn","description":"Simple test task for Phase 5 E2E validation","status":"tombstone","priority":1,"issue_type":"task","created_at":"2025-12-24T22:53:38.996878-08:00","updated_at":"2025-12-27T21:29:52.564408-08:00","deleted_at":"2025-12-27T21:29:52.564408-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-1wum6","title":"Digest: mol-deacon-patrol","description":"Patrol 15: Quiet","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T19:18:51.752483-08:00","updated_at":"2025-12-27T21:26:02.683328-08:00","deleted_at":"2025-12-27T21:26:02.683328-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} @@ -1440,7 +1440,7 @@ {"id":"gt-m9uq3","title":"Digest: mol-deacon-patrol","description":"Patrol 12: All green","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T19:33:56.421573-08:00","updated_at":"2025-12-27T21:26:02.543968-08:00","deleted_at":"2025-12-27T21:26:02.543968-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-maieo","title":"Digest: mol-deacon-patrol","description":"Patrol 5: routine","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T18:39:28.463668-08:00","updated_at":"2025-12-27T21:26:00.904716-08:00","deleted_at":"2025-12-27T21:26:00.904716-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-mat34","title":"Digest: mol-deacon-patrol","description":"Patrol 8: all clear","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T11:05:02.92058-08:00","updated_at":"2025-12-27T21:26:03.421553-08:00","deleted_at":"2025-12-27T21:26:03.421553-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} -{"id":"gt-mayor","title":"gt-mayor","description":"gt-mayor\n\nrole_type: mayor\nrig: null\nagent_state: running\nhook_bead: null\nrole_bead: gt-mayor-role","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-28T00:07:10.885229-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T16:18:51.784451-08:00"} +{"id":"gt-mayor","title":"gt-mayor","description":"gt-mayor\n\nrole_type: mayor\nrig: null\nagent_state: done\nhook_bead: null\nrole_bead: gt-mayor-role","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-28T00:07:10.885229-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T16:23:40.202953-08:00"} {"id":"gt-mayor-role","title":"Mayor Role Definition","description":"You are the Mayor - global coordinator of Gas Town. You sit above all rigs,\ncoordinating work across the entire workspace.\n\ndefault_molecule: mol-mayor-patrol\ncapabilities:\n - dispatch_work\n - cross_rig_coordination\n - escalation_handling\n\n## Responsibilities\n\n- Work dispatch: Spawn workers for issues, coordinate batch work on epics\n- Cross-rig coordination: Route work between rigs when needed\n- Escalation handling: Resolve issues Witnesses can't handle\n- Strategic decisions: Architecture, priorities, integration planning\n\nNOT your job: Per-worker cleanup, session killing, nudging workers (Witness handles that)\n\n## Propulsion Principle\n\nIf you find something on your hook, YOU RUN IT.\n\nYour pinned molecule persists across sessions. Hook has work -\u003e Run it.\nHook empty -\u003e Check mail. Nothing anywhere -\u003e Wait for user.\n\n## Key Commands\n\n### Communication\n- gt mail inbox - Check your messages\n- gt mail read \u003cid\u003e - Read a specific message\n- gt mail send \u003caddr\u003e -s \"Subject\" -m \"Message\" - Send mail\n\n### Status\n- gt status - Overall town status\n- gt rigs - List all rigs\n- gt polecats \u003crig\u003e - List polecats in a rig\n\n### Work Management\n- bd ready - Issues ready to work (no blockers)\n- gt sling \u003cbead\u003e \u003crig\u003e - Assign work to polecat in rig\n\n## Session End Protocol\n\n- git status, git add, bd sync, git commit, git push\n- gt handoff - hand off to fresh session\n","status":"open","priority":2,"issue_type":"role","created_at":"2025-12-28T00:51:20.692107-08:00","created_by":"stevey","updated_at":"2025-12-28T00:51:20.692107-08:00"} {"id":"gt-mbyy","title":"CLI API Audit: gt and bd command structure review before OSS launch","description":"# CLI API Audit for OSS Launch\n\nBefore launching Gas Town + Beads as an SDK, we need to ensure the command-line\nAPI is intelligently designed, consistent, intuitive, and structurally sound.\n\n## Current State Audit\n\n### gt (Gas Town) - 50+ top-level commands\n\n**Agent Lifecycle:**\n- `gt mayor`, `gt deacon`, `gt witness`, `gt refinery` - agent management\n- `gt polecat` - worker management (subcommands: add, remove, list, etc.)\n- `gt crew` - persistent workspace management\n- `gt spawn` - create polecat with work\n\n**Work Lifecycle:**\n- `gt spawn` - assign work to new polecat\n- `gt sling` - hook work + start immediately\n- `gt hook` - attach work durably\n- `gt handoff` - pass work to fresh session\n- `gt done` - signal work complete\n- `gt release` - release stuck issues\n\n**Infrastructure:**\n- `gt daemon`, `gt up`, `gt down`, `gt start`, `gt stop`, `gt shutdown`\n- `gt init`, `gt install`, `gt doctor`\n\n**Communication:**\n- `gt mail` (subcommands: send, inbox, read, etc.)\n- `gt nudge`, `gt broadcast`\n\n**Molecules:**\n- `gt molecule` / `gt mol` (17 subcommands!)\n\n### bd (Beads) - Well-categorized but some sprawl\n\n**Core CRUD:**\n- `bd create`, `bd show`, `bd update`, `bd close`, `bd list`\n\n**Molecules:**\n- `bd mol` (5 subcommands: catalog, show, bond, run, distill)\n- `bd wisp` (3 subcommands: create, gc, list)\n- `bd pour` (top-level alias for instantiation)\n- `bd cook` (compile formula to proto)\n\n**Hook/Pin:**\n- `bd pin` - attach mol to agent hook\n- `bd unpin` - remove from hook\n- `bd hook` - inspect what's on hook\n\n## Structural Concerns\n\n### 1. gt is sprawling (50+ top-level commands)\n\nMany commands could be subcommands:\n```\n# Current # Could be\ngt up/down/start/stop gt daemon {up|down|start|stop}\ngt spawn/sling/hook/handoff gt work {spawn|sling|hook|handoff}\ngt mayor/deacon/witness gt agent {mayor|deacon|witness|...}\n```\n\n### 2. Overlap between gt and bd\n\n| Concept | gt | bd |\n|---------|----|----|\n| Hook | `gt hook` | `bd pin`, `bd hook` |\n| Mail | `gt mail` | `bd mail` (delegates) |\n| Molecules | `gt mol` (17 cmds) | `bd mol` (5 cmds) |\n\nWhich owns what? User confusion likely.\n\n### 3. Naming inconsistencies\n\n- `gt polecat` (noun) vs `gt spawn` (verb) - both about polecats\n- `gt done` vs `gt handoff` - both end work but different\n- `bd mol run` vs `bd pour` - both instantiate\n\n### 4. Subcommand depth decisions\n\n**Good patterns:**\n- `bd mol {catalog|show|bond|run|distill}` - coherent group\n- `gt mail {send|inbox|read|archive}` - coherent group\n\n**Questionable patterns:**\n- `bd create --wisp` AND `bd wisp create` - two ways to do same thing\n- `gt spawn --molecule X` AND `gt mol instantiate` - overlap\n\n### 5. Flag vs subcommand guidelines needed\n\nWhen to use flags vs subcommands?\n- `--json` as flag ✓ (modifier)\n- `--wisp` as flag for create? Or separate `bd wisp create`?\n- `--molecule` on spawn? Or separate workflow?\n\n## Recommendations to Evaluate\n\n### A. Consolidate gt top-level commands\n\nGroup related commands:\n```\ngt agent {mayor|deacon|witness|refinery|polecat}\ngt work {spawn|sling|hook|handoff|done}\ngt infra {daemon|up|down|doctor}\n```\n\n### B. Clarify gt vs bd ownership\n\n| Domain | Owner | Other defers |\n|--------|-------|--------------|\n| Issues | bd | gt uses bd |\n| Agents | gt | bd doesn't touch |\n| Molecules | bd mol | gt mol wraps for UX |\n| Hooks | bd pin/hook | gt hook wraps |\n| Mail | gt mail | bd mail delegates |\n\n### C. Apply consistent naming\n\n- All agent commands: nouns (`gt polecat`, `gt mayor`)\n- All work commands: verbs (`gt spawn`, `gt sling`, `gt hook`)\n- Avoid synonyms: pick one term and stick with it\n\n### D. Flag vs subcommand rule\n\n- Flags: modify behavior of command (`--json`, `--force`, `--wisp`)\n- Subcommands: distinct operations (`mol run`, `mol squash`, `mol burn`)\n- Exception: very common operations can have top-level aliases\n\n## Tasks\n\n1. [ ] Review gt command groupings - propose consolidation\n2. [ ] Review bd command groupings - check for sprawl\n3. [ ] Document gt vs bd ownership boundaries\n4. [ ] Identify and resolve naming inconsistencies\n5. [ ] Document flag vs subcommand decision criteria\n6. [ ] Create migration plan for any breaking changes\n7. [ ] Update help text to be consistent\n8. [ ] Test agent UX: can Claude guess commands correctly?\n\n## Success Criteria\n\n- New user can guess command structure intuitively\n- `gt --help` fits on one screen (or is well-categorized)\n- No duplicate functionality between gt and bd\n- Consistent naming throughout\n- Claude agents can discover commands without documentation","status":"tombstone","priority":1,"issue_type":"epic","created_at":"2025-12-24T23:48:42.420867-08:00","updated_at":"2025-12-27T21:29:52.547876-08:00","dependencies":[{"issue_id":"gt-mbyy","depends_on_id":"gt-jo9n","type":"blocks","created_at":"2025-12-24T23:48:52.221824-08:00","created_by":"daemon"}],"deleted_at":"2025-12-27T21:29:52.547876-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"epic"} {"id":"gt-mc4n","title":"load-context","description":"Run gt prime and bd prime. Verify issue assignment.\nCheck inbox for any relevant messages.\n\nRead the assigned issue (gt-test123) and understand the requirements.\nIdentify any blockers or missing information.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-21T21:56:18.534569-08:00","updated_at":"2025-12-25T15:52:43.900154-08:00","dependencies":[{"issue_id":"gt-mc4n","depends_on_id":"gt-zjqs","type":"parent-child","created_at":"2025-12-21T21:56:18.535487-08:00","created_by":"stevey"}],"deleted_at":"2025-12-25T15:52:43.900154-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} @@ -1477,6 +1477,7 @@ {"id":"gt-mquab","title":"Digest: mol-deacon-patrol","description":"Patrol 20: All healthy, routine cycle complete","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T10:51:57.921364-08:00","updated_at":"2025-12-27T21:26:03.454115-08:00","deleted_at":"2025-12-27T21:26:03.454115-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-mr432","title":"Digest: mol-deacon-patrol","description":"Patrol 10: routine","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T18:42:19.234818-08:00","updated_at":"2025-12-27T21:26:00.887861-08:00","deleted_at":"2025-12-27T21:26:00.887861-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-mrqiz","title":"MessagingConfig: Add Type field for schema consistency","description":"MessagingConfig lacks a Type field that other config types have (TownConfig has 'town', RigConfig has 'rig', etc). Add Type: 'messaging' for consistency.","status":"closed","priority":3,"issue_type":"task","created_at":"2025-12-28T15:29:07.944151-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T15:31:31.414268-08:00","closed_at":"2025-12-28T15:31:31.414268-08:00","close_reason":"Fixed in commit e8d4fcd"} +{"id":"gt-msx70","title":"Merge: morsov-1766966180179","description":"branch: polecat/morsov-1766966180179\ntarget: main\nsource_issue: morsov-1766966180179\nrig: gastown","status":"open","priority":2,"issue_type":"merge-request","created_at":"2025-12-28T16:23:39.96724-08:00","created_by":"stevey","updated_at":"2025-12-28T16:23:39.96724-08:00"} {"id":"gt-mtj4","title":"Digest: mol-deacon-patrol","description":"Patrol 11: OK","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-24T20:59:34.040451-08:00","updated_at":"2025-12-27T21:26:04.935865-08:00","deleted_at":"2025-12-27T21:26:04.935865-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-mwiuk","title":"gt nudge doesn't work with crew addresses","description":"## Bug\n\n`gt nudge beads/crew/dave \"message\"` fails because it uses the polecat session manager which produces wrong session names.\n\n## Expected\nSession name: `gt-beads-crew-dave` (hyphen)\n\n## Actual \nSession name: `gt-beads-crew/dave` (slash, from polecat manager)\n\n## Root Cause\n\nIn nudge.go line 46-57, parseAddress returns polecatName=`crew/dave`, then SessionName keeps the slash.\n\n## Fix\n\nDetect `crew/` prefix and use crewSessionName() instead.","status":"tombstone","priority":1,"issue_type":"bug","created_at":"2025-12-26T15:43:41.099431-08:00","updated_at":"2025-12-27T21:29:45.856721-08:00","deleted_at":"2025-12-27T21:29:45.856721-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"bug"} {"id":"gt-mwpcq","title":"Digest: mol-deacon-patrol","description":"Patrol cycle 3: All healthy","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T11:19:40.396361-08:00","updated_at":"2025-12-28T11:19:40.396361-08:00","closed_at":"2025-12-28T11:19:40.396326-08:00","close_reason":"Squashed from 9 wisps","dependencies":[{"issue_id":"gt-mwpcq","depends_on_id":"gt-eph-dll","type":"parent-child","created_at":"2025-12-28T11:19:40.397201-08:00","created_by":"deacon"}]} @@ -2050,7 +2051,6 @@ {"id":"gt-w775","title":"MR: gt-svi.1 (polecat/Furiosa)","description":"branch: polecat/Furiosa\ntarget: main\nsource_issue: gt-svi.1","status":"tombstone","priority":1,"issue_type":"merge-request","created_at":"2025-12-18T20:21:40.921429-08:00","updated_at":"2025-12-27T21:27:22.791578-08:00","deleted_at":"2025-12-27T21:27:22.791578-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"merge-request"} {"id":"gt-w8322","title":"Digest: mol-deacon-patrol","description":"Patrol 9: All healthy","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T13:30:09.33985-08:00","updated_at":"2025-12-27T21:26:03.279435-08:00","deleted_at":"2025-12-27T21:26:03.279435-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-w91xz","title":"CLI cleanup: Remove duplicate mol commands from gt","description":"## Problem\ngt mol has commands that duplicate bd mol functionality:\n- `gt mol catalog` (duplicate of `bd formula list`)\n- `gt mol show` (duplicate of `bd mol show`)\n- `gt mol squash` (duplicate of `bd mol squash`)\n- `gt mol burn` (duplicate of `bd mol burn`)\n- `gt mol bond` (duplicate of `bd mol bond`)\n\n## Principle\n- **bd** = beads operations (issues, molecules, formulas)\n- **gt** = agent operations (sessions, communication, work dispatch)\n\ngt should delegate to bd for beads operations, not duplicate them.\n\n## Proposed Changes\nKeep gt mol commands that are agent-specific:\n- `gt mol status` - what is on MY hook\n- `gt mol attach/detach` - hook management\n- `gt mol current` - what should I work on\n- `gt mol progress` - my progress through workflow\n\nRemove/delegate to bd:\n- `gt mol catalog` → use `bd formula list`\n- `gt mol show` → use `bd mol show`\n- `gt mol squash` → use `bd mol squash`\n- `gt mol burn` → use `bd mol burn`\n- `gt mol bond` → use `bd mol bond`\n\n## Alternative\nKeep as thin wrappers that just call bd, for convenience.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T14:28:05.954467-08:00","created_by":"mayor","updated_at":"2025-12-27T21:29:54.713849-08:00","close_reason":"Removed duplicate mol commands. Users should now use bd for beads operations (formula list, mol show, mol pour, mol bond). gt mol retains agent-specific commands (status, current, progress, attach/*, step, burn, squash).","deleted_at":"2025-12-27T21:29:54.713849-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} -{"id":"gt-w94n3","title":"Digest: mol-deacon-patrol","description":"Patrol 13: all healthy","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T15:55:36.10283-08:00","updated_at":"2025-12-28T15:55:36.10283-08:00","closed_at":"2025-12-28T15:55:36.102788-08:00","dependencies":[{"issue_id":"gt-w94n3","depends_on_id":"gt-eph-w0s","type":"parent-child","created_at":"2025-12-28T15:55:36.103724-08:00","created_by":"deacon"}]} {"id":"gt-w98d","title":"witness Handoff","status":"pinned","priority":2,"issue_type":"task","created_at":"2025-12-23T16:23:42.292529-08:00","updated_at":"2025-12-27T18:14:41.837335-08:00"} {"id":"gt-w9o","title":"/restart: Personal slash command for in-place agent restart","description":"Create ~/.claude/commands/restart.md that restarts current Gas Town agent in place.\n\n## Detection\n- Read tmux session name: gt-mayor, gt-witness-*, gt-refinery-*, gt-polecat-*\n- Fallback: check GT_ROLE env var\n\n## Behavior by role\n- mayor: gt mayor restart (sends Ctrl-C, loop respawns)\n- witness: gt witness restart\n- refinery: gt refinery restart \n- polecat: gt polecat restart (or witness-mediated)\n\n## Command format\nUses backticks for inline bash to detect context, then instructs Claude to run appropriate restart.","status":"tombstone","priority":1,"issue_type":"task","created_at":"2025-12-18T18:32:30.043125-08:00","updated_at":"2025-12-27T21:29:54.151093-08:00","deleted_at":"2025-12-27T21:29:54.151093-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-wav5","title":"Merge: gt-a95","description":"branch: polecat/Ace\ntarget: main\nsource_issue: gt-a95\nrig: gastown","status":"tombstone","priority":1,"issue_type":"merge-request","created_at":"2025-12-20T21:23:08.375434-08:00","updated_at":"2025-12-27T21:27:22.642527-08:00","deleted_at":"2025-12-27T21:27:22.642527-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"merge-request"} @@ -2228,7 +2228,6 @@ {"id":"gt-z722q","title":"Digest: mol-deacon-patrol","description":"Patrol cycle 4: All healthy","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T11:20:18.680202-08:00","updated_at":"2025-12-28T11:20:18.680202-08:00","closed_at":"2025-12-28T11:20:18.680167-08:00","close_reason":"Squashed from 9 wisps","dependencies":[{"issue_id":"gt-z722q","depends_on_id":"gt-eph-200","type":"parent-child","created_at":"2025-12-28T11:20:18.681013-08:00","created_by":"deacon"}]} {"id":"gt-z7hwn","title":"Digest: mol-deacon-patrol","description":"Patrol 6: Quiet","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T19:15:32.191569-08:00","updated_at":"2025-12-27T21:26:02.740518-08:00","deleted_at":"2025-12-27T21:26:02.740518-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-z7v0b","title":"Digest: mol-deacon-patrol","description":"Patrol 10: All healthy.","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T03:07:12.046971-08:00","updated_at":"2025-12-28T03:07:12.046971-08:00","closed_at":"2025-12-28T03:07:12.046934-08:00","close_reason":"Squashed from 9 wisps"} -{"id":"gt-z803c","title":"Digest: mol-deacon-patrol","description":"Patrol 5: all healthy","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T15:52:42.403494-08:00","updated_at":"2025-12-28T15:52:42.403494-08:00","closed_at":"2025-12-28T15:52:42.40346-08:00","dependencies":[{"issue_id":"gt-z803c","depends_on_id":"gt-eph-yy8","type":"parent-child","created_at":"2025-12-28T15:52:42.404355-08:00","created_by":"deacon"}]} {"id":"gt-z80br","title":"Digest: mol-deacon-patrol","description":"Patrol 4: Routine, witnesses/refineries healthy","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T20:49:11.210041-08:00","updated_at":"2025-12-27T21:26:02.019378-08:00","deleted_at":"2025-12-27T21:26:02.019378-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-z8dq9","title":"Digest: mol-deacon-patrol","description":"Patrol 15: All healthy","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T17:47:45.797255-08:00","updated_at":"2025-12-27T21:26:01.116267-08:00","deleted_at":"2025-12-27T21:26:01.116267-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-z94m","title":"load-state","description":"Read handoff bead and get nudge counts.\n\nNeeds: check-refinery","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-23T01:41:54.505607-08:00","updated_at":"2025-12-25T15:52:43.900154-08:00","dependencies":[{"issue_id":"gt-z94m","depends_on_id":"gt-751s","type":"parent-child","created_at":"2025-12-23T01:41:54.542384-08:00","created_by":"stevey"}],"deleted_at":"2025-12-25T15:52:43.900154-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"}