bd sync: 2025-12-30 01:03:09
This commit is contained in:
@@ -237,7 +237,6 @@
|
||||
{"id":"gt-atqr8","title":"Create session name helper functions in internal/session","description":"attached_args: Session name helper functions\n\nCreate helper functions for consistent session name construction.\n\n## Files to modify\n- internal/session/names.go (NEW)\n\n## Implementation\nCreate new file with these functions:\n```go\npackage session\n\nimport \"fmt\"\n\nconst Prefix = \"gt-\"\n\nfunc MayorSessionName() string { return Prefix + \"mayor\" }\nfunc DeaconSessionName() string { return Prefix + \"deacon\" }\nfunc WitnessSessionName(rig string) string { return fmt.Sprintf(\"%s%s-witness\", Prefix, rig) }\nfunc RefinerySessionName(rig string) string { return fmt.Sprintf(\"%s%s-refinery\", Prefix, rig) }\nfunc CrewSessionName(rig, name string) string { return fmt.Sprintf(\"%s%s-crew-%s\", Prefix, rig, name) }\nfunc PolecatSessionName(rig, name string) string { return fmt.Sprintf(\"%s%s-%s\", Prefix, rig, name) }\n```\n\n## Acceptance criteria\n- [ ] New file internal/session/names.go created\n- [ ] All 6 helper functions implemented\n- [ ] Unit tests in internal/session/names_test.go\n- [ ] go build ./... passes\n- [ ] go test ./internal/session/... passes","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T15:49:08.856968-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-28T16:12:31.8143-08:00","closed_at":"2025-12-28T16:12:31.8143-08:00"}
|
||||
{"id":"gt-awu07","title":"Day 1.4: Create agent beads for core roles","description":"Create agent beads with deterministic IDs:\n- gt-mayor (Mayor coordinator)\n- gt-witness (per-rig polecat monitor)\n- gt-refinery (per-rig merge processor)\n\nEach with role_type, rig, and initial state.\n\nParent: gt-d0jqp","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-27T20:58:11.427106-08:00","created_by":"mayor","updated_at":"2025-12-28T00:08:24.338212-08:00","closed_at":"2025-12-28T00:08:24.338212-08:00","dependencies":[{"issue_id":"gt-awu07","depends_on_id":"gt-ikyo1","type":"blocks","created_at":"2025-12-27T20:58:49.122365-08:00","created_by":"daemon"},{"issue_id":"gt-awu07","depends_on_id":"gt-v2gkv","type":"blocks","created_at":"2025-12-27T20:58:50.202777-08:00","created_by":"daemon"},{"issue_id":"gt-awu07","depends_on_id":"gt-d0jqp","type":"parent-child","created_at":"2025-12-27T20:59:02.69769-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-azpg2","title":"Digest: mol-deacon-patrol","description":"Patrol 6: quiet","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T19:44:45.549021-08:00","updated_at":"2025-12-28T19:44:45.549021-08:00","closed_at":"2025-12-28T19:44:45.548985-08:00"}
|
||||
{"id":"gt-b0g9a","title":"Merge: nux-1767075895486","description":"branch: polecat/nux-1767075895486\ntarget: main\nsource_issue: nux-1767075895486\nrig: gastown","status":"closed","priority":2,"issue_type":"merge-request","created_at":"2025-12-29T22:27:33.43977-08:00","created_by":"gastown/polecats/nux","updated_at":"2025-12-29T23:32:37.20935-08:00","closed_at":"2025-12-29T23:32:37.20935-08:00"}
|
||||
{"id":"gt-b0rk4","title":"Merge: rictus-1767073382273","description":"branch: polecat/rictus-1767073382273\ntarget: main\nsource_issue: rictus-1767073382273\nrig: gastown","status":"closed","priority":2,"issue_type":"merge-request","created_at":"2025-12-29T21:56:39.176645-08:00","created_by":"gastown/polecats/rictus","updated_at":"2025-12-29T23:32:37.288296-08:00","closed_at":"2025-12-29T23:32:37.288296-08:00","close_reason":"Branch no longer exists on remote - already merged or cleaned up"}
|
||||
{"id":"gt-bblyh","title":"Digest: mol-deacon-patrol","description":"Patrol 2: all healthy, no events","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T06:07:14.085326-08:00","updated_at":"2025-12-28T06:07:14.085326-08:00","closed_at":"2025-12-28T06:07:14.085291-08:00"}
|
||||
{"id":"gt-be0as","title":"Add charmbracelet TUI dependencies (bubbletea, bubbles)","description":"Add charmbracelet TUI framework dependencies.\n\n## Dependencies to add\n```\ngo get github.com/charmbracelet/bubbletea\ngo get github.com/charmbracelet/bubbles\n```\n\n## Already have\n- github.com/charmbracelet/lipgloss (styling)\n\n## Verify\n- go mod tidy\n- go build ./...\n\nQuick task, just adding deps.","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T16:13:14.574696-08:00","created_by":"gastown/crew/joe","updated_at":"2025-12-28T16:18:12.74954-08:00","closed_at":"2025-12-28T16:18:12.74954-08:00"}
|
||||
@@ -520,7 +519,7 @@
|
||||
{"id":"gt-l9g","title":"Beads epic templates for batch work patterns","description":"Optional: Define templates for common batch work patterns.\n\n## Concept\n\nA template encodes a workflow pattern that can be instantiated as beads:\n\n```yaml\n# templates/batch-basic.yaml\nname: basic-batch\ndescription: Simple batch work pattern\nphases:\n - name: startup\n issues:\n - title: \"Verify workers ready\"\n - name: working\n # Actual work issues added separately\n - name: cleanup\n issues:\n - title: \"Merge all branches\"\n - title: \"Clean up workers\"\n - title: \"Report to Mayor\"\n```\n\n## Usage\n\n```bash\ngt spawn --template basic-batch --epic gt-u1j --workers 3\n```\n\nCreates beads epic with template phases + actual work from gt-u1j children.\n\n## Decision Point\n\nTemplates are OPTIONAL. The core design (beads as state, multi-wave orchestration) works without templates. Templates are sugar for common patterns.\n\nConsider deferring to P3 or dropping entirely if beads epics with dependencies suffice.\n\n## Note\n\nNo \"swarm IDs\" involved - templates just pre-populate epic/issue structure.","status":"open","priority":2,"issue_type":"task","created_at":"2025-12-16T01:51:24.399235-08:00","updated_at":"2025-12-16T17:26:08.868396-08:00"}
|
||||
{"id":"gt-l9t35","title":"Test MR","description":"branch: test-branch\ntarget: main\nsource_issue: gt-test\nrig: gastown","status":"closed","priority":3,"issue_type":"merge-request","created_at":"2025-12-28T13:55:31.051975-08:00","created_by":"mayor","updated_at":"2025-12-28T13:55:51.591898-08:00","closed_at":"2025-12-28T13:55:51.591898-08:00"}
|
||||
{"id":"gt-lajrx","title":"Digest: mol-deacon-patrol","description":"Patrol 7: healthy","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-28T06:09:55.036375-08:00","updated_at":"2025-12-28T06:09:55.036375-08:00","closed_at":"2025-12-28T06:09:55.036344-08:00"}
|
||||
{"id":"gt-lak31","title":"MQ events in gt feed","description":"Wire MQ lifecycle events to gt feed display.\n\nAfter 'Refinery emits activity events' is done:\n- gt feed should show merge_started, merged, merge_failed events\n- Format: timestamp, event type, MR details\n- Color coding: green for merged, red for failed\n\nExample output:\n 19:45 MERGED gt-abc123 (polecat/nux → main)\n 19:42 MERGE_STARTED gt-abc123\n 19:40 MERGE_FAILED gt-xyz789 (conflict)","status":"hooked","priority":2,"issue_type":"task","assignee":"gastown/polecats/capable","created_at":"2025-12-28T21:40:39.079766-08:00","created_by":"gastown/crew/jack","updated_at":"2025-12-30T00:27:49.723044-08:00","dependencies":[{"issue_id":"gt-lak31","depends_on_id":"gt-ytsxp","type":"blocks","created_at":"2025-12-28T21:41:11.587659-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-lak31","title":"MQ events in gt feed","description":"Wire MQ lifecycle events to gt feed display.\n\nAfter 'Refinery emits activity events' is done:\n- gt feed should show merge_started, merged, merge_failed events\n- Format: timestamp, event type, MR details\n- Color coding: green for merged, red for failed\n\nExample output:\n 19:45 MERGED gt-abc123 (polecat/nux → main)\n 19:42 MERGE_STARTED gt-abc123\n 19:40 MERGE_FAILED gt-xyz789 (conflict)","status":"closed","priority":2,"issue_type":"task","assignee":"gastown/polecats/capable","created_at":"2025-12-28T21:40:39.079766-08:00","created_by":"gastown/crew/jack","updated_at":"2025-12-30T01:03:02.505043-08:00","closed_at":"2025-12-30T01:03:02.505043-08:00","close_reason":"Implemented MQ lifecycle events in gt feed: merge_started, merged, merge_failed, merge_skipped with color coding (green=merged, red=failed)","dependencies":[{"issue_id":"gt-lak31","depends_on_id":"gt-ytsxp","type":"blocks","created_at":"2025-12-28T21:41:11.587659-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-ldb5m","title":"Digest: mol-deacon-patrol","description":"P11: stable","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-25T19:59:19.365052-08:00","updated_at":"2025-12-25T19:59:19.365052-08:00","closed_at":"2025-12-25T19:59:19.364984-08:00"}
|
||||
{"id":"gt-le1a","title":"Merge: gt-3x1","description":"branch: polecat/Slit\ntarget: main\nsource_issue: gt-3x1\nrig: gastown","status":"closed","priority":1,"issue_type":"merge-request","created_at":"2025-12-19T14:53:47.674479-08:00","updated_at":"2025-12-19T18:30:24.050697-08:00","closed_at":"2025-12-19T18:30:24.0507-08:00"}
|
||||
{"id":"gt-leqvb","title":"Merge: slit-1767079899677","description":"branch: polecat/slit-1767079899677\ntarget: main\nsource_issue: slit-1767079899677\nrig: gastown","status":"closed","priority":2,"issue_type":"merge-request","created_at":"2025-12-29T23:36:35.88583-08:00","created_by":"gastown/polecats/slit","updated_at":"2025-12-29T23:55:11.871688-08:00","closed_at":"2025-12-29T23:55:11.871688-08:00","close_reason":"Stale MR from nuked polecat"}
|
||||
@@ -818,4 +817,5 @@
|
||||
{"id":"gt-ztpe8","title":"Day 4.4: Witness calls nuke after MERGED signal","description":"When refinery sends MERGED:\n1. Witness receives MERGED mail\n2. Witness calls gt polecat nuke\n3. Full sandbox cleanup\n4. Agent bead removed\n\nParent: gt-4a2qt","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-27T20:58:06.121096-08:00","created_by":"mayor","updated_at":"2025-12-28T16:12:33.049315-08:00","closed_at":"2025-12-28T16:12:33.049315-08:00","dependencies":[{"issue_id":"gt-ztpe8","depends_on_id":"gt-4a2qt","type":"parent-child","created_at":"2025-12-27T20:58:46.285651-08:00","created_by":"daemon"},{"issue_id":"gt-ztpe8","depends_on_id":"gt-z99nh","type":"blocks","created_at":"2025-12-27T20:59:03.489419-08:00","created_by":"daemon"},{"issue_id":"gt-ztpe8","depends_on_id":"gt-budeb","type":"relates-to","created_at":"2025-12-27T20:59:10.701299-08:00","created_by":"daemon"}]}
|
||||
{"id":"gt-zvte2","title":"Standardize agent bead naming: prefix-rig-role-name","description":"## The Problem\n\nAgent bead IDs use INCONSISTENT naming patterns:\n\n| Current (WRONG) | Should Be (prefix-rig-role-name) |\n|-----------------|----------------------------------|\n| gt-witness-gastown | gt-gastown-witness |\n| gt-refinery-gastown | gt-gastown-refinery |\n| gt-crew-gastown-max | gt-gastown-crew-max |\n| gt-polecat-gastown-Toast | gt-gastown-polecat-Toast |\n\nTown-level agents (no rig) are OK:\n- gt-mayor ✓\n- gt-deacon ✓\n\n## The Convention\n\n```\nprefix-rig-role-name\n\nWhere:\n- prefix: always 'gt'\n- rig: rig name (absent for town-level agents)\n- role: witness|refinery|crew|polecat|mayor|deacon\n- name: agent name (absent for singleton roles like witness/refinery)\n```\n\nExamples:\n- `gt-gastown-witness` (rig=gastown, role=witness, no name)\n- `gt-gastown-crew-max` (rig=gastown, role=crew, name=max)\n- `gt-beads-polecat-Toast` (rig=beads, role=polecat, name=Toast)\n- `gt-mayor` (no rig, role=mayor, no name)\n\n## Files to Update\n\n### Agent bead ID generation\n- internal/cmd/status.go (lines 316-335)\n- internal/daemon/lifecycle.go (lines 546-579)\n- internal/cmd/crew_add.go\n- internal/polecat/manager.go\n- internal/rig/manager.go\n- internal/doctor/agent_beads_check.go\n- internal/cmd/prime.go\n- internal/session/names.go (session names vs bead IDs)\n\n### Commands to verify\n- gt status - displays agent beads\n- gt doctor - creates missing agent beads\n- gt rig add - creates witness/refinery beads\n- gt crew add - creates crew beads\n- gt sling - routes by agent ID\n- gt mol status - looks up agent by ID\n\n## Migration\n\n1. Update all ID generation code\n2. Create new agent beads with correct IDs\n3. Migrate hook/role slots to new beads\n4. Update any mail addresses\n5. Delete old incorrectly-named beads\n\n## Also from this session\n\nRole bead slot cleanup was done - CreateAgentBead now calls bd slot set.\nBut legacy description parsing still exists in daemon/lifecycle.go.\n\n## Reference\n- ~/gt/docs/agent-as-bead.md\n- Session 2025-12-29: Fixed role bead patterns (gt-crew-role etc)","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-12-29T14:10:33.310182-08:00","created_by":"gastown/crew/max","updated_at":"2025-12-29T14:56:14.529153-08:00","closed_at":"2025-12-29T14:56:14.529153-08:00","close_reason":"Completed: standardized agent bead naming to prefix-rig-role-name"}
|
||||
{"id":"gt-zwcga","title":"Merge: rictus-1767073382273","description":"attached_args: Code review this merge request\n\nbranch: polecat/rictus-1767073382273\ntarget: main\nsource_issue: rictus-1767073382273\nrig: gastown","status":"closed","priority":2,"issue_type":"merge-request","assignee":"gastown/polecats/dag","created_at":"2025-12-29T21:57:47.577268-08:00","created_by":"gastown/polecats/rictus","updated_at":"2025-12-29T22:03:22.355518-08:00","closed_at":"2025-12-29T22:03:22.355518-08:00","close_reason":"REJECTED: Fix already on main (81b250ee). Branch is stale - merging would revert 10e79789 (swarm worker tracking fix) and other important commits. No action needed."}
|
||||
{"id":"gt-zwggj","title":"Digest: mol-refinery-patrol","description":"Patrol: Closed 21 merge requests that were already merged to main. All tests passed. Queue now empty.","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-30T01:03:03.874755-08:00","updated_at":"2025-12-30T01:03:03.874755-08:00","closed_at":"2025-12-30T01:03:03.87472-08:00","close_reason":"Squashed from 10 wisps","dependencies":[{"issue_id":"gt-zwggj","depends_on_id":"gt-eph-wnr","type":"parent-child","created_at":"2025-12-30T01:03:03.875706-08:00","created_by":"mayor"}]}
|
||||
{"id":"gt-zwz2f","title":"Digest: mol-deacon-patrol","description":"Patrol 16: routine","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-26T18:45:33.776475-08:00","updated_at":"2025-12-26T18:45:33.776475-08:00","closed_at":"2025-12-26T18:45:33.77643-08:00"}
|
||||
|
||||
Reference in New Issue
Block a user