From fd6fe23d2a1246ab5262773fa6c9a352db8b8f53 Mon Sep 17 00:00:00 2001 From: Steve Yegge Date: Mon, 29 Dec 2025 13:04:27 -0800 Subject: [PATCH] bd sync: 2025-12-29 13:04:27 --- .beads/bd.sock.startlock | 2 +- .beads/issues.jsonl | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.beads/bd.sock.startlock b/.beads/bd.sock.startlock index 86f5a8c1..697adf5d 100644 --- a/.beads/bd.sock.startlock +++ b/.beads/bd.sock.startlock @@ -1 +1 @@ -29312 +54647 diff --git a/.beads/issues.jsonl b/.beads/issues.jsonl index 3ded3c9f..b4b65430 100644 --- a/.beads/issues.jsonl +++ b/.beads/issues.jsonl @@ -827,9 +827,12 @@ {"id":"gt-cppy0","title":"Digest: mol-deacon-patrol","description":"Patrol 20: All healthy, handoff triggered","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T15:24:01.602815-08:00","updated_at":"2025-12-27T21:26:03.132568-08:00","deleted_at":"2025-12-27T21:26:03.132568-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-cr0","title":"Consolidate design docs into beads descriptions","description":"The markdown design docs (swarm-shutdown-design.md, polecat-beads-access-design.md, mayor-handoff-design.md) will decay. Extract key decisions and prompting templates into the beads descriptions themselves, then archive or remove the markdown files. Beads are the source of truth.","status":"tombstone","priority":1,"issue_type":"task","created_at":"2025-12-15T20:24:05.45131-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":"task"} {"id":"gt-cr9","title":"Harness Design \u0026 Documentation","description":"The harness (Gas Town installation directory) needs design cleanup, documentation, and tooling.\n\n## Current Problems\n\n1. **Shared harness confusion**: ~/ai is shared by PGT and GGT with overlapping structures\n - PGT uses ~/ai/mayor/ as town-level Mayor home\n - GGT Mayor works in ~/ai/mayor/rigs/gastown/\n - ~/ai/gastown/ has both .gastown/ (PGT) and mayor/ (git clone)\n\n2. **Beads redirect**: ~/ai/.beads/redirect → mayor/rigs/gastown/.beads\n - This is specific to GGT's decentralized structure\n - Should be documented as an example\n\n3. **architecture.md**: Verify rig-level mayor/rig/ is shown correctly\n\n4. **No harness creation tooling**: Users must manually set up\n\n## Proposed Work\n\n- Document what a harness IS (installation directory)\n- Create harness creation command or template repo\n- Update architecture.md if needed \n- Create example harness configuration for docs\n- Resolve PGT/GGT sharing issue","status":"tombstone","priority":1,"issue_type":"epic","created_at":"2025-12-17T17:15:08.769961-08:00","updated_at":"2025-12-27T21:29:54.253374-08:00","deleted_at":"2025-12-27T21:29:54.253374-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"epic"} +{"id":"gt-crew-gastown-fang","title":"Crew worker fang in gastown - human-managed persistent workspace.","description":"Crew worker fang in gastown - human-managed persistent workspace.\n\nrole_type: crew\nrig: gastown\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-gastown-fang-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-29T13:00:25.364965-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T13:00:25.364965-08:00"} +{"id":"gt-crew-gastown-grip","title":"Crew worker grip in gastown - human-managed persistent workspace.","description":"Crew worker grip in gastown - human-managed persistent workspace.\n\nrole_type: crew\nrig: gastown\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-gastown-grip-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-29T13:00:11.479646-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T13:00:11.479646-08:00"} {"id":"gt-crew-gastown-jack","title":"Crew worker jack in gastown - human-managed persistent workspace.","description":"Crew worker jack in gastown - human-managed persistent workspace.\n\nrole_type: crew\nrig: gastown\nagent_state: running\nhook_bead: null\nrole_bead: gt-crew-gastown-jack-role","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-28T10:06:26.487688-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-28T19:16:59.570006-08:00"} {"id":"gt-crew-gastown-joe","title":"gt-crew-gastown-joe","description":"gt-crew-gastown-joe\n\nrole_type: \nrig: null\nagent_state: running\nhook_bead: null\nrole_bead: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-28T10:04:05.03443-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T15:34:10.235889-08:00"} -{"id":"gt-crew-gastown-max","title":"gt-crew-gastown-max","description":"gt-crew-gastown-max\n\nrole_type: crew\nrig: gastown\nagent_state: running\nhook_bead: null\nrole_bead: gt-crew-gastown-max-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-28T09:51:58.720059-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-28T23:02:54.33884-08:00"} +{"id":"gt-crew-gastown-max","title":"gt-crew-gastown-max","description":"gt-crew-gastown-max\n\nrole_type: crew\nrig: gastown\nagent_state: running\nhook_bead: null\nrole_bead: gt-crew-gastown-max-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-28T09:51:58.720059-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T12:53:32.541585-08:00"} +{"id":"gt-crew-gastown-wolf","title":"Crew worker wolf in gastown - human-managed persistent workspace.","description":"Crew worker wolf in gastown - human-managed persistent workspace.\n\nrole_type: crew\nrig: gastown\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-gastown-wolf-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-29T13:00:39.799433-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T13:00:39.799433-08:00"} {"id":"gt-crh3q","title":"Digest: mol-deacon-patrol","description":"Patrol 1: all agents healthy, no callbacks, clone divergence detected (zoey 52 behind)","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T01:26:07.334875-08:00","updated_at":"2025-12-28T01:26:07.334875-08:00","closed_at":"2025-12-28T01:26:07.334841-08:00"} {"id":"gt-csba","title":"Digest: mol-deacon-patrol","description":"Patrol 20: Routine - handoff threshold reached","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-24T22:39:00.441055-08:00","updated_at":"2025-12-27T21:26:04.515663-08:00","deleted_at":"2025-12-27T21:26:04.515663-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-csmlp","title":"Digest: mol-deacon-patrol","description":"Patrol 6: routine","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-26T18:40:07.959422-08:00","updated_at":"2025-12-26T18:40:07.959422-08:00","closed_at":"2025-12-26T18:40:07.959369-08:00"} @@ -1547,6 +1550,7 @@ {"id":"gt-ndm2m","title":"Digest: mol-deacon-patrol","description":"Patrol 19: All healthy","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T14:00:27.991392-08:00","updated_at":"2025-12-27T21:26:01.754018-08:00","deleted_at":"2025-12-27T21:26:01.754018-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-ne1t","title":"Design molecule step hooks","description":"Hooks that fire between molecule steps. When a bead in a molecule closes, trigger hook that can spawn agent attention to prompts/requests. This enables reactive orchestration - the molecule drives, hooks respond. Gas Town feature built on Beads data plane.","status":"tombstone","priority":2,"issue_type":"feature","created_at":"2025-12-21T17:53:14.568075-08:00","updated_at":"2025-12-27T21:29:56.503969-08:00","deleted_at":"2025-12-27T21:29:56.503969-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"feature"} {"id":"gt-ne41f","title":"Hardcoded 'gastown' rig in Deacon patrol context","description":"In prime.go, the Deacon patrol context hardcodes 'gastown' as the rig name.\n\n**Location**: prime.go L807\n\n```go\nrigBeadsDir := filepath.Join(ctx.TownRoot, \"gastown\", \"mayor\", \"rig\")\n```\n\nThis breaks if:\n- The rig is renamed\n- The town has multiple rigs\n- The Deacon is deployed to a different rig\n\n**Fix options**:\n1. Detect rig from context (ctx.Rig)\n2. Use town-level beads for Deacon patrol\n3. Pass rig name as parameter\n\nThe Deacon is a town-level role, so option 2 may be most appropriate.","status":"tombstone","priority":2,"issue_type":"bug","created_at":"2025-12-25T22:03:12.131973-08:00","updated_at":"2025-12-27T21:29:54.886015-08:00","deleted_at":"2025-12-27T21:29:54.886015-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"bug"} +{"id":"gt-ne9he","title":"gt crew add: role_bead field references non-existent bead","description":"When gt crew add creates an identity bead (e.g., gt-crew-gastown-grip), it includes a role_bead field referencing a bead that doesn't exist (e.g., gt-crew-gastown-grip-role).\n\nThis affects all crew workers including existing ones like max. Either:\n1. Create the role bead during gt crew add\n2. Remove the role_bead field from the identity bead\n3. Document that role beads are optional/future feature\n\nFound during: adding crew workers grip, fang, wolf","status":"open","priority":3,"issue_type":"bug","created_at":"2025-12-29T13:03:46.315753-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T13:03:46.315753-08:00"} {"id":"gt-neim","title":"Digest: mol-deacon-patrol","description":"Patrol: dave handoff (vision docs, 7 design gaps filed), furiosa tracer bullet on gt-oiv0, all agents up","status":"tombstone","priority":4,"issue_type":"task","created_at":"2025-12-22T22:38:37.785872-08:00","updated_at":"2025-12-27T21:26:05.450107-08:00","deleted_at":"2025-12-27T21:26:05.450107-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-nfdyl","title":"Witness emits activity events","description":"Witness emits events to activity stream for patrol activity:\n\nEvents to emit:\n- patrol_started: When witness begins patrol cycle\n- polecat_checked: When witness checks a polecat\n- polecat_nudged: When witness nudges a stuck polecat\n- escalation_sent: When witness escalates to Mayor/Deacon\n- patrol_complete: When patrol cycle finishes\n\nThis replaces stats tracking in .runtime/witness.json","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-28T21:40:20.972584-08:00","created_by":"gastown/crew/jack","updated_at":"2025-12-28T21:40:20.972584-08:00","dependencies":[{"issue_id":"gt-nfdyl","depends_on_id":"gt-y14l7","type":"blocks","created_at":"2025-12-28T21:41:11.528857-08:00","created_by":"daemon"}]} {"id":"gt-nfyrw","title":"Digest: mol-deacon-patrol","description":"Patrol 2: All healthy, fixed 1 stale lock","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T13:52:33.556453-08:00","updated_at":"2025-12-27T21:26:01.78709-08:00","deleted_at":"2025-12-27T21:26:01.78709-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} @@ -1599,6 +1603,7 @@ {"id":"gt-obxz","title":"Digest: mol-deacon-patrol","description":"Patrol #9","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-24T22:23:37.705161-08:00","updated_at":"2025-12-27T21:26:04.759434-08:00","deleted_at":"2025-12-27T21:26:04.759434-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-oc2","title":"Daemon: proper rig discovery","description":"Currently discovers rigs by scanning tmux session names for gt-*-witness pattern. Should instead:\n- Read rigs from mayor/rigs.json\n- Or scan town directory for .gastown subdirs\n- Handle rigs that exist but don't have running witnesses","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-18T13:38:15.825299-08:00","updated_at":"2025-12-27T21:29:57.184842-08:00","dependencies":[{"issue_id":"gt-oc2","depends_on_id":"gt-99m","type":"blocks","created_at":"2025-12-18T13:38:26.826697-08:00","created_by":"daemon"}],"deleted_at":"2025-12-27T21:29:57.184842-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-occdx","title":"Digest: mol-deacon-patrol","description":"Patrol 6: All healthy, no messages","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-25T17:43:56.478866-08:00","updated_at":"2025-12-27T21:26:02.896845-08:00","deleted_at":"2025-12-27T21:26:02.896845-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} +{"id":"gt-ocjdi","title":"gt crew add: CLAUDE.md customization leaves git dirty","description":"When gt crew add generates a customized CLAUDE.md for crew workers, it differs from the repo version (Crew Worker Context vs Polecat Context, personalized footer). This leaves the git state 'dirty'.\n\nOptions:\n1. Add CLAUDE.md to .gitignore in crew workspaces\n2. Auto-commit the customized CLAUDE.md locally \n3. Store crew CLAUDE.md content elsewhere (e.g., .claude/CLAUDE.md)\n\nCurrent behavior is functional but 'gt crew list' shows 'Git: dirty' for new crew.\n\nFound during: adding crew workers grip, fang, wolf","status":"open","priority":4,"issue_type":"task","created_at":"2025-12-29T13:03:53.25608-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T13:03:53.25608-08:00"} {"id":"gt-od1g","title":"Mail inbox from witness/refinery dirs shows Mayor inbox","description":"When running `gt mail inbox` from the witness or refinery directories, it shows the Mayor's inbox instead of the agent's own inbox.\n\nReproduction:\n```\n$ cd ~/gt/beads/witness \u0026\u0026 gt mail inbox\nšŸ“¬ Inbox: mayor/ (1 messages, 1 unread)\n ā— šŸ¤ HANDOFF: Swarm session complete...\n```\n\nExpected: Should show beads/witness inbox\n\nLikely cause: The cwd-based identity resolution isn't recognizing witness/refinery as valid mail identities, so it falls back to Mayor.","status":"open","priority":2,"issue_type":"bug","created_at":"2025-12-23T20:29:58.817388-08:00","updated_at":"2025-12-23T20:29:58.817388-08:00"} {"id":"gt-odfr","title":"Add WaitsFor parsing to molecule steps","description":"Add WaitsFor field to MoleculeStep struct and parse 'WaitsFor: all-children' (and future variants) from molecule descriptions.\n\nThis enables:\n- mol progress to understand fanout patterns\n- Validation that WaitsFor references valid constructs\n- Future automated orchestration\n\nImplementation:\n1. Add WaitsFor []string to MoleculeStep struct\n2. Add waitsForLineRegex to parse 'WaitsFor: ...' lines\n3. Update ParseMoleculeSteps to extract WaitsFor\n4. Update tests","status":"tombstone","priority":1,"issue_type":"task","created_at":"2025-12-23T21:35:55.004767-08:00","updated_at":"2025-12-27T21:29:52.836996-08:00","deleted_at":"2025-12-27T21:29:52.836996-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"gt-odvf","title":"Document bd mol bond/squash/burn CLI","description":"Create CLI reference documentation for molecule commands:\n\n## bd mol bond\n\nInstantiate a proto into a runnable molecule.\n\n```bash\nbd mol bond \u003cproto-id\u003e [--wisp] [--assignee=\u003caddr\u003e]\n```\n\n- Default: creates a Mol (durable, in main beads)\n- --wisp: creates a Wisp (ephemeral, in .beads-ephemeral/)\n- --assignee: who will execute this molecule\n\n## bd mol squash\n\nComplete a molecule and generate digest.\n\n```bash\nbd mol squash \u003cmol-id\u003e --summary='...'\n```\n\n- For Mol: creates digest in git history\n- For Wisp: evaporates (no permanent record)\n- --summary: required summary of what was accomplished\n\n## bd mol burn\n\nAbandon a molecule without completing.\n\n```bash\nbd mol burn \u003cmol-id\u003e [--reason='...']\n```\n\n- Discards molecule state\n- No digest created\n- Use when molecule is no longer needed","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-21T16:33:06.462105-08:00","updated_at":"2025-12-27T21:29:56.537382-08:00","dependencies":[{"issue_id":"gt-odvf","depends_on_id":"gt-62hm","type":"blocks","created_at":"2025-12-21T16:33:17.530156-08:00","created_by":"daemon"}],"deleted_at":"2025-12-27T21:29:56.537382-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"}