From 04c6ba048a797d0d5a4eb0c3ed82ab7114992939 Mon Sep 17 00:00:00 2001 From: Steve Yegge Date: Tue, 23 Dec 2025 18:20:23 -0800 Subject: [PATCH] bd sync: 2025-12-23 18:20:23 --- .beads/issues.jsonl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.beads/issues.jsonl b/.beads/issues.jsonl index f2dd4a82..ff5b0403 100644 --- a/.beads/issues.jsonl +++ b/.beads/issues.jsonl @@ -211,10 +211,13 @@ {"id":"gt-8pcb","title":"Plugin/molecule catalog integration design","description":"Two currently independent systems:\n1. Disk-based plugins (~~/gt/plugins/) - Deacon patrol extensions\n2. Molecule catalog (protos in beads) - bd pour/wisp/bond\n\nInvestigate integration points:\n- User-contributed molecules bonded to catalog\n- Dynamic molecule attachment during execution (e.g., 'attach security sniffer because we noticed condition X')\n- How plugins could contribute protos\n- How protos could trigger plugins\n\nNot blocking launch. Future design investigation.","status":"open","priority":3,"issue_type":"task","created_at":"2025-12-22T21:52:47.897048-08:00","updated_at":"2025-12-22T21:52:47.897048-08:00"} {"id":"gt-8qv3","title":"request-shutdown","description":"Send shutdown request to Witness.\nWait for termination.\n\nThe polecat is now ready to be cleaned up.\nDo not exit directly - wait for Witness to kill the session.\n\nDepends: generate-summary","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-21T21:58:52.600349-08:00","updated_at":"2025-12-21T21:59:10.938756-08:00","closed_at":"2025-12-21T21:59:10.938756-08:00","close_reason":"test cleanup","dependencies":[{"issue_id":"gt-8qv3","depends_on_id":"gt-q6hl","type":"parent-child","created_at":"2025-12-21T21:58:52.603957-08:00","created_by":"stevey"}],"wisp":true} {"id":"gt-8r7","title":"Enhance Mayor CLAUDE.md with GGT milestone tracking","description":"Update ~/ai/CLAUDE.md (Mayor startup context) with:\n\n1. GGT Self-Hosting Milestone section\n - Track progress toward gt replacing town\n - Key blockers: gt-h5n (merge queue), gt-974 (daemon)\n - What \"self-hosting\" means (GGT working on itself)\n\n2. Recent Architecture Decisions\n - Engineer = role, Refinery = place\n - Merge queue in Beads (not branch discovery)\n - Session restart protocol\n\n3. Transition Plan\n - Current: use town commands (PGT)\n - Target: use gt commands (GGT)\n - Switch criteria: gt-b1g closed\n\nKeep it concise - Mayor context should be quick to scan.","status":"open","priority":2,"issue_type":"task","created_at":"2025-12-16T23:12:07.260653-08:00","updated_at":"2025-12-16T23:12:07.260653-08:00","dependencies":[{"issue_id":"gt-8r7","depends_on_id":"gt-h5n","type":"blocks","created_at":"2025-12-16T23:12:15.124842-08:00","created_by":"daemon"}]} -{"id":"gt-8tmz","title":"Molecule Algebra: Work Composition DSL","description":"Implement the molecule algebra - a declarative language for composing, transforming, and executing structured work. Enables mechanical composition without AI.\n\nKey components:\n- Phase verbs (pour, wisp, bond)\n- Composition operators (sequence, parallel, branch, loop, gate)\n- Advice operators (before, after, around)\n- Expansion operators (macros)\n- Aspects (AOP cross-cutting concerns)\n- Selection operators (glob, filter)\n- Condition evaluation\n\nSee docs/molecule-algebra.md for full specification.","status":"open","priority":1,"issue_type":"epic","created_at":"2025-12-23T18:03:48.824827-08:00","updated_at":"2025-12-23T18:03:48.824827-08:00"} +{"id":"gt-8tmz","title":"Molecule Algebra: Work Composition DSL","description":"Implement the molecule algebra - a declarative language for composing, transforming, and executing structured work. Enables mechanical composition without AI.\n\nThe Four-Tier Model:\n Formula (.formula.yaml) → cook → Proto (beads) → pour/wisp → Mol/Wisp\n\nKey components:\n- Formulas: YAML source with composition rules\n- Cook: Pre-expand macros/aspects to flat proto\n- Phase verbs (pour, wisp, bond)\n- Composition operators (sequence, parallel, branch, loop, gate)\n- Advice operators (before, after, around - Lisp style)\n- Expansion operators (macros like Rule of Five)\n- Aspects (AOP cross-cutting concerns)\n- Selection operators (glob, filter)\n- Condition evaluation\n\nSee docs/molecule-algebra.md for full specification.\nExample formulas in .beads/formulas/","status":"open","priority":1,"issue_type":"epic","created_at":"2025-12-23T18:03:48.824827-08:00","updated_at":"2025-12-23T18:19:45.329962-08:00"} {"id":"gt-8tmz.1","title":"Phase verbs: pour and wisp commands","description":"Implement the phase transition verbs:\n- bd pour \u003cproto\u003e - instantiate as persistent mol\n- bd wisp \u003cproto\u003e - instantiate as ephemeral wisp\n- Update bd mol bond to inherit phase from target\n\nThese replace the current --wisp flag with cleaner verb semantics.","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-23T18:03:57.280647-08:00","updated_at":"2025-12-23T18:03:57.280647-08:00","dependencies":[{"issue_id":"gt-8tmz.1","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:03:57.281096-08:00","created_by":"daemon"}]} {"id":"gt-8tmz.10","title":"Rename Engineer in Box to Shiny","description":"Rename mol-engineer-in-box to mol-shiny (or just 'shiny').\n\nMad Max reference - the canonical 'right way to engineer'.\nUpdate all references in docs and code.","status":"open","priority":3,"issue_type":"task","created_at":"2025-12-23T18:04:40.434948-08:00","updated_at":"2025-12-23T18:04:40.434948-08:00","dependencies":[{"issue_id":"gt-8tmz.10","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:04:40.437009-08:00","created_by":"daemon"}]} {"id":"gt-8tmz.11","title":"Rule of Five expansion template","description":"Create rule-of-five as an expansion template:\n- Jeffrey's discovery: agents converge in 4-5 iterations\n- Template expands any step into 5-pass refinement\n- draft → refine-1 → refine-2 → refine-3 → refine-4\n\nFirst example of a macro-style expansion proto.","status":"open","priority":2,"issue_type":"task","created_at":"2025-12-23T18:04:41.438135-08:00","updated_at":"2025-12-23T18:04:41.438135-08:00","dependencies":[{"issue_id":"gt-8tmz.11","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:04:41.439635-08:00","created_by":"daemon"}]} +{"id":"gt-8tmz.12","title":"Formula parser and YAML schema","description":"Implement formula parsing from YAML:\n- Define YAML schema for .formula.yaml files\n- Parse steps, compose rules, vars\n- Support extends for formula inheritance\n- Validate formula structure\n\nSchema should support:\n- formula: name\n- description: text\n- version: number\n- type: workflow|expansion|aspect\n- vars: variable definitions\n- steps: step definitions\n- compose: composition rules","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-23T18:20:02.788306-08:00","updated_at":"2025-12-23T18:20:02.788306-08:00","dependencies":[{"issue_id":"gt-8tmz.12","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:20:02.788811-08:00","created_by":"daemon"}]} +{"id":"gt-8tmz.13","title":"bd cook command: Formula to Proto","description":"Implement the 'bd cook' command:\n\n bd cook shiny-enterprise.formula.yaml\n # Cooking shiny-enterprise...\n # ✓ Cooked proto: shiny-enterprise (30 steps)\n\nProcess:\n1. Parse formula YAML\n2. Resolve 'extends' inheritance\n3. Apply all compose rules in order:\n - expand: macro expansion\n - aspect: apply cross-cutting concerns\n - branch: add parallel paths\n - loop/gate: wire control flow\n - advice: insert before/after steps\n4. Flatten to pure step graph\n5. Store as proto in beads (template label)\n\nOptions:\n- --dry-run: preview without saving\n- --output: specify proto name\n- --purity: show expansion stats (joke flag)","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-23T18:20:03.9306-08:00","updated_at":"2025-12-23T18:20:03.9306-08:00","dependencies":[{"issue_id":"gt-8tmz.13","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:20:03.933113-08:00","created_by":"daemon"},{"issue_id":"gt-8tmz.13","depends_on_id":"gt-8tmz.12","type":"blocks","created_at":"2025-12-23T18:20:11.133013-08:00","created_by":"daemon"}]} +{"id":"gt-8tmz.14","title":"bd formula list/show commands","description":"Implement formula management commands:\n\n bd formula list\n # Lists formulas from all search paths\n\n bd formula show rule-of-five\n # Shows formula details, steps, compose rules\n\nSearch paths (in order):\n1. .beads/formulas/ (project)\n2. ~/gt/.beads/formulas/ (town)\n3. ~/.beads/formulas/ (user)\n4. Built-in formulas (embedded)","status":"open","priority":2,"issue_type":"task","created_at":"2025-12-23T18:20:05.02817-08:00","updated_at":"2025-12-23T18:20:05.02817-08:00","dependencies":[{"issue_id":"gt-8tmz.14","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:20:05.03005-08:00","created_by":"daemon"}]} {"id":"gt-8tmz.2","title":"Advice operators: before, after, around","description":"Implement Lisp-style advice operators for molecules:\n- before(target, step) - insert step before target\n- after(target, step) - insert step after target\n- around(target, wrapper) - wrap target with before/after\n\nSupport glob patterns for targeting (*.implement, shiny.*, etc).","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-23T18:04:30.429759-08:00","updated_at":"2025-12-23T18:04:30.429759-08:00","dependencies":[{"issue_id":"gt-8tmz.2","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:04:30.430206-08:00","created_by":"daemon"},{"issue_id":"gt-8tmz.2","depends_on_id":"gt-8tmz.1","type":"blocks","created_at":"2025-12-23T18:04:49.721471-08:00","created_by":"daemon"}]} {"id":"gt-8tmz.3","title":"Expansion operators: expand and map (macros)","description":"Implement macro-style expansion operators:\n- expand(target, template) - apply template to single step\n- map(molecule, template) - apply template to all matching steps\n\nTemplates use {target} substitution for step references.\nRule of Five is the canonical example.","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-23T18:04:31.472199-08:00","updated_at":"2025-12-23T18:04:31.472199-08:00","dependencies":[{"issue_id":"gt-8tmz.3","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:04:31.472662-08:00","created_by":"daemon"},{"issue_id":"gt-8tmz.3","depends_on_id":"gt-8tmz.1","type":"blocks","created_at":"2025-12-23T18:04:49.809887-08:00","created_by":"daemon"}]} {"id":"gt-8tmz.4","title":"Control flow: loop, gate, branch","description":"Implement control flow operators:\n- loop N { body } - fixed iteration\n- loop until COND { body } - conditional iteration with max bound\n- gate COND { body } - wait for condition\n- branch from/steps/join - parallel paths that rejoin\n\nConditions evaluated mechanically (step status, output fields).","status":"open","priority":2,"issue_type":"task","created_at":"2025-12-23T18:04:33.194896-08:00","updated_at":"2025-12-23T18:04:33.194896-08:00","dependencies":[{"issue_id":"gt-8tmz.4","depends_on_id":"gt-8tmz","type":"parent-child","created_at":"2025-12-23T18:04:33.196543-08:00","created_by":"daemon"},{"issue_id":"gt-8tmz.4","depends_on_id":"gt-8tmz.7","type":"blocks","created_at":"2025-12-23T18:04:49.985527-08:00","created_by":"daemon"}]}