Add preflight-tests step to mol-polecat-work

Checks tests on main BEFORE starting work. Scotty Principle:
- Quick fix (<15 min): Fix it, commit, continue
- Big fix: File bead, notify Witness, proceed

Closes gt-3zkjw
This commit is contained in:
Steve Yegge
2025-12-28 12:49:48 -08:00
parent 43ef530e95
commit ecfd862dac

View File

@@ -33,7 +33,7 @@ You are an autonomous worker. You:
| Context filling | Use gt handoff to cycle to fresh session |
| Unsure what to do | Mail Witness, don't guess |"""
formula = "mol-polecat-work"
version = 2
version = 3
[[steps]]
id = "load-context"
@@ -131,10 +131,81 @@ If rebase conflicts:
**Exit criteria:** You're on a clean feature branch, rebased on latest main."""
[[steps]]
id = "preflight-tests"
title = "Verify tests pass on main"
needs = ["branch-setup"]
description = """
Check if the codebase is healthy BEFORE starting your work.
**The Scotty Principle:** Don't walk past a broken warp core. But also don't
let someone else's mess consume your entire mission.
**1. Check tests on main:**
```bash
git stash # Save your branch state
git checkout origin/main
go test ./... # Or appropriate test command
```
**2. If tests PASS:**
```bash
git checkout - # Back to your branch
git stash pop # Restore state
```
Continue to implement step.
**3. If tests FAIL on main:**
Make a judgment call:
| Situation | Action |
|-----------|--------|
| Quick fix (<15 min) | Fix it, commit to main, then continue |
| Medium fix (15-60 min) | Fix if it blocks your work, else file bead |
| Big fix (>1 hour) | File bead, notify Witness, proceed with your work |
**Quick fix path:**
```bash
# Fix the issue
git add <files>
git commit -m "fix: <description> (pre-existing failure)"
git push origin main
git checkout -
git stash pop
git rebase origin/main # Get your fix
```
**File and proceed path:**
```bash
bd create --title "Pre-existing test failure: <description>" \
--type bug --priority 1
gt mail send <rig>/witness -s "NOTICE: Main has failing tests" \
-m "Found pre-existing test failures on main.
Filed: <bead-id>
Proceeding with my assigned work ({{issue}})."
git checkout -
git stash pop
```
**Context consideration:**
If fixing pre-existing failures consumed significant context:
```bash
gt handoff -s "Fixed pre-existing failures, ready for assigned work" \
-m "Issue: {{issue}}
Fixed: <what you fixed>
Ready to start: implement step"
```
Fresh session continues from implement.
**Exit criteria:** Tests pass on main (or issue filed), ready to implement."""
[[steps]]
id = "implement"
title = "Implement the solution"
needs = ["branch-setup"]
needs = ["preflight-tests"]
description = """
Do the actual implementation work.