From 5732218da351f9450420f999c518984e6bd983d6 Mon Sep 17 00:00:00 2001 From: Steve Yegge Date: Mon, 22 Dec 2025 21:43:27 -0800 Subject: [PATCH] Clean up redundant 'ephemeral' terminology in wisp docs (gt-3x0z.11) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove redundant phrases like 'ephemeral wisp' and 'ephemeral molecule' since wisp already implies ephemeral. Keep 'ephemeral' only where it is definitional (explaining what wisps are) or contrasting (vs durable mol). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- docs/chemistry-design-changes.md | 4 ++-- docs/molecules.md | 2 +- docs/sling-design.md | 6 +++--- internal/beads/builtin_molecules.go | 2 +- internal/cmd/sling.go | 6 +++--- internal/cmd/spawn.go | 2 +- internal/templates/roles/deacon.md.tmpl | 14 +++++++------- prompts/roles/polecat.md | 2 +- 8 files changed, 19 insertions(+), 19 deletions(-) diff --git a/docs/chemistry-design-changes.md b/docs/chemistry-design-changes.md index f735b07e..451b0143 100644 --- a/docs/chemistry-design-changes.md +++ b/docs/chemistry-design-changes.md @@ -61,7 +61,7 @@ bd pour mol-feature --var name=auth ### 2. `bd wisp` Command -**Purpose:** Instantiate a proto as an ephemeral wisp (vapor phase). +**Purpose:** Instantiate a proto as a wisp (vapor phase). **Syntax:** ```bash @@ -270,7 +270,7 @@ bd mol run mol-deacon-patrol ```markdown ## Patrol Cycle (Wisp-Based) -Each patrol cycle uses ephemeral wisps: +Each patrol cycle uses wisps: ```bash # 1. Spawn wisp for this cycle diff --git a/docs/molecules.md b/docs/molecules.md index 4904316f..4d248937 100644 --- a/docs/molecules.md +++ b/docs/molecules.md @@ -101,7 +101,7 @@ bd mol bond [--wisp] [--assignee=] # Create a durable Mol from engineer-in-box proto bd mol bond mol-engineer-in-box -# Create an ephemeral Wisp assigned to a polecat +# Create a Wisp assigned to a polecat bd mol bond mol-quick-fix --wisp --assignee=gastown/polecats/toast # Bond a proto with a specific template variant diff --git a/docs/sling-design.md b/docs/sling-design.md index 8139c612..d7f56892 100644 --- a/docs/sling-design.md +++ b/docs/sling-design.md @@ -55,7 +55,7 @@ gt sling gt-epic-123 refinery/ | Molecule proto | none | `gt sling feature polecat/alpha` | Spawns from proto | | Issue/Bead | `gt-*`, `bd-*` | `gt sling gt-xyz polecat/alpha` | Work item | | Epic | `gt-*` (type=epic) | `gt sling gt-epic refinery/` | Batch of issues | -| Wisp | `--wisp` flag | `gt sling patrol deacon/ --wisp` | Ephemeral molecule | +| Wisp | `--wisp` flag | `gt sling patrol deacon/ --wisp` | Wisp (no audit trail) | ### What Happens When You Sling? @@ -125,7 +125,7 @@ Arguments: target Agent address (polecat/name, deacon/, witness/, refinery/) Flags: - --wisp Create ephemeral molecule (burned on complete, squashed to digest) + --wisp Create wisp (burned on complete, squashed to digest) --molecule, -m Specify molecule proto when slinging an issue --priority, -p Override priority (P0-P4) --force Re-sling even if hook already has work @@ -133,7 +133,7 @@ Flags: Examples: gt sling feature polecat/alpha # Spawn feature mol, sling to alpha gt sling gt-xyz polecat/beta -m bugfix # Sling issue with bugfix workflow - gt sling patrol deacon/ --wisp # Ephemeral patrol wisp + gt sling patrol deacon/ --wisp # Patrol wisp gt sling gt-epic-batch refinery/ # Batch work to refinery ``` diff --git a/internal/beads/builtin_molecules.go b/internal/beads/builtin_molecules.go index 1a4588ea..8df9c686 100644 --- a/internal/beads/builtin_molecules.go +++ b/internal/beads/builtin_molecules.go @@ -1136,7 +1136,7 @@ git push origin HEAD - COMPLETED: ` + "`bd close `" + ` - BLOCKED/REFACTOR/ESCALATE: ` + "`bd update --status=deferred`" + ` -3. Burn this session wisp (ephemeral, no audit needed): +3. Burn this session wisp (no audit needed): ` + "```" + `bash bd mol burn ` + "```" + ` diff --git a/internal/cmd/sling.go b/internal/cmd/sling.go index a44c5937..bbeced40 100644 --- a/internal/cmd/sling.go +++ b/internal/cmd/sling.go @@ -26,7 +26,7 @@ import ( // Sling command flags var ( - slingWisp bool // Create ephemeral molecule (wisp) + slingWisp bool // Create wisp instead of durable mol slingMolecule string // Molecule proto when slinging an issue slingPriority int // Override priority (P0-P4) slingForce bool // Re-sling even if hook has work @@ -76,13 +76,13 @@ TARGET FORMATS: Examples: gt sling feature gastown/Toast # Spawn feature, sling to Toast gt sling gt-abc gastown/Nux -m bugfix # Issue with workflow - gt sling patrol deacon/ --wisp # Ephemeral patrol wisp`, + gt sling patrol deacon/ --wisp # Patrol wisp`, Args: cobra.ExactArgs(2), RunE: runSling, } func init() { - slingCmd.Flags().BoolVar(&slingWisp, "wisp", false, "Create ephemeral molecule (burned on complete)") + slingCmd.Flags().BoolVar(&slingWisp, "wisp", false, "Create wisp (burned on complete)") slingCmd.Flags().StringVarP(&slingMolecule, "molecule", "m", "", "Molecule proto when slinging an issue") slingCmd.Flags().IntVarP(&slingPriority, "priority", "p", -1, "Override priority (0-4)") slingCmd.Flags().BoolVar(&slingForce, "force", false, "Re-sling even if hook has work") diff --git a/internal/cmd/spawn.go b/internal/cmd/spawn.go index 8ebb14fd..2d3a0259 100644 --- a/internal/cmd/spawn.go +++ b/internal/cmd/spawn.go @@ -569,7 +569,7 @@ type MoleculeContext struct { RootIssueID string // The spawned molecule root issue TotalSteps int // Total number of steps in the molecule StepNumber int // Which step this is (1-indexed) - IsWisp bool // True if this is an ephemeral wisp molecule + IsWisp bool // True if this is a wisp (not durable mol) } // buildWorkAssignmentMail creates a work assignment mail message for a polecat. diff --git a/internal/templates/roles/deacon.md.tmpl b/internal/templates/roles/deacon.md.tmpl index 1e7c67b2..53f79be5 100644 --- a/internal/templates/roles/deacon.md.tmpl +++ b/internal/templates/roles/deacon.md.tmpl @@ -5,8 +5,8 @@ ## Your Role: DEACON (Patrol Executor) You are the **Deacon** - the patrol executor for Gas Town. You execute the -`mol-deacon-patrol` molecule as ephemeral wisps in a loop, monitoring agents -and handling lifecycle events. +`mol-deacon-patrol` molecule as wisps in a loop, monitoring agents and +handling lifecycle events. ## Architecture @@ -22,8 +22,8 @@ Go Daemon (watches you, auto-starts you if down) ``` **Key insight**: You are an AI agent executing a wisp-based patrol loop. Each -patrol cycle is an ephemeral wisp that gets squashed to a digest when complete. -This keeps beads clean while maintaining an audit trail. +patrol cycle is a wisp that gets squashed to a digest when complete. This keeps +beads clean while maintaining an audit trail. ## Patrol Molecule: mol-deacon-patrol @@ -47,7 +47,7 @@ You wake up when: ## Patrol Execution Protocol (Wisp-Based) -Each patrol cycle uses an ephemeral wisp: +Each patrol cycle uses a wisp: ### 1. Spawn a Wisp for This Cycle ```bash @@ -55,8 +55,8 @@ Each patrol cycle uses an ephemeral wisp: bd mol spawn mol-deacon-patrol --assignee=deacon ``` -This creates an ephemeral patrol instance. Note: wisps don't pin because they're -short-lived and idempotent. +This creates a patrol wisp. Note: wisps don't pin because they're short-lived +and idempotent. ### 2. Execute Each Step diff --git a/prompts/roles/polecat.md b/prompts/roles/polecat.md index de1ac601..c0a4414e 100644 --- a/prompts/roles/polecat.md +++ b/prompts/roles/polecat.md @@ -110,7 +110,7 @@ Understanding the difference helps contextualize your place in the system: | **Used by** | Polecats, epics | Deacon, Witness, Refinery | **You use molecules** - your work has audit value and persists. -**Patrol roles use wisps** - their cycles are ephemeral. +**Patrol roles use wisps** - no audit trail needed. ---