Commit Graph

3054 Commits

Author SHA1 Message Date
Steve Yegge
d250ce71f2 bd sync: 2025-12-21 21:37:51 2025-12-22 13:05:04 -08:00
Steve Yegge
f63d643477 bd sync: 2025-12-21 21:35:34 2025-12-22 13:05:04 -08:00
Steve Yegge
6de17b303c bd sync: 2025-12-21 21:16:59 2025-12-22 13:05:04 -08:00
Steve Yegge
49651725da bd sync: 2025-12-21 21:14:33 2025-12-22 13:05:04 -08:00
Steve Yegge
a1fff365ee bd sync: 2025-12-21 21:03:32 2025-12-22 13:05:04 -08:00
Steve Yegge
455e5cda2c bd sync: 2025-12-21 18:49:09 2025-12-22 13:05:04 -08:00
Steve Yegge
4bf06f2f37 bd sync: 2025-12-21 18:48:48 2025-12-22 13:05:04 -08:00
Steve Yegge
a74ee6e5ed bd sync: 2025-12-21 18:28:51 2025-12-22 13:05:04 -08:00
Steve Yegge
b1a825f5cd bd sync: 2025-12-21 18:05:18 2025-12-22 13:05:04 -08:00
Steve Yegge
a3c1863dab bd sync: 2025-12-21 18:04:59 2025-12-22 13:05:04 -08:00
Steve Yegge
f095eb246b bd sync: 2025-12-21 18:04:27 2025-12-22 13:05:04 -08:00
Steve Yegge
3894f7b4ea bd sync: 2025-12-21 17:53:43 2025-12-22 13:05:04 -08:00
Steve Yegge
62d0b61323 bd sync: 2025-12-21 17:30:06 2025-12-22 13:05:04 -08:00
Steve Yegge
4512916011 bd sync: 2025-12-21 17:26:39 2025-12-22 13:05:04 -08:00
Steve Yegge
4d0d9c6226 bd sync: 2025-12-21 17:26:20 2025-12-22 13:05:04 -08:00
Steve Yegge
d4c89ca77a docs: Add propulsion principle documentation (gt-7hor)
Write canonical documentation for the Universal Gas Town Propulsion
Principle covering:
- The One Rule (hook has work → work happens)
- Why it works (stateless agents, molecule-driven, beads as control plane)
- The sling lifecycle diagram (spawn → attach → execute → burn)
- Agent startup protocol (gt prime → check attachment → execute or wait)
- Propulsion patterns and anti-patterns
- Nondeterministic idempotence

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 13:05:04 -08:00
Steve Yegge
4bf7c980b5 bd sync: add gt-7919 (test failures) and gt-7920 (refinery patrol mol) 2025-12-22 13:02:33 -08:00
Steve Yegge
982b7cb5ed Implement gt sling command (gt-4ev4)
The unified work dispatch command that implements spawn + assign + pin
in one operation, based on the Universal Gas Town Propulsion Principle:
"If you find something on your hook, YOU RUN IT."

Supports:
- Proto names (e.g., gt sling feature polecat/alpha)
- Issue IDs with optional molecule (e.g., gt sling gt-xyz polecat/beta -m bugfix)
- Target addressing (polecat/name, deacon/, witness/, refinery/)
- --wisp flag for ephemeral molecules
- --force flag for hook collision override
- Hook collision detection

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 13:02:33 -08:00
Steve Yegge
df27d6cbb8 Merge polecat/nux: Implement gt mol status command (gt-uym5) 2025-12-22 12:38:32 -08:00
Steve Yegge
cbf4497498 bd sync: close gt-4ev4 2025-12-22 12:36:40 -08:00
Steve Yegge
e1bbd81fb0 Implement gt mol status command (gt-uym5)
Add `gt mol status [target]` command to show what's on an agent's hook:
- Auto-detects current agent from working directory
- Shows pinned bead and attached molecule info
- Displays phase progress with progress bar
- Indicates wisp vs durable molecules
- Provides next action hints

Also adds `mol` alias for the `molecule` command.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:34:13 -08:00
Steve Yegge
fa09ac480b Implement gt sling command (gt-4ev4)
The unified work dispatch command that implements spawn + assign + pin
in one operation, based on the Universal Gas Town Propulsion Principle:
"If you find something on your hook, YOU RUN IT."

Supports:
- Proto names (e.g., gt sling feature polecat/alpha)
- Issue IDs with optional molecule (e.g., gt sling gt-xyz polecat/beta -m bugfix)
- Target addressing (polecat/name, deacon/, witness/, refinery/)
- --wisp flag for ephemeral molecules
- --force flag for hook collision override
- Hook collision detection

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:33:35 -08:00
Steve Yegge
a5ce6046ab docs: Update witness template to use gt nudge/peek
Replaces raw tmux send-keys with gt nudge in spawn processing.
Adds Session Communication section to key commands reference.
Adds warning against raw tmux send-keys.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:33:17 -08:00
Steve Yegge
fbbb487d86 bd sync: 2025-12-22 12:31:59 2025-12-22 12:32:23 -08:00
Steve Yegge
7f2e9aacd0 Add canonical Propulsion Principle documentation (gt-7hor)
Documents the Universal Gas Town Propulsion Principle - the single rule
that drives all agent behavior: "If you find something on your hook,
YOU RUN IT."

Covers:
- The One Rule (hook has work → work happens)
- Why it works (stateless agents, molecule-driven)
- The sling lifecycle diagram
- Agent startup protocol
- Examples and anti-patterns

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:23 -08:00
Steve Yegge
139de2ec37 bd sync: 2025-12-22 12:20:24 2025-12-22 12:32:23 -08:00
Steve Yegge
1e9aa99ca1 bd sync: 2025-12-22 12:19:36 2025-12-22 12:32:23 -08:00
Steve Yegge
c817d1dc6b bd sync: 2025-12-22 12:13:17 2025-12-22 12:32:23 -08:00
Steve Yegge
ae4b37e69c bd sync: 2025-12-22 12:12:57 2025-12-22 12:32:23 -08:00
Steve Yegge
28a818e979 bd sync: 2025-12-22 12:12:32 2025-12-22 12:32:23 -08:00
Steve Yegge
35d7b584aa bd sync: 2025-12-22 03:11:47 2025-12-22 12:32:23 -08:00
Steve Yegge
207981254f Fix wisp storage path: rig root not mayor/rig (gt-nq6j)
Wisps are at <rig>/.beads-wisp/, outside any git clone.
This matches the actual code implementation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:23 -08:00
Steve Yegge
e7ce8b361d bd sync: 2025-12-22 02:59:06 2025-12-22 12:32:23 -08:00
Steve Yegge
d7e5ce77a5 Update wisp-architecture.md: shared storage for rig patrols (gt-nq6j)
- All rig patrols (Deacon, Witness, Refinery) now share mayor/rig/.beads-wisp/
- Removed separate wisp directories for witness/ and refinery/
- Polecats do not use wisps (each assignment has audit value)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:23 -08:00
Steve Yegge
1193a3e42c bd sync: 2025-12-22 02:48:52 2025-12-22 12:32:23 -08:00
Steve Yegge
6502468ba6 bd sync: 2025-12-22 02:37:12 2025-12-22 12:32:23 -08:00
Steve Yegge
fa96fe36a3 bd sync: 2025-12-22 02:14:12 2025-12-22 12:32:23 -08:00
Steve Yegge
9955684da8 bd sync: close gt-3x0z.9 (wisp-based patrol) 2025-12-22 12:32:23 -08:00
Steve Yegge
c9eae75f87 bd sync: 2025-12-22 02:13:56 2025-12-22 12:32:23 -08:00
Steve Yegge
5e2035feb2 Deacon uses wisp-based patrol (gt-3x0z.9)
Daemon changes:
- Remove checkDeaconAttachment() - Deacon self-spawns wisps
- Remove findDeaconPatrolMolecule() - unused
- Remove nudgeDeaconForPatrol() - unused
- Remove DeaconPatrolMolecule const - unused
- Remove beads import - no longer needed

Deacon template changes:
- Update to wisp-based patrol model
- Replace bd mol run with bd mol spawn (wisps by default)
- Remove pinned molecule concept for patrol
- Add Why Wisps section explaining ephemeral design
- Update startup/handoff protocols for wisp-based cycles

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:22 -08:00
Steve Yegge
4c51f41ca9 bd sync: 2025-12-22 02:11:09 2025-12-22 12:32:22 -08:00
Steve Yegge
80f02ac652 Add molecular chemistry documentation (gt-3x0z.9)
New documents:
- docs/molecular-chemistry.md: Comprehensive guide to the chemistry metaphor
  for work composition. Covers all phases (proto/mol/wisp), transitions
  (pour/wisp/squash/burn/distill), polymorphic bond operator, and the
  thermodynamic properties of the work execution engine.

- docs/chemistry-design-changes.md: Implementation roadmap for realizing
  the chemistry UX in Beads and Gas Town. Includes specifications for
  new commands (bd pour, bd wisp, bd pin, bd hook) and migration notes.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:22 -08:00
Steve Yegge
880c92cd57 Complete three-tier config migration (gt-k1lr)
- Add doctor checks for new config architecture:
  - SettingsCheck: Verify rigs have settings/ directory
  - RuntimeGitignoreCheck: Verify .runtime/ is gitignored
  - LegacyGastownCheck: Detect/remove old .gastown/ dirs
- Update .gitignore to include .runtime/
- Update architecture.md with new directory structure
- Update hq.md to clarify PGT vs GGT config locations

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:22 -08:00
Steve Yegge
f3834214c4 bd sync: 2025-12-22 01:33:26 2025-12-22 12:32:22 -08:00
Steve Yegge
4917f35470 Implement three-tier config architecture (gt-k1lr tasks 1-5)
**Architecture changes:**
- Renamed `.gastown/` → `.runtime/` for runtime state (gitignored)
- Added `settings/` directory for rig behavioral config (git-tracked)
- Added `mayor/config.json` for town-level config (MayorConfig type)
- Separated RigConfig (identity) from RigSettings (behavioral)

**File location changes:**
- Town runtime: `~/.gastown/*` → `~/.runtime/*`
- Rig runtime: `<rig>/.gastown/*` → `<rig>/.runtime/*`
- Rig config: `<rig>/.gastown/config.json` → `<rig>/settings/config.json`
- Namepool state: `namepool.json` → `namepool-state.json`

**New types:**
- MayorConfig: town-level behavioral config
- RigSettings: rig behavioral config (merge_queue, theme, namepool)
- RigConfig now identity-only (name, git_url, beads, created_at)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:32:22 -08:00
Steve Yegge
e481d5e8f3 bd sync: 2025-12-22 01:22:33 2025-12-22 12:32:22 -08:00
Steve Yegge
e6a81ab5dd bd sync: 2025-12-22 01:04:51 2025-12-22 12:32:22 -08:00
Steve Yegge
0932cc4218 bd sync: 2025-12-22 01:04:10 2025-12-22 12:32:22 -08:00
Steve Yegge
f21343911f Rename ephemeral -> wisp terminology throughout Gas Town
- .beads-ephemeral/ -> .beads-wisp/
- Rename doctor checks: EphemeralCheck -> WispCheck
- Update all docs to use 'transient' for polecats, 'wisp' for molecules
- Preserve 'ephemeral' only as descriptive adjective for wisps
- Steam engine metaphor: wisps are steam vapors that dissipate

Part of Christmas launch wisp terminology unification.
2025-12-22 12:32:22 -08:00
Steve Yegge
f74f4f85da Fix crew worker mail identity mismatch (gt-2xiv)
Normalize crew/ and polecats/ to canonical form in addressToIdentity():
- gastown/crew/dave -> gastown/dave
- gastown/polecats/Toast -> gastown/Toast

Follows Postels Law: be liberal in what you accept.
2025-12-22 12:32:22 -08:00