Commit Graph

609 Commits

Author SHA1 Message Date
Steve Yegge
23600af50c docs: comprehensive hook/sling/handoff/nudge audit
- Update propulsion-principle.md: implementation status now accurate
- Update beads-data-plane.md: correct command syntax
- Fix hook.go: clarify durability semantics, add related commands
- Fix sling.go: use reliable NudgePane instead of raw tmux send-keys
- Add tmux.NudgePane: pane-targeted reliable message delivery

The command menagerie:
  gt hook    = assign (durability)
  gt nudge   = communicate (generic messaging)
  gt sling   = hook + nudge "start working"
  gt handoff = hook + restart (GUPP kicks in)

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 21:17:25 -08:00
Steve Yegge
57179c1e33 fix: gt sling now hooks + runs (no restart), update docs
Corrected sling behavior:
- gt hook: attach only (durability primitive)
- gt sling: attach + inject run prompt (preserve context)
- gt handoff: attach + restart (fresh context via GUPP)

Sling can now target other agents: gt sling <bead> <target>

Updated docs/sling-design.md with full command menagerie.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 21:04:24 -08:00
Steve Yegge
efa2e9a2fe bd sync: 2025-12-24 20:56:35 2025-12-24 20:56:35 -08:00
Steve Yegge
afe67fafbb bd sync: 2025-12-24 20:56:14 2025-12-24 20:56:14 -08:00
Steve Yegge
32cac078e5 refactor: split gt sling into gt hook + gt handoff <bead> (gt-z4bw)
- Add gt hook <bead>: durability primitive, attaches work to hook
- Update gt handoff: accept optional bead arg (detects bead vs role)
- Deprecate gt sling: shows warning, points to new commands
- Update doctor fix hint to reference new commands

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 20:41:51 -08:00
Steve Yegge
c4dda5c055 bd sync: 2025-12-24 20:16:20 2025-12-24 20:17:34 -08:00
Steve Yegge
a697e53cfb bd sync: 2025-12-24 20:08:27 2025-12-24 20:17:34 -08:00
Steve Yegge
9d1ebfc54d bd sync: 2025-12-24 20:03:43 2025-12-24 20:03:43 -08:00
Steve Yegge
48e2f16b2f bd sync: 2025-12-24 20:03:26 2025-12-24 20:03:26 -08:00
Steve Yegge
94754f6b93 bd sync: 2025-12-24 19:52:12 2025-12-24 19:52:12 -08:00
Steve Yegge
6be4e0add6 bd sync: 2025-12-24 19:51:09 2025-12-24 19:51:09 -08:00
Steve Yegge
5199fc33cf bd sync: 2025-12-24 17:57:16 2025-12-24 17:57:25 -08:00
Steve Yegge
26c128c137 bd sync: 2025-12-24 17:40:18 2025-12-24 17:57:25 -08:00
Steve Yegge
7757316209 bd sync: 2025-12-24 16:42:06 2025-12-24 17:57:25 -08:00
Steve Yegge
b2f1b58f13 feat: implement gt sling and wisp hook system (gt-qvn7.1)
Phase 1 of tracer bullet: Slinging Handoff

- Add internal/wisp package for ephemeral work attachment
- Add gt sling command to attach work and restart
- Update gt prime to check/burn slung work on hook
- Add .beads-wisp/ to gitignore
2025-12-24 16:08:15 -08:00
Steve Yegge
7b256372b9 bd sync: 2025-12-24 16:08:02 2025-12-24 16:08:02 -08:00
Steve Yegge
e1692f057d bd sync: 2025-12-24 15:56:01 2025-12-24 15:56:01 -08:00
Steve Yegge
7d01124948 bd sync: 2025-12-24 15:54:44 2025-12-24 15:54:44 -08:00
Steve Yegge
8d4f4762bc bd sync: 2025-12-24 15:40:28 2025-12-24 15:40:28 -08:00
Steve Yegge
c8aca1528c bd sync: 2025-12-24 15:39:48 2025-12-24 15:39:48 -08:00
Steve Yegge
5b27d337fe bd sync: 2025-12-24 14:34:15 2025-12-24 14:34:15 -08:00
Steve Yegge
e256bb8f08 bd sync: 2025-12-24 14:28:44 2025-12-24 14:28:44 -08:00
Steve Yegge
7419a459c6 bd sync: 2025-12-24 14:27:53 2025-12-24 14:27:53 -08:00
Steve Yegge
53e6bf7618 bd sync: 2025-12-24 14:19:02 2025-12-24 14:19:02 -08:00
Steve Yegge
932e6a7266 bd sync: 2025-12-24 14:07:08 2025-12-24 14:07:08 -08:00
Steve Yegge
8e1a2feee9 bd sync: 2025-12-24 14:06:05 2025-12-24 14:06:30 -08:00
Steve Yegge
c10709dc3f terminology: spawn → pour/wisp for molecules (gt-9uy0)
Molecules use chemistry verbs, not spawn:
- pour = create persistent mol (liquid)
- wisp = create ephemeral wisp (vapor)
- spawn = polecats only (workers)

Changes:
- Delete chemistry-design-changes.md (migration doc)
- Remove migration tables from sling-design.md
- Update bond tables: Spawn → Pour/Wisp
- Rename spawnMoleculeFromProto → pourMoleculeFromProto
- Rename spawnMoleculeOnIssue → runMoleculeOnIssue
- Update templates: bd mol spawn → bd wisp
- Update prime.go: commands and messages
- Clean all docs and comments

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 14:04:19 -08:00
Steve Yegge
0acad8af25 bd sync: 2025-12-24 14:02:17 2025-12-24 14:02:17 -08:00
Steve Yegge
1e567b264e bd sync: 2025-12-24 13:51:59 2025-12-24 13:51:59 -08:00
Steve Yegge
944289af8e bd sync: 2025-12-24 13:47:43 2025-12-24 13:47:43 -08:00
Steve Yegge
618832ee0c bd sync: 2025-12-24 13:47:01 2025-12-24 13:47:01 -08:00
Steve Yegge
a057ca8b8c bd sync: 2025-12-24 13:25:19 2025-12-24 13:25:19 -08:00
Steve Yegge
fe644a8cf8 bd sync: 2025-12-24 13:21:08 2025-12-24 13:21:08 -08:00
Steve Yegge
5fc283e56a bd sync: 2025-12-24 13:08:24 2025-12-24 13:08:24 -08:00
Steve Yegge
82b4a3cb1d bd sync: 2025-12-24 13:06:49 2025-12-24 13:06:49 -08:00
Steve Yegge
9fd2ddfbec bd sync: 2025-12-24 13:05:00 2025-12-24 13:05:00 -08:00
Steve Yegge
b551805554 bd sync: 2025-12-24 13:01:09 2025-12-24 13:01:27 -08:00
Steve Yegge
c116613a72 bd sync: 2025-12-24 13:00:09 2025-12-24 13:00:09 -08:00
Steve Yegge
06ba0fe131 bd sync: 2025-12-24 12:58:10 2025-12-24 12:58:10 -08:00
Steve Yegge
c087cb6324 bd sync: 2025-12-24 12:52:15 2025-12-24 12:52:15 -08:00
Steve Yegge
4c31c89608 bd sync: 2025-12-24 12:50:17 2025-12-24 12:50:17 -08:00
Steve Yegge
ae01a666a8 bd sync: 2025-12-24 12:41:04 2025-12-24 12:41:04 -08:00
Steve Yegge
7f373c60a1 bd sync: 2025-12-24 12:38:33 2025-12-24 12:38:33 -08:00
Steve Yegge
d7c96ddbfa bd sync: 2025-12-24 00:23:53 2025-12-24 00:24:22 -08:00
Steve Yegge
e7f9dc8576 docs: design Deacon molecule health-scan step (gt-gaxo.5)
ZFC cleanup: health checking belongs in Deacon molecule, not Go code.

Updated health-scan step with:
- Specific commands: gt witness status, gt refinery status
- Signal assessment table for Claude to interpret
- Cycle tracking for persistent unresponsive state
- Decision matrix with suggested (not hardcoded) thresholds
- Restart and escalation workflows

Key ZFC principle: Claude makes the judgment call about what is
stuck or unresponsive - no hardcoded time.Duration in Go.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 00:23:40 -08:00
Steve Yegge
bca357e4eb refactor: remove polecat state derivation from issue status (gt-gaxo.4)
ZFC cleanup: Go should be message transport, not decision-maker.

Before: loadFromBeads used switch on issue.Status to derive polecat
state (open/in_progress -> working, closed -> done).

After: Simple rule - has issue assigned = working, no issue = idle.
We do not interpret what issue.Status means; that is for Claude in
the Deacon molecule.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 00:21:31 -08:00
Steve Yegge
6552b439ba bd sync: 2025-12-24 00:21:19 2025-12-24 00:21:19 -08:00
Steve Yegge
88165429ff bd sync: 2025-12-24 00:17:37 2025-12-24 00:18:02 -08:00
Steve Yegge
b6817899b4 refactor: ZFC cleanup - move Go heuristics to Deacon molecule (gt-gaxo)
Remove Go code that makes workflow decisions. All health checking,
staleness detection, nudging, and escalation belongs in the Deacon
molecule where Claude executes it.

Removed:
- internal/daemon/backoff.go (190 lines) - exponential backoff decisions
- internal/doctor/stale_check.go (284 lines) - staleness detection
- IsFresh/IsStale/IsVeryStale from keepalive.go
- pokeMayor, pokeWitnesses, pokeWitness from daemon.go
- Heartbeat staleness classification from pokeDeacon

Changed:
- Lifecycle parsing now uses structured body (JSON or simple text)
  instead of keyword matching on subject line
- Daemon now only ensures Deacon is running and sends simple heartbeats
- No backoff, no staleness classification, no decision-making

Total: ~800 lines removed from Go code

The Deacon molecule will handle all health checking, nudging, and
escalation. Go is now just a message router.

See gt-gaxo epic for full rationale.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 00:11:15 -08:00
Steve Yegge
0f88c793f8 docs: add witness patrol theory of operation
Documents the Claude-driven execution model:
- Molecules are playbooks, not auto-executing code
- Mail-based coordination between agents
- Nudge escalation matrix for stuck polecats
- State persistence in handoff bead

See gt-poxd for handoff bead implementation.

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-24 00:10:32 -08:00