bd sync: 2025-12-21 18:28:51
This commit is contained in:
@@ -57,8 +57,8 @@
|
||||
{"id":"gt-3x0z.4","title":"Phase 2.1: gt spawn --molecule bonds in ephemeral","description":"Make gt spawn molecule-aware with ephemeral bonding.\n\n## New Flag\n\n```bash\ngt spawn --issue gt-xxx --molecule mol-polecat-work\n```\n\n## Behavior\n\n1. Create polecat with fresh worktree (existing)\n2. Bond molecule in ephemeral: `bd mol bond mol-polecat-work --ephemeral`\n3. Link molecule root to source issue\n4. Include molecule context in work assignment mail\n5. Start session\n\n## Work Assignment Mail\n\n```\nSubject: Work Assignment: Fix lifecycle bug [MOLECULE]\n\nYou are working on gt-rixa as part of molecule mol-polecat-work.\n\nMolecule instance: eph-abc123\nCurrent step: read-assignment (1/8)\n\nFollow the molecule workflow. When complete, generate summary and squash.\n```","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-21T14:33:45.082722-08:00","updated_at":"2025-12-21T17:25:15.106346-08:00","closed_at":"2025-12-21T17:25:15.106346-08:00","close_reason":"Already merged to main","dependencies":[{"issue_id":"gt-3x0z.4","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:33:45.084965-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.4","depends_on_id":"gt-3x0z.1","type":"blocks","created_at":"2025-12-21T14:34:40.385365-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.4","depends_on_id":"gt-3x0z.2","type":"blocks","created_at":"2025-12-21T14:34:40.457259-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.5","title":"Phase 2.2: gt prime shows ephemeral molecule context","description":"Update gt prime to detect and display ephemeral molecule state.\n\n## Detection\n\n1. Check for active ephemeral molecule assigned to current identity\n2. Parse molecule progress (current step, total steps)\n3. Show in prime output\n\n## Output\n\n```\n🔧 Polecat furiosa, checking in.\n\n📦 Molecule: mol-polecat-work (eph-abc123)\n Step 3/8: do-work\n Source: gt-rixa\n Started: 10 minutes ago\n\nRun 'bd mol status' for full molecule state.\n```","status":"closed","priority":1,"issue_type":"task","assignee":"gastown/nux","created_at":"2025-12-21T14:33:45.164431-08:00","updated_at":"2025-12-21T16:34:17.74355-08:00","closed_at":"2025-12-21T16:34:17.74355-08:00","close_reason":"Closed","dependencies":[{"issue_id":"gt-3x0z.5","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:33:45.16487-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.5","depends_on_id":"gt-3x0z.4","type":"blocks","created_at":"2025-12-21T15:22:46.151626-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.6","title":"Phase 2.3: Polecat CLAUDE.md molecule workflow protocol","description":"Update polecat prompting for molecule-based work.\n\n## CLAUDE.md Updates\n\nAdd section on molecule workflow:\n\n```markdown\n## Molecule Workflow\n\nWhen assigned a molecule (check gt prime output):\n\n1. Follow molecule steps in order\n2. Mark steps complete: bd mol step complete \u003cstep-id\u003e\n3. Before signaling done:\n a. Generate summary of work performed\n b. Run: bd squash \u003cmolecule-root\u003e --summary \"\u003cyour summary\u003e\"\n4. Then signal done as normal\n\n### Summary Guidelines\n\nYour summary should include:\n- What was the task?\n- What did you do?\n- What was the outcome?\n- Any issues or follow-ups?\n\nKeep it to 2-4 sentences. This becomes the permanent record.\n```","status":"closed","priority":1,"issue_type":"task","assignee":"gastown/rictus","created_at":"2025-12-21T14:33:45.24122-08:00","updated_at":"2025-12-21T16:30:46.776078-08:00","closed_at":"2025-12-21T16:30:46.776078-08:00","close_reason":"Added molecule workflow section to polecat.md.tmpl with step-by-step protocol and summary guidelines","dependencies":[{"issue_id":"gt-3x0z.6","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:33:45.241575-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.6","depends_on_id":"gt-3x0z.4","type":"blocks","created_at":"2025-12-21T15:22:47.355729-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.7","title":"Phase 3.1: Summary generation protocol","description":"Define how agents generate summaries for squash.\n\n## The Problem\n\nBeads doesn't make AI calls (inversion of control). Gas Town agents must:\n1. Generate their own summary before calling squash\n2. Pass summary to bd squash command\n\n## Summary Template\n\n```\nTask: \u003csource issue title\u003e\nAction: \u003cwhat was done - fix/implement/refactor/etc\u003e\nOutcome: \u003cresult - tests pass, committed, needs follow-up, etc\u003e\nDetails: \u003c1-2 sentences of specifics if needed\u003e\n```\n\n## Example\n\n```\nTask: Fix lifecycle parser matching bug (gt-rixa)\nAction: Reordered conditional checks in parseLifecycleRequest\nOutcome: Tests passing, committed to polecat/furiosa\nDetails: The 'cycle' keyword was matching 'lifecycle:' prefix. Now checks restart/shutdown first, uses word boundary for cycle.\n```\n\n## Command\n\n```bash\nbd squash eph-abc123 --summary \"Task: Fix lifecycle parser...\"\n```","status":"in_progress","priority":1,"issue_type":"task","assignee":"gastown/furiosa","created_at":"2025-12-21T14:34:12.86627-08:00","updated_at":"2025-12-21T18:04:27.434954-08:00","dependencies":[{"issue_id":"gt-3x0z.7","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:34:12.868178-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.7","depends_on_id":"gt-3x0z.6","type":"blocks","created_at":"2025-12-21T14:34:40.530235-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.8","title":"Phase 3.2: mol-polecat-work squash step","description":"Add summary+squash as final steps in mol-polecat-work.\n\n## Current Steps\n\n1. read-assignment\n2. understand-task\n3. implement-solution\n4. verify-tests\n5. commit-work\n6. signal-done\n\n## Updated Steps\n\n1. read-assignment\n2. understand-task\n3. implement-solution\n4. verify-tests\n5. commit-work\n6. **generate-summary** ← NEW\n7. **squash-molecule** ← NEW\n8. signal-done\n\n## Step Definitions\n\n### generate-summary\nAgent writes a concise summary following the template.\nSave to a local variable or temp file.\n\n### squash-molecule\nRun: bd squash $MOLECULE_ROOT --summary \"$SUMMARY\"\nThis creates digest in main beads, cleans ephemeral.\n\n## Update Location\n\nThis requires updating the mol-polecat-work definition in beads molecule catalog.","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-21T14:34:12.946518-08:00","updated_at":"2025-12-21T14:34:12.946518-08:00","dependencies":[{"issue_id":"gt-3x0z.8","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:34:12.946899-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.8","depends_on_id":"gt-3x0z.7","type":"blocks","created_at":"2025-12-21T14:34:40.601367-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.7","title":"Phase 3.1: Summary generation protocol","description":"Define how agents generate summaries for squash.\n\n## The Problem\n\nBeads doesn't make AI calls (inversion of control). Gas Town agents must:\n1. Generate their own summary before calling squash\n2. Pass summary to bd squash command\n\n## Summary Template\n\n```\nTask: \u003csource issue title\u003e\nAction: \u003cwhat was done - fix/implement/refactor/etc\u003e\nOutcome: \u003cresult - tests pass, committed, needs follow-up, etc\u003e\nDetails: \u003c1-2 sentences of specifics if needed\u003e\n```\n\n## Example\n\n```\nTask: Fix lifecycle parser matching bug (gt-rixa)\nAction: Reordered conditional checks in parseLifecycleRequest\nOutcome: Tests passing, committed to polecat/furiosa\nDetails: The 'cycle' keyword was matching 'lifecycle:' prefix. Now checks restart/shutdown first, uses word boundary for cycle.\n```\n\n## Command\n\n```bash\nbd squash eph-abc123 --summary \"Task: Fix lifecycle parser...\"\n```","status":"closed","priority":1,"issue_type":"task","assignee":"gastown/furiosa","created_at":"2025-12-21T14:34:12.86627-08:00","updated_at":"2025-12-21T18:20:28.310235-08:00","closed_at":"2025-12-21T18:20:28.310235-08:00","close_reason":"Added summary generation protocol to polecat.md.tmpl with Task/Action/Outcome/Details template and guidelines","dependencies":[{"issue_id":"gt-3x0z.7","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:34:12.868178-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.7","depends_on_id":"gt-3x0z.6","type":"blocks","created_at":"2025-12-21T14:34:40.530235-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.8","title":"Phase 3.2: mol-polecat-work squash step","description":"Add summary+squash as final steps in mol-polecat-work.\n\n## Current Steps\n\n1. read-assignment\n2. understand-task\n3. implement-solution\n4. verify-tests\n5. commit-work\n6. signal-done\n\n## Updated Steps\n\n1. read-assignment\n2. understand-task\n3. implement-solution\n4. verify-tests\n5. commit-work\n6. **generate-summary** ← NEW\n7. **squash-molecule** ← NEW\n8. signal-done\n\n## Step Definitions\n\n### generate-summary\nAgent writes a concise summary following the template.\nSave to a local variable or temp file.\n\n### squash-molecule\nRun: bd squash $MOLECULE_ROOT --summary \"$SUMMARY\"\nThis creates digest in main beads, cleans ephemeral.\n\n## Update Location\n\nThis requires updating the mol-polecat-work definition in beads molecule catalog.","status":"in_progress","priority":1,"issue_type":"task","assignee":"gastown/furiosa","created_at":"2025-12-21T14:34:12.946518-08:00","updated_at":"2025-12-21T18:28:51.695891-08:00","dependencies":[{"issue_id":"gt-3x0z.8","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:34:12.946899-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.8","depends_on_id":"gt-3x0z.7","type":"blocks","created_at":"2025-12-21T14:34:40.601367-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x0z.9","title":"Phase 4.1: mol-deacon-patrol uses ephemeral","description":"Deacon patrol cycles run as ephemeral molecules.\n\n## Current Deacon Loop\n\n```\nwhile running:\n check_heartbeat()\n check_mail()\n sleep(interval)\n```\n\n## Molecule-Based Loop\n\n```\nwhile running:\n mol = bd mol bond mol-deacon-patrol-cycle --ephemeral\n execute_cycle(mol):\n check_heartbeat()\n check_mail()\n log_status()\n summary = generate_cycle_summary()\n bd squash mol --summary summary\n sleep(interval)\n```\n\n## Benefits\n\n- Each cycle is tracked\n- Digests show daemon health over time\n- Can query: 'show me patrol cycles from last hour'\n- Crash mid-cycle → ephemeral shows where we were","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-21T14:34:13.026048-08:00","updated_at":"2025-12-21T14:34:13.026048-08:00","dependencies":[{"issue_id":"gt-3x0z.9","depends_on_id":"gt-3x0z","type":"parent-child","created_at":"2025-12-21T14:34:13.026388-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.9","depends_on_id":"gt-3x0z.8","type":"blocks","created_at":"2025-12-21T14:34:40.672531-08:00","created_by":"daemon"},{"issue_id":"gt-3x0z.9","depends_on_id":"gt-rana.3","type":"blocks","created_at":"2025-12-21T15:20:27.460976-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x1","title":"Update Refinery to use Beads merge queue","description":"Replace branch discovery with Beads queue in the Refinery module:\n\nCurrent (internal/refinery/manager.go):\n- Scans for polecat/* branches\n- Creates MR objects on-the-fly\n\nNew:\n- Pull from Beads: bd ready --type=merge-request\n- Process each MR\n- Close with merge commit: bd close \u003cid\u003e --reason=\"Merged at \u003csha\u003e\"\n- Handle failures: bd update \u003cid\u003e --status=blocked --reason=\"...\"\n\nThe Engineer (agent) becomes Beads-native.\nThe Refinery (module) provides the infrastructure.","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-16T23:02:37.96436-08:00","updated_at":"2025-12-19T15:24:39.1231-08:00","closed_at":"2025-12-19T14:47:51.65991-08:00","dependencies":[{"issue_id":"gt-3x1","depends_on_id":"gt-h5n","type":"blocks","created_at":"2025-12-16T23:02:55.812433-08:00","created_by":"daemon"},{"issue_id":"gt-3x1","depends_on_id":"gt-svi","type":"blocks","created_at":"2025-12-16T23:03:12.814463-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-3x1.1","title":"Engineer main loop: poll for ready merge-requests","description":"Implement the Engineer's main processing loop.\n\nLoop structure:\n1. Query: bd ready --type=merge-request\n2. If empty: sleep(poll_interval), continue\n3. Select highest priority, oldest MR\n4. Claim: bd update \u003cid\u003e --status=in_progress\n5. Process (delegate to other subtasks)\n6. Repeat\n\nConfiguration:\n- poll_interval: from rig config (default 30s)\n- max_concurrent: from rig config (default 1)\n\nThe loop should be interruptible and handle graceful shutdown.\n\nReference: docs/merge-queue-design.md#engineer-processing-loop","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-17T13:50:57.022367-08:00","updated_at":"2025-12-18T20:45:17.731441-08:00","closed_at":"2025-12-18T20:14:35.321731-08:00","dependencies":[{"issue_id":"gt-3x1.1","depends_on_id":"gt-3x1","type":"parent-child","created_at":"2025-12-17T13:50:57.024225-08:00","created_by":"daemon"},{"issue_id":"gt-3x1.1","depends_on_id":"gt-svi.1","type":"blocks","created_at":"2025-12-17T13:53:09.832586-08:00","created_by":"daemon"},{"issue_id":"gt-3x1.1","depends_on_id":"gt-svi.2","type":"blocks","created_at":"2025-12-17T13:53:09.9547-08:00","created_by":"daemon"},{"issue_id":"gt-3x1.1","depends_on_id":"gt-h5n.8","type":"blocks","created_at":"2025-12-17T13:53:16.770078-08:00","created_by":"daemon"}]}
|
||||
|
||||
Reference in New Issue
Block a user