docs: Make 'land the plane' push mandatory and emphatic
CRITICAL FIX: Agents were stopping before git push, saying 'ready to push when you are!' which breaks multi-agent coordination workflows. Changes: - Make push MANDATORY in landing workflow - Add emphatic warnings: NEVER stop before push succeeds - Explicitly state 'ready to push' is a FAILURE - Explain multi-agent coordination impact - Add verification requirements This should prevent agents from leaving work unpushed.
This commit is contained in:
@@ -83,12 +83,14 @@ The 30-second debounce provides a **transaction window** for batch operations -
|
||||
|
||||
## Landing the Plane
|
||||
|
||||
**When the user says "let's land the plane"**, follow this clean session-ending protocol:
|
||||
**When the user says "let's land the plane"**, you MUST complete ALL steps below. The plane is NOT landed until `git push` succeeds. NEVER stop before pushing. NEVER say "ready to push when you are!" - that is a FAILURE.
|
||||
|
||||
**MANDATORY WORKFLOW - COMPLETE ALL STEPS:**
|
||||
|
||||
1. **File beads issues for any remaining work** that needs follow-up
|
||||
2. **Ensure all quality gates pass** (only if code changes were made) - run tests, linters, builds (file P0 issues if broken)
|
||||
3. **Update beads issues** - close finished work, update status
|
||||
4. **Sync and PUSH everything to remote** - Work methodically to ensure both local and remote are synchronized:
|
||||
4. **PUSH TO REMOTE - NON-NEGOTIABLE** - This step is MANDATORY. Execute ALL commands below:
|
||||
```bash
|
||||
# Pull first to catch any remote changes
|
||||
git pull --rebase
|
||||
@@ -101,13 +103,21 @@ The 30-second debounce provides a **transaction window** for batch operations -
|
||||
# Sync the database (exports to JSONL, commits)
|
||||
bd sync
|
||||
|
||||
# CRITICAL: Push everything to remote
|
||||
# MANDATORY: Push everything to remote
|
||||
# DO NOT STOP BEFORE THIS COMMAND COMPLETES
|
||||
git push
|
||||
|
||||
# Verify push succeeded
|
||||
git status # Should show "up to date with origin/main"
|
||||
# MANDATORY: Verify push succeeded
|
||||
git status # MUST show "up to date with origin/main"
|
||||
```
|
||||
**CRITICAL**: The plane has NOT landed until `git push` completes successfully. If you don't push, the work is still on the runway!
|
||||
|
||||
**CRITICAL RULES:**
|
||||
- The plane has NOT landed until `git push` completes successfully
|
||||
- NEVER stop before `git push` - that leaves work stranded locally
|
||||
- NEVER say "ready to push when you are!" - YOU must push, not the user
|
||||
- If `git push` fails, resolve the issue and retry until it succeeds
|
||||
- The user is managing multiple agents - unpushed work breaks their coordination workflow
|
||||
|
||||
5. **Clean up git state** - Clear old stashes and prune dead remote branches:
|
||||
```bash
|
||||
git stash clear # Remove old stashes
|
||||
@@ -118,6 +128,8 @@ The 30-second debounce provides a **transaction window** for batch operations -
|
||||
- Provide a prompt for the user to give to you in the next session
|
||||
- Format: "Continue work on bd-X: [issue title]. [Brief context about what's been done and what's next]"
|
||||
|
||||
**REMEMBER: Landing the plane means EVERYTHING is pushed to remote. No exceptions. No "ready when you are". PUSH IT.**
|
||||
|
||||
**Example "land the plane" session:**
|
||||
|
||||
```bash
|
||||
@@ -131,15 +143,15 @@ golangci-lint run ./...
|
||||
# 3. Close finished issues
|
||||
bd close bd-42 bd-43 --reason "Completed" --json
|
||||
|
||||
# 4. Sync and PUSH everything
|
||||
# 4. PUSH TO REMOTE - MANDATORY, NO STOPPING BEFORE THIS IS DONE
|
||||
git pull --rebase
|
||||
# If conflicts in .beads/beads.jsonl, resolve thoughtfully:
|
||||
# - git checkout --theirs .beads/beads.jsonl (accept remote)
|
||||
# - bd import -i .beads/beads.jsonl (re-import)
|
||||
# - Or manual merge, then import
|
||||
bd sync # Export/import/commit
|
||||
git push # CRITICAL - Must push!
|
||||
git status # Verify "up to date with origin/main"
|
||||
git push # MANDATORY - THE PLANE IS STILL IN THE AIR UNTIL THIS SUCCEEDS
|
||||
git status # MUST verify "up to date with origin/main"
|
||||
|
||||
# 5. Clean up git state
|
||||
git stash clear
|
||||
@@ -158,8 +170,11 @@ bd show bd-44 --json
|
||||
- Summary of what was completed this session
|
||||
- What issues were filed for follow-up
|
||||
- Status of quality gates (all passing / issues filed)
|
||||
- Confirmation that ALL changes have been pushed to remote
|
||||
- Recommended prompt for next session
|
||||
|
||||
**CRITICAL: Never end a "land the plane" session without successfully pushing. The user is coordinating multiple agents and unpushed work causes severe rebase conflicts.**
|
||||
|
||||
## Agent Session Workflow
|
||||
|
||||
**IMPORTANT for AI agents:** When you finish making issue changes, always run:
|
||||
|
||||
Reference in New Issue
Block a user