forge-workflow 0.0.8 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/commands/dev.md +2 -2
- package/.claude/commands/plan.md +2 -2
- package/.claude/commands/premerge.md +2 -2
- package/.claude/commands/review.md +5 -2
- package/.claude/commands/ship.md +6 -5
- package/.claude/commands/status.md +4 -4
- package/.claude/rules/greptile-review-process.md +4 -4
- package/.cline/workflows/dev.md +2 -2
- package/.cline/workflows/plan.md +2 -2
- package/.cline/workflows/premerge.md +2 -2
- package/.cline/workflows/review.md +5 -2
- package/.cline/workflows/ship.md +6 -5
- package/.cline/workflows/status.md +4 -4
- package/.codex/skills/dev/SKILL.md +2 -2
- package/.codex/skills/plan/SKILL.md +2 -2
- package/.codex/skills/premerge/SKILL.md +2 -2
- package/.codex/skills/review/SKILL.md +5 -2
- package/.codex/skills/ship/SKILL.md +6 -5
- package/.codex/skills/status/SKILL.md +4 -4
- package/.cursor/commands/dev.md +2 -2
- package/.cursor/commands/plan.md +2 -2
- package/.cursor/commands/premerge.md +2 -2
- package/.cursor/commands/review.md +5 -2
- package/.cursor/commands/ship.md +6 -5
- package/.cursor/commands/status.md +4 -4
- package/.github/prompts/dev.prompt.md +2 -2
- package/.github/prompts/plan.prompt.md +2 -2
- package/.github/prompts/premerge.prompt.md +2 -2
- package/.github/prompts/review.prompt.md +5 -2
- package/.github/prompts/ship.prompt.md +6 -5
- package/.github/prompts/status.prompt.md +4 -4
- package/.github/workflows/beads-to-github.yml +44 -11
- package/.github/workflows/github-to-beads.yml +11 -8
- package/.kilocode/workflows/dev.md +2 -2
- package/.kilocode/workflows/plan.md +2 -2
- package/.kilocode/workflows/premerge.md +2 -2
- package/.kilocode/workflows/review.md +5 -2
- package/.kilocode/workflows/ship.md +6 -5
- package/.kilocode/workflows/status.md +4 -4
- package/.opencode/commands/dev.md +2 -2
- package/.opencode/commands/plan.md +2 -2
- package/.opencode/commands/premerge.md +2 -2
- package/.opencode/commands/review.md +5 -2
- package/.opencode/commands/ship.md +6 -5
- package/.opencode/commands/status.md +4 -4
- package/.roo/commands/dev.md +2 -2
- package/.roo/commands/plan.md +2 -2
- package/.roo/commands/premerge.md +2 -2
- package/.roo/commands/review.md +5 -2
- package/.roo/commands/ship.md +6 -5
- package/.roo/commands/status.md +4 -4
- package/AGENTS.md +10 -9
- package/CLAUDE.md +12 -0
- package/README.md +12 -6
- package/bin/forge.js +24 -8
- package/docs/BEADS_GITHUB_SYNC.md +32 -2
- package/docs/EXAMPLES.md +22 -22
- package/docs/ROADMAP.md +3 -3
- package/docs/TOOLCHAIN.md +150 -160
- package/lib/agents/codex.plugin.json +3 -0
- package/lib/agents-config.js +18 -12
- package/lib/beads-bootstrap.js +225 -0
- package/lib/beads-health-check.js +55 -10
- package/lib/beads-setup.js +104 -28
- package/lib/beads-sync-scaffold.js +11 -6
- package/lib/codex-skills.js +54 -1
- package/lib/commands/_issue.js +11 -1
- package/lib/commands/issues.js +49 -0
- package/lib/commands/plan.js +5 -2
- package/lib/commands/recommend.js +22 -1
- package/lib/commands/setup.js +247 -27
- package/lib/commands/ship.js +188 -5
- package/lib/commands/status.js +187 -19
- package/lib/commands/team.js +11 -1
- package/lib/commands/test.js +125 -25
- package/lib/commands/validate.js +232 -9
- package/lib/commands/worktree.js +27 -54
- package/lib/dep-guard/keyword-ripple.js +184 -0
- package/lib/detect-worktree.js +9 -10
- package/lib/forge-issues.js +326 -0
- package/lib/issue-sync/authority.js +100 -0
- package/lib/issue-sync/github-pull.js +184 -0
- package/lib/issue-sync/import-primitives.js +98 -0
- package/lib/issue-sync/legacy-link-bridge.js +436 -0
- package/lib/issue-sync/link-store.js +292 -0
- package/lib/issue-sync/project-github.js +123 -0
- package/lib/issue-sync/reconcile.js +195 -0
- package/lib/issue-sync/schema.js +126 -0
- package/lib/lefthook-check.js +5 -2
- package/lib/project-memory.js +564 -0
- package/lib/runtime-health.js +100 -12
- package/lib/setup-action-log.js +2 -0
- package/lib/setup-summary-renderer.js +15 -11
- package/lib/smart-status/conflicts.js +205 -0
- package/lib/smart-status/scoring.js +177 -0
- package/lib/status/beads-snapshot.js +102 -0
- package/lib/status/presenter.js +65 -0
- package/lib/workflow/enforce-stage.js +14 -8
- package/lib/workflow/state-manager.js +349 -0
- package/package.json +12 -4
- package/scripts/beads-context.sh +124 -5
- package/scripts/beads-context.test.js +21 -4
- package/scripts/beads-migrate-to-dolt.sh +7 -0
- package/scripts/beads-upgrade-smoke.sh +263 -0
- package/scripts/behavioral-judge.sh +115 -11
- package/scripts/benchmark.js +349 -63
- package/scripts/dep-guard-analyze.js +52 -17
- package/scripts/dep-guard-keyword-ripple.js +29 -0
- package/scripts/dep-guard-render-review.js +86 -0
- package/scripts/dep-guard.sh +45 -222
- package/scripts/forge-team/lib/hooks.sh +1 -1
- package/scripts/forge-team/lib/sync-github.sh +160 -28
- package/scripts/forge-team/lib/verify.sh +1 -1
- package/scripts/forge-team/lib/workload.sh +56 -27
- package/scripts/forge-team/tests/sync-github.test.sh +195 -58
- package/scripts/forge-team/tests/workload.test.sh +35 -4
- package/scripts/github-beads-sync/index.mjs +122 -98
- package/scripts/github-beads-sync/mapping.mjs +54 -0
- package/scripts/github-beads-sync/reverse-sync-cli.mjs +2 -2
- package/scripts/github-beads-sync/reverse-sync.mjs +31 -7
- package/scripts/github-beads-sync/run-bd.mjs +4 -2
- package/scripts/lib/beads-migrate-to-dolt.mjs +503 -0
- package/scripts/preflight.sh +181 -0
- package/scripts/smart-status-score.js +31 -0
- package/scripts/smart-status-sessions.js +51 -0
- package/scripts/smart-status.sh +84 -330
- package/scripts/sync-agentic-workflow.js +48 -0
- package/scripts/sync-utils.sh +39 -0
- package/scripts/test-ci-shard.js +244 -0
- package/scripts/test-dashboard.js +188 -52
- package/scripts/test-full-suite.js +186 -0
- package/scripts/test-profile.js +278 -0
- package/scripts/test.js +335 -38
- package/scripts/validate.js +143 -0
- package/scripts/validate.sh +18 -1
package/.claude/commands/dev.md
CHANGED
|
@@ -69,8 +69,8 @@ Do NOT write any code until ALL confirmed:
|
|
|
69
69
|
Before starting the per-task loop, check for cross-developer conflicts:
|
|
70
70
|
|
|
71
71
|
```bash
|
|
72
|
-
# Auto-sync to get latest team state
|
|
73
|
-
|
|
72
|
+
# Auto-sync to get latest team state (non-blocking)
|
|
73
|
+
forge sync || true
|
|
74
74
|
|
|
75
75
|
# Check for conflicts with the current beads issue
|
|
76
76
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
package/.claude/commands/plan.md
CHANGED
|
@@ -57,7 +57,7 @@ Before proceeding to Phase 1, check for cross-developer conflicts:
|
|
|
57
57
|
|
|
58
58
|
```bash
|
|
59
59
|
# Auto-sync to get latest team state
|
|
60
|
-
|
|
60
|
+
forge sync || true
|
|
61
61
|
|
|
62
62
|
# Check for conflicts with this issue's planned work area
|
|
63
63
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -107,7 +107,7 @@ If merge conflicts or unmet dependencies are found:
|
|
|
107
107
|
Before starting planning, verify team identity is mapped:
|
|
108
108
|
|
|
109
109
|
```bash
|
|
110
|
-
|
|
110
|
+
forge team verify 2>&1 || true
|
|
111
111
|
```
|
|
112
112
|
|
|
113
113
|
If verify reports issues, address them before proceeding (the output will include `FORGE_AGENT_7f3a:PROMPT:` directives with exact commands to run).
|
|
@@ -94,7 +94,7 @@ git commit -m "docs: update documentation for <feature-name>
|
|
|
94
94
|
git push
|
|
95
95
|
```
|
|
96
96
|
|
|
97
|
-
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.).
|
|
97
|
+
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.). Poll for up to 60 seconds. If checks are still pending after that, stop and ask the user to return to `/premerge <pr-number>` later. If new Greptile comments appear on the doc changes, run `/review <pr-number>` again.
|
|
98
98
|
|
|
99
99
|
### Step 4: Sync Beads
|
|
100
100
|
|
|
@@ -153,7 +153,7 @@ Do NOT suggest merging.
|
|
|
153
153
|
- README.md: Features list updated
|
|
154
154
|
- CLAUDE.md: USER section updated with new pattern
|
|
155
155
|
- Committed: docs: update documentation for auth-refresh
|
|
156
|
-
✓ CI re-triggered after doc push —
|
|
156
|
+
✓ CI re-triggered after doc push — checks passed within the 60 second poll window
|
|
157
157
|
✓ Beads synced
|
|
158
158
|
|
|
159
159
|
✅ PR #89 is ready to merge
|
|
@@ -298,10 +298,13 @@ git push
|
|
|
298
298
|
### Step 9: Verify ALL Checks Pass
|
|
299
299
|
|
|
300
300
|
```bash
|
|
301
|
-
#
|
|
301
|
+
# Check status immediately, then poll for at most 60 seconds
|
|
302
302
|
gh pr checks <pr-number>
|
|
303
303
|
|
|
304
|
-
#
|
|
304
|
+
# If checks are still pending after 60 seconds: STOP and tell the user to return
|
|
305
|
+
# when CI finishes or new review feedback appears.
|
|
306
|
+
#
|
|
307
|
+
# Ensure all completed status checks are green:
|
|
305
308
|
# ✓ GitHub Actions workflows
|
|
306
309
|
# ✓ Greptile review (no unresolved critical comments)
|
|
307
310
|
# ✓ SonarCloud quality gate
|
package/.claude/commands/ship.md
CHANGED
|
@@ -166,10 +166,10 @@ After PR is created, sync issue state to GitHub and verify 1:1 mapping:
|
|
|
166
166
|
|
|
167
167
|
```bash
|
|
168
168
|
# Sync issue state to GitHub
|
|
169
|
-
|
|
169
|
+
forge team sync 2>&1 || true
|
|
170
170
|
|
|
171
171
|
# Verify 1:1 mapping
|
|
172
|
-
|
|
172
|
+
forge team verify 2>&1 || true
|
|
173
173
|
```
|
|
174
174
|
|
|
175
175
|
## Example Output
|
|
@@ -184,9 +184,10 @@ bash scripts/forge-team/index.sh verify 2>&1 || true
|
|
|
184
184
|
- Beads linked: forge-xyz
|
|
185
185
|
- Implementation details in collapsible section
|
|
186
186
|
|
|
187
|
-
⏸️ PR created,
|
|
187
|
+
⏸️ PR created, checks started (Greptile, SonarCloud, GitHub Actions)
|
|
188
|
+
Poll for up to 60 seconds. If checks are still pending, stop here.
|
|
188
189
|
|
|
189
|
-
Next: /review <pr-number> (
|
|
190
|
+
Next: /review <pr-number> (when automated checks complete or new feedback appears)
|
|
190
191
|
```
|
|
191
192
|
|
|
192
193
|
## Integration with Workflow
|
|
@@ -208,5 +209,5 @@ Stage 7: /verify → Post-merge CI check on main
|
|
|
208
209
|
- **Fill every section**: Even if "N/A" — empty/missing sections cause review friction
|
|
209
210
|
- **Include "Closes beads-xxx"**: Required for auto-close in /verify
|
|
210
211
|
- **Concrete data only**: Test counts, file paths, commit SHAs — not placeholder text
|
|
211
|
-
- **
|
|
212
|
+
- **Poll briefly, then stop**: Check PR status for up to 60 seconds, then hand off if checks are still pending
|
|
212
213
|
- **NO auto-merge**: Always wait for /review phase
|
|
@@ -20,7 +20,7 @@ This command helps you understand the current state of the project before starti
|
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
# Sync team state before showing status
|
|
23
|
-
|
|
23
|
+
forge sync || true
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
### Step 1: Smart Status (ranked issues with conflict detection)
|
|
@@ -28,7 +28,7 @@ bash scripts/sync-utils.sh auto-sync
|
|
|
28
28
|
```bash
|
|
29
29
|
bash scripts/smart-status.sh
|
|
30
30
|
```
|
|
31
|
-
This
|
|
31
|
+
This command dynamically computes and displays all issues ranked by composite score (priority, dependency impact, type, staleness, epic proximity). Output includes active sessions, conflict risk annotations, and grouped categories. No manual querying needed.
|
|
32
32
|
|
|
33
33
|
For full context on any issue: `bd show <id>`
|
|
34
34
|
|
|
@@ -77,10 +77,10 @@ Show current developer's active work and team overview:
|
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
79
|
# Show my active issues
|
|
80
|
-
|
|
80
|
+
forge team workload --me 2>&1 || true
|
|
81
81
|
|
|
82
82
|
# One-line team summary
|
|
83
|
-
|
|
83
|
+
forge team dashboard 2>&1 | head -5 || true
|
|
84
84
|
```
|
|
85
85
|
|
|
86
86
|
## Next Steps
|
|
@@ -131,7 +131,7 @@ bash .claude/scripts/greptile-resolve.sh stats <pr-number>
|
|
|
131
131
|
|
|
132
132
|
**Should show**: "✓ All Greptile threads resolved!"
|
|
133
133
|
|
|
134
|
-
### Step 4: Push Changes &
|
|
134
|
+
### Step 4: Push Changes & Poll Briefly for Re-review
|
|
135
135
|
|
|
136
136
|
```bash
|
|
137
137
|
git push
|
|
@@ -188,7 +188,7 @@ $ git push
|
|
|
188
188
|
- **Reply to EACH comment thread** using the script (not as separate PR comment)
|
|
189
189
|
- **Mark EACH thread as resolved** after fixing using the script
|
|
190
190
|
- **Track progress** (X of Y fixed) in your notes
|
|
191
|
-
- **
|
|
191
|
+
- **Poll for Greptile re-review for at most 60 seconds** after pushing fixes, then stop and hand off if it is still pending
|
|
192
192
|
- **Use comment ID for replies**, thread ID for resolving
|
|
193
193
|
- **Commit fixes BEFORE replying** so you can reference commit SHA
|
|
194
194
|
|
|
@@ -251,7 +251,7 @@ The `/review` command should now include these steps:
|
|
|
251
251
|
- Fix each issue
|
|
252
252
|
- Reply and resolve systematically
|
|
253
253
|
3. Verify all threads resolved before declaring review complete
|
|
254
|
-
4. Push changes and
|
|
254
|
+
4. Push changes and poll briefly for Greptile re-review
|
|
255
255
|
|
|
256
256
|
---
|
|
257
257
|
|
|
@@ -271,7 +271,7 @@ The `/review` command should now include these steps:
|
|
|
271
271
|
|
|
272
272
|
### Greptile score not updating after fixes
|
|
273
273
|
**Cause**: Must push commits to trigger re-analysis
|
|
274
|
-
**Solution**: `git push
|
|
274
|
+
**Solution**: `git push`, check once immediately, and poll for up to 60 seconds. If Greptile is still pending after that, stop and wait for the user to resume later.
|
|
275
275
|
|
|
276
276
|
---
|
|
277
277
|
|
package/.cline/workflows/dev.md
CHANGED
|
@@ -66,8 +66,8 @@ Do NOT write any code until ALL confirmed:
|
|
|
66
66
|
Before starting the per-task loop, check for cross-developer conflicts:
|
|
67
67
|
|
|
68
68
|
```bash
|
|
69
|
-
# Auto-sync to get latest team state
|
|
70
|
-
|
|
69
|
+
# Auto-sync to get latest team state (non-blocking)
|
|
70
|
+
forge sync || true
|
|
71
71
|
|
|
72
72
|
# Check for conflicts with the current beads issue
|
|
73
73
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
package/.cline/workflows/plan.md
CHANGED
|
@@ -54,7 +54,7 @@ Before proceeding to Phase 1, check for cross-developer conflicts:
|
|
|
54
54
|
|
|
55
55
|
```bash
|
|
56
56
|
# Auto-sync to get latest team state
|
|
57
|
-
|
|
57
|
+
forge sync || true
|
|
58
58
|
|
|
59
59
|
# Check for conflicts with this issue's planned work area
|
|
60
60
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -104,7 +104,7 @@ If merge conflicts or unmet dependencies are found:
|
|
|
104
104
|
Before starting planning, verify team identity is mapped:
|
|
105
105
|
|
|
106
106
|
```bash
|
|
107
|
-
|
|
107
|
+
forge team verify 2>&1 || true
|
|
108
108
|
```
|
|
109
109
|
|
|
110
110
|
If verify reports issues, address them before proceeding (the output will include `FORGE_AGENT_7f3a:PROMPT:` directives with exact commands to run).
|
|
@@ -91,7 +91,7 @@ git commit -m "docs: update documentation for <feature-name>
|
|
|
91
91
|
git push
|
|
92
92
|
```
|
|
93
93
|
|
|
94
|
-
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.).
|
|
94
|
+
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.). Poll for up to 60 seconds. If checks are still pending after that, stop and ask the user to return to `/premerge <pr-number>` later. If new Greptile comments appear on the doc changes, run `/review <pr-number>` again.
|
|
95
95
|
|
|
96
96
|
### Step 4: Sync Beads
|
|
97
97
|
|
|
@@ -150,7 +150,7 @@ Do NOT suggest merging.
|
|
|
150
150
|
- README.md: Features list updated
|
|
151
151
|
- CLAUDE.md: USER section updated with new pattern
|
|
152
152
|
- Committed: docs: update documentation for auth-refresh
|
|
153
|
-
✓ CI re-triggered after doc push —
|
|
153
|
+
✓ CI re-triggered after doc push — checks passed within the 60 second poll window
|
|
154
154
|
✓ Beads synced
|
|
155
155
|
|
|
156
156
|
✅ PR #89 is ready to merge
|
|
@@ -295,10 +295,13 @@ git push
|
|
|
295
295
|
### Step 9: Verify ALL Checks Pass
|
|
296
296
|
|
|
297
297
|
```bash
|
|
298
|
-
#
|
|
298
|
+
# Check status immediately, then poll for at most 60 seconds
|
|
299
299
|
gh pr checks <pr-number>
|
|
300
300
|
|
|
301
|
-
#
|
|
301
|
+
# If checks are still pending after 60 seconds: STOP and tell the user to return
|
|
302
|
+
# when CI finishes or new review feedback appears.
|
|
303
|
+
#
|
|
304
|
+
# Ensure all completed status checks are green:
|
|
302
305
|
# ✓ GitHub Actions workflows
|
|
303
306
|
# ✓ Greptile review (no unresolved critical comments)
|
|
304
307
|
# ✓ SonarCloud quality gate
|
package/.cline/workflows/ship.md
CHANGED
|
@@ -163,10 +163,10 @@ After PR is created, sync issue state to GitHub and verify 1:1 mapping:
|
|
|
163
163
|
|
|
164
164
|
```bash
|
|
165
165
|
# Sync issue state to GitHub
|
|
166
|
-
|
|
166
|
+
forge team sync 2>&1 || true
|
|
167
167
|
|
|
168
168
|
# Verify 1:1 mapping
|
|
169
|
-
|
|
169
|
+
forge team verify 2>&1 || true
|
|
170
170
|
```
|
|
171
171
|
|
|
172
172
|
## Example Output
|
|
@@ -181,9 +181,10 @@ bash scripts/forge-team/index.sh verify 2>&1 || true
|
|
|
181
181
|
- Beads linked: forge-xyz
|
|
182
182
|
- Implementation details in collapsible section
|
|
183
183
|
|
|
184
|
-
⏸️ PR created,
|
|
184
|
+
⏸️ PR created, checks started (Greptile, SonarCloud, GitHub Actions)
|
|
185
|
+
Poll for up to 60 seconds. If checks are still pending, stop here.
|
|
185
186
|
|
|
186
|
-
Next: /review <pr-number> (
|
|
187
|
+
Next: /review <pr-number> (when automated checks complete or new feedback appears)
|
|
187
188
|
```
|
|
188
189
|
|
|
189
190
|
## Integration with Workflow
|
|
@@ -205,5 +206,5 @@ Stage 7: /verify → Post-merge CI check on main
|
|
|
205
206
|
- **Fill every section**: Even if "N/A" — empty/missing sections cause review friction
|
|
206
207
|
- **Include "Closes beads-xxx"**: Required for auto-close in /verify
|
|
207
208
|
- **Concrete data only**: Test counts, file paths, commit SHAs — not placeholder text
|
|
208
|
-
- **
|
|
209
|
+
- **Poll briefly, then stop**: Check PR status for up to 60 seconds, then hand off if checks are still pending
|
|
209
210
|
- **NO auto-merge**: Always wait for /review phase
|
|
@@ -17,7 +17,7 @@ This command helps you understand the current state of the project before starti
|
|
|
17
17
|
|
|
18
18
|
```bash
|
|
19
19
|
# Sync team state before showing status
|
|
20
|
-
|
|
20
|
+
forge sync || true
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
### Step 1: Smart Status (ranked issues with conflict detection)
|
|
@@ -25,7 +25,7 @@ bash scripts/sync-utils.sh auto-sync
|
|
|
25
25
|
```bash
|
|
26
26
|
bash scripts/smart-status.sh
|
|
27
27
|
```
|
|
28
|
-
This
|
|
28
|
+
This command dynamically computes and displays all issues ranked by composite score (priority, dependency impact, type, staleness, epic proximity). Output includes active sessions, conflict risk annotations, and grouped categories. No manual querying needed.
|
|
29
29
|
|
|
30
30
|
For full context on any issue: `bd show <id>`
|
|
31
31
|
|
|
@@ -74,10 +74,10 @@ Show current developer's active work and team overview:
|
|
|
74
74
|
|
|
75
75
|
```bash
|
|
76
76
|
# Show my active issues
|
|
77
|
-
|
|
77
|
+
forge team workload --me 2>&1 || true
|
|
78
78
|
|
|
79
79
|
# One-line team summary
|
|
80
|
-
|
|
80
|
+
forge team dashboard 2>&1 | head -5 || true
|
|
81
81
|
```
|
|
82
82
|
|
|
83
83
|
## Next Steps
|
|
@@ -69,8 +69,8 @@ Do NOT write any code until ALL confirmed:
|
|
|
69
69
|
Before starting the per-task loop, check for cross-developer conflicts:
|
|
70
70
|
|
|
71
71
|
```bash
|
|
72
|
-
# Auto-sync to get latest team state
|
|
73
|
-
|
|
72
|
+
# Auto-sync to get latest team state (non-blocking)
|
|
73
|
+
forge sync || true
|
|
74
74
|
|
|
75
75
|
# Check for conflicts with the current beads issue
|
|
76
76
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -57,7 +57,7 @@ Before proceeding to Phase 1, check for cross-developer conflicts:
|
|
|
57
57
|
|
|
58
58
|
```bash
|
|
59
59
|
# Auto-sync to get latest team state
|
|
60
|
-
|
|
60
|
+
forge sync || true
|
|
61
61
|
|
|
62
62
|
# Check for conflicts with this issue's planned work area
|
|
63
63
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -107,7 +107,7 @@ If merge conflicts or unmet dependencies are found:
|
|
|
107
107
|
Before starting planning, verify team identity is mapped:
|
|
108
108
|
|
|
109
109
|
```bash
|
|
110
|
-
|
|
110
|
+
forge team verify 2>&1 || true
|
|
111
111
|
```
|
|
112
112
|
|
|
113
113
|
If verify reports issues, address them before proceeding (the output will include `FORGE_AGENT_7f3a:PROMPT:` directives with exact commands to run).
|
|
@@ -94,7 +94,7 @@ git commit -m "docs: update documentation for <feature-name>
|
|
|
94
94
|
git push
|
|
95
95
|
```
|
|
96
96
|
|
|
97
|
-
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.).
|
|
97
|
+
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.). Poll for up to 60 seconds. If checks are still pending after that, stop and ask the user to return to `/premerge <pr-number>` later. If new Greptile comments appear on the doc changes, run `/review <pr-number>` again.
|
|
98
98
|
|
|
99
99
|
### Step 4: Sync Beads
|
|
100
100
|
|
|
@@ -153,7 +153,7 @@ Do NOT suggest merging.
|
|
|
153
153
|
- README.md: Features list updated
|
|
154
154
|
- CLAUDE.md: USER section updated with new pattern
|
|
155
155
|
- Committed: docs: update documentation for auth-refresh
|
|
156
|
-
✓ CI re-triggered after doc push —
|
|
156
|
+
✓ CI re-triggered after doc push — checks passed within the 60 second poll window
|
|
157
157
|
✓ Beads synced
|
|
158
158
|
|
|
159
159
|
✅ PR #89 is ready to merge
|
|
@@ -298,10 +298,13 @@ git push
|
|
|
298
298
|
### Step 9: Verify ALL Checks Pass
|
|
299
299
|
|
|
300
300
|
```bash
|
|
301
|
-
#
|
|
301
|
+
# Check status immediately, then poll for at most 60 seconds
|
|
302
302
|
gh pr checks <pr-number>
|
|
303
303
|
|
|
304
|
-
#
|
|
304
|
+
# If checks are still pending after 60 seconds: STOP and tell the user to return
|
|
305
|
+
# when CI finishes or new review feedback appears.
|
|
306
|
+
#
|
|
307
|
+
# Ensure all completed status checks are green:
|
|
305
308
|
# ✓ GitHub Actions workflows
|
|
306
309
|
# ✓ Greptile review (no unresolved critical comments)
|
|
307
310
|
# ✓ SonarCloud quality gate
|
|
@@ -166,10 +166,10 @@ After PR is created, sync issue state to GitHub and verify 1:1 mapping:
|
|
|
166
166
|
|
|
167
167
|
```bash
|
|
168
168
|
# Sync issue state to GitHub
|
|
169
|
-
|
|
169
|
+
forge team sync 2>&1 || true
|
|
170
170
|
|
|
171
171
|
# Verify 1:1 mapping
|
|
172
|
-
|
|
172
|
+
forge team verify 2>&1 || true
|
|
173
173
|
```
|
|
174
174
|
|
|
175
175
|
## Example Output
|
|
@@ -184,9 +184,10 @@ bash scripts/forge-team/index.sh verify 2>&1 || true
|
|
|
184
184
|
- Beads linked: forge-xyz
|
|
185
185
|
- Implementation details in collapsible section
|
|
186
186
|
|
|
187
|
-
⏸️ PR created,
|
|
187
|
+
⏸️ PR created, checks started (Greptile, SonarCloud, GitHub Actions)
|
|
188
|
+
Poll for up to 60 seconds. If checks are still pending, stop here.
|
|
188
189
|
|
|
189
|
-
Next: /review <pr-number> (
|
|
190
|
+
Next: /review <pr-number> (when automated checks complete or new feedback appears)
|
|
190
191
|
```
|
|
191
192
|
|
|
192
193
|
## Integration with Workflow
|
|
@@ -208,5 +209,5 @@ Stage 7: /verify → Post-merge CI check on main
|
|
|
208
209
|
- **Fill every section**: Even if "N/A" — empty/missing sections cause review friction
|
|
209
210
|
- **Include "Closes beads-xxx"**: Required for auto-close in /verify
|
|
210
211
|
- **Concrete data only**: Test counts, file paths, commit SHAs — not placeholder text
|
|
211
|
-
- **
|
|
212
|
+
- **Poll briefly, then stop**: Check PR status for up to 60 seconds, then hand off if checks are still pending
|
|
212
213
|
- **NO auto-merge**: Always wait for /review phase
|
|
@@ -20,7 +20,7 @@ This command helps you understand the current state of the project before starti
|
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
# Sync team state before showing status
|
|
23
|
-
|
|
23
|
+
forge sync || true
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
### Step 1: Smart Status (ranked issues with conflict detection)
|
|
@@ -28,7 +28,7 @@ bash scripts/sync-utils.sh auto-sync
|
|
|
28
28
|
```bash
|
|
29
29
|
bash scripts/smart-status.sh
|
|
30
30
|
```
|
|
31
|
-
This
|
|
31
|
+
This command dynamically computes and displays all issues ranked by composite score (priority, dependency impact, type, staleness, epic proximity). Output includes active sessions, conflict risk annotations, and grouped categories. No manual querying needed.
|
|
32
32
|
|
|
33
33
|
For full context on any issue: `bd show <id>`
|
|
34
34
|
|
|
@@ -77,10 +77,10 @@ Show current developer's active work and team overview:
|
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
79
|
# Show my active issues
|
|
80
|
-
|
|
80
|
+
forge team workload --me 2>&1 || true
|
|
81
81
|
|
|
82
82
|
# One-line team summary
|
|
83
|
-
|
|
83
|
+
forge team dashboard 2>&1 | head -5 || true
|
|
84
84
|
```
|
|
85
85
|
|
|
86
86
|
## Next Steps
|
package/.cursor/commands/dev.md
CHANGED
|
@@ -66,8 +66,8 @@ Do NOT write any code until ALL confirmed:
|
|
|
66
66
|
Before starting the per-task loop, check for cross-developer conflicts:
|
|
67
67
|
|
|
68
68
|
```bash
|
|
69
|
-
# Auto-sync to get latest team state
|
|
70
|
-
|
|
69
|
+
# Auto-sync to get latest team state (non-blocking)
|
|
70
|
+
forge sync || true
|
|
71
71
|
|
|
72
72
|
# Check for conflicts with the current beads issue
|
|
73
73
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
package/.cursor/commands/plan.md
CHANGED
|
@@ -54,7 +54,7 @@ Before proceeding to Phase 1, check for cross-developer conflicts:
|
|
|
54
54
|
|
|
55
55
|
```bash
|
|
56
56
|
# Auto-sync to get latest team state
|
|
57
|
-
|
|
57
|
+
forge sync || true
|
|
58
58
|
|
|
59
59
|
# Check for conflicts with this issue's planned work area
|
|
60
60
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -104,7 +104,7 @@ If merge conflicts or unmet dependencies are found:
|
|
|
104
104
|
Before starting planning, verify team identity is mapped:
|
|
105
105
|
|
|
106
106
|
```bash
|
|
107
|
-
|
|
107
|
+
forge team verify 2>&1 || true
|
|
108
108
|
```
|
|
109
109
|
|
|
110
110
|
If verify reports issues, address them before proceeding (the output will include `FORGE_AGENT_7f3a:PROMPT:` directives with exact commands to run).
|
|
@@ -91,7 +91,7 @@ git commit -m "docs: update documentation for <feature-name>
|
|
|
91
91
|
git push
|
|
92
92
|
```
|
|
93
93
|
|
|
94
|
-
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.).
|
|
94
|
+
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.). Poll for up to 60 seconds. If checks are still pending after that, stop and ask the user to return to `/premerge <pr-number>` later. If new Greptile comments appear on the doc changes, run `/review <pr-number>` again.
|
|
95
95
|
|
|
96
96
|
### Step 4: Sync Beads
|
|
97
97
|
|
|
@@ -150,7 +150,7 @@ Do NOT suggest merging.
|
|
|
150
150
|
- README.md: Features list updated
|
|
151
151
|
- CLAUDE.md: USER section updated with new pattern
|
|
152
152
|
- Committed: docs: update documentation for auth-refresh
|
|
153
|
-
✓ CI re-triggered after doc push —
|
|
153
|
+
✓ CI re-triggered after doc push — checks passed within the 60 second poll window
|
|
154
154
|
✓ Beads synced
|
|
155
155
|
|
|
156
156
|
✅ PR #89 is ready to merge
|
|
@@ -295,10 +295,13 @@ git push
|
|
|
295
295
|
### Step 9: Verify ALL Checks Pass
|
|
296
296
|
|
|
297
297
|
```bash
|
|
298
|
-
#
|
|
298
|
+
# Check status immediately, then poll for at most 60 seconds
|
|
299
299
|
gh pr checks <pr-number>
|
|
300
300
|
|
|
301
|
-
#
|
|
301
|
+
# If checks are still pending after 60 seconds: STOP and tell the user to return
|
|
302
|
+
# when CI finishes or new review feedback appears.
|
|
303
|
+
#
|
|
304
|
+
# Ensure all completed status checks are green:
|
|
302
305
|
# ✓ GitHub Actions workflows
|
|
303
306
|
# ✓ Greptile review (no unresolved critical comments)
|
|
304
307
|
# ✓ SonarCloud quality gate
|
package/.cursor/commands/ship.md
CHANGED
|
@@ -163,10 +163,10 @@ After PR is created, sync issue state to GitHub and verify 1:1 mapping:
|
|
|
163
163
|
|
|
164
164
|
```bash
|
|
165
165
|
# Sync issue state to GitHub
|
|
166
|
-
|
|
166
|
+
forge team sync 2>&1 || true
|
|
167
167
|
|
|
168
168
|
# Verify 1:1 mapping
|
|
169
|
-
|
|
169
|
+
forge team verify 2>&1 || true
|
|
170
170
|
```
|
|
171
171
|
|
|
172
172
|
## Example Output
|
|
@@ -181,9 +181,10 @@ bash scripts/forge-team/index.sh verify 2>&1 || true
|
|
|
181
181
|
- Beads linked: forge-xyz
|
|
182
182
|
- Implementation details in collapsible section
|
|
183
183
|
|
|
184
|
-
⏸️ PR created,
|
|
184
|
+
⏸️ PR created, checks started (Greptile, SonarCloud, GitHub Actions)
|
|
185
|
+
Poll for up to 60 seconds. If checks are still pending, stop here.
|
|
185
186
|
|
|
186
|
-
Next: /review <pr-number> (
|
|
187
|
+
Next: /review <pr-number> (when automated checks complete or new feedback appears)
|
|
187
188
|
```
|
|
188
189
|
|
|
189
190
|
## Integration with Workflow
|
|
@@ -205,5 +206,5 @@ Stage 7: /verify → Post-merge CI check on main
|
|
|
205
206
|
- **Fill every section**: Even if "N/A" — empty/missing sections cause review friction
|
|
206
207
|
- **Include "Closes beads-xxx"**: Required for auto-close in /verify
|
|
207
208
|
- **Concrete data only**: Test counts, file paths, commit SHAs — not placeholder text
|
|
208
|
-
- **
|
|
209
|
+
- **Poll briefly, then stop**: Check PR status for up to 60 seconds, then hand off if checks are still pending
|
|
209
210
|
- **NO auto-merge**: Always wait for /review phase
|
|
@@ -17,7 +17,7 @@ This command helps you understand the current state of the project before starti
|
|
|
17
17
|
|
|
18
18
|
```bash
|
|
19
19
|
# Sync team state before showing status
|
|
20
|
-
|
|
20
|
+
forge sync || true
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
### Step 1: Smart Status (ranked issues with conflict detection)
|
|
@@ -25,7 +25,7 @@ bash scripts/sync-utils.sh auto-sync
|
|
|
25
25
|
```bash
|
|
26
26
|
bash scripts/smart-status.sh
|
|
27
27
|
```
|
|
28
|
-
This
|
|
28
|
+
This command dynamically computes and displays all issues ranked by composite score (priority, dependency impact, type, staleness, epic proximity). Output includes active sessions, conflict risk annotations, and grouped categories. No manual querying needed.
|
|
29
29
|
|
|
30
30
|
For full context on any issue: `bd show <id>`
|
|
31
31
|
|
|
@@ -74,10 +74,10 @@ Show current developer's active work and team overview:
|
|
|
74
74
|
|
|
75
75
|
```bash
|
|
76
76
|
# Show my active issues
|
|
77
|
-
|
|
77
|
+
forge team workload --me 2>&1 || true
|
|
78
78
|
|
|
79
79
|
# One-line team summary
|
|
80
|
-
|
|
80
|
+
forge team dashboard 2>&1 | head -5 || true
|
|
81
81
|
```
|
|
82
82
|
|
|
83
83
|
## Next Steps
|
|
@@ -71,8 +71,8 @@ Do NOT write any code until ALL confirmed:
|
|
|
71
71
|
Before starting the per-task loop, check for cross-developer conflicts:
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
|
-
# Auto-sync to get latest team state
|
|
75
|
-
|
|
74
|
+
# Auto-sync to get latest team state (non-blocking)
|
|
75
|
+
forge sync || true
|
|
76
76
|
|
|
77
77
|
# Check for conflicts with the current beads issue
|
|
78
78
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -59,7 +59,7 @@ Before proceeding to Phase 1, check for cross-developer conflicts:
|
|
|
59
59
|
|
|
60
60
|
```bash
|
|
61
61
|
# Auto-sync to get latest team state
|
|
62
|
-
|
|
62
|
+
forge sync || true
|
|
63
63
|
|
|
64
64
|
# Check for conflicts with this issue's planned work area
|
|
65
65
|
bash scripts/conflict-detect.sh --issue <beads-id>
|
|
@@ -109,7 +109,7 @@ If merge conflicts or unmet dependencies are found:
|
|
|
109
109
|
Before starting planning, verify team identity is mapped:
|
|
110
110
|
|
|
111
111
|
```bash
|
|
112
|
-
|
|
112
|
+
forge team verify 2>&1 || true
|
|
113
113
|
```
|
|
114
114
|
|
|
115
115
|
If verify reports issues, address them before proceeding (the output will include `FORGE_AGENT_7f3a:PROMPT:` directives with exact commands to run).
|
|
@@ -96,7 +96,7 @@ git commit -m "docs: update documentation for <feature-name>
|
|
|
96
96
|
git push
|
|
97
97
|
```
|
|
98
98
|
|
|
99
|
-
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.).
|
|
99
|
+
⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.). Poll for up to 60 seconds. If checks are still pending after that, stop and ask the user to return to `/premerge <pr-number>` later. If new Greptile comments appear on the doc changes, run `/review <pr-number>` again.
|
|
100
100
|
|
|
101
101
|
### Step 4: Sync Beads
|
|
102
102
|
|
|
@@ -155,7 +155,7 @@ Do NOT suggest merging.
|
|
|
155
155
|
- README.md: Features list updated
|
|
156
156
|
- CLAUDE.md: USER section updated with new pattern
|
|
157
157
|
- Committed: docs: update documentation for auth-refresh
|
|
158
|
-
✓ CI re-triggered after doc push —
|
|
158
|
+
✓ CI re-triggered after doc push — checks passed within the 60 second poll window
|
|
159
159
|
✓ Beads synced
|
|
160
160
|
|
|
161
161
|
✅ PR #89 is ready to merge
|
|
@@ -300,10 +300,13 @@ git push
|
|
|
300
300
|
### Step 9: Verify ALL Checks Pass
|
|
301
301
|
|
|
302
302
|
```bash
|
|
303
|
-
#
|
|
303
|
+
# Check status immediately, then poll for at most 60 seconds
|
|
304
304
|
gh pr checks <pr-number>
|
|
305
305
|
|
|
306
|
-
#
|
|
306
|
+
# If checks are still pending after 60 seconds: STOP and tell the user to return
|
|
307
|
+
# when CI finishes or new review feedback appears.
|
|
308
|
+
#
|
|
309
|
+
# Ensure all completed status checks are green:
|
|
307
310
|
# ✓ GitHub Actions workflows
|
|
308
311
|
# ✓ Greptile review (no unresolved critical comments)
|
|
309
312
|
# ✓ SonarCloud quality gate
|