fix: address review — restore +x, guard double comment, update stale docs (#352)
- Restore executable bit on gardener/gardener-poll.sh (cron invokes it directly) - Add _BLOCKED_POSTED guard to prevent duplicate diagnostic comments when both _on_phase_change(PHASE:crashed) and the belt-and-suspenders exit handler both call post_blocked_diagnostic() - Update stale documentation: - gardener-run.sh: remove "CI escalation recipes" from issue body - AGENTS.md: update directory layout comment for gardener-poll.sh - gardener-poll.sh: remove recipe engine description from header Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
bda9240268
commit
7b6b56d761
5 changed files with 7 additions and 11 deletions
|
|
@ -17,7 +17,7 @@ disinto/
|
|||
├── dev/ dev-poll.sh, dev-agent.sh, phase-handler.sh — issue implementation
|
||||
├── review/ review-poll.sh, review-pr.sh — PR review
|
||||
├── gardener/ gardener-run.sh — files action issue for run-gardener formula
|
||||
│ gardener-poll.sh, gardener-agent.sh — recipe engine + grooming
|
||||
│ gardener-poll.sh, gardener-agent.sh — grooming
|
||||
├── predictor/ predictor-run.sh — daily cron executor for run-predictor formula
|
||||
├── planner/ planner-run.sh — direct cron executor for run-planner formula
|
||||
│ planner/journal/ — daily raw logs from each planner run
|
||||
|
|
|
|||
|
|
@ -772,7 +772,10 @@ case "${_MONITOR_LOOP_EXIT:-}" in
|
|||
crashed)
|
||||
# Belt-and-suspenders: _on_phase_change(PHASE:crashed) handles primary
|
||||
# cleanup (diagnostic comment, blocked label, worktree, files).
|
||||
# Only post if the callback didn't already (guard prevents double comment).
|
||||
if [ "${_BLOCKED_POSTED:-}" != "true" ]; then
|
||||
post_blocked_diagnostic "crashed"
|
||||
fi
|
||||
;;
|
||||
done)
|
||||
# Belt-and-suspenders: callback in phase-handler.sh handles primary cleanup,
|
||||
|
|
|
|||
|
|
@ -93,6 +93,7 @@ ${tmux_output}
|
|||
-d "{\"labels\":[${blocked_id}]}" >/dev/null 2>&1 || true
|
||||
fi
|
||||
CLAIMED=false
|
||||
_BLOCKED_POSTED=true
|
||||
}
|
||||
|
||||
# --- Build phase protocol prompt (shared across agents) ---
|
||||
|
|
|
|||
8
gardener/gardener-poll.sh
Normal file → Executable file
8
gardener/gardener-poll.sh
Normal file → Executable file
|
|
@ -4,7 +4,6 @@
|
|||
#
|
||||
# Cron: daily (or 2x/day). Handles lock management, escalation reply
|
||||
# injection, and delegates backlog grooming to gardener-agent.sh.
|
||||
# Then processes dev-agent CI escalations via the recipe engine.
|
||||
#
|
||||
# Grooming (delegated to gardener-agent.sh):
|
||||
# - Duplicate titles / overlapping scope
|
||||
|
|
@ -12,13 +11,6 @@
|
|||
# - Stale issues (no activity > 14 days)
|
||||
# - Blockers starving the factory
|
||||
# - Tech-debt promotion / dust bundling
|
||||
#
|
||||
# CI escalation (recipe-driven, handled here):
|
||||
# - ShellCheck per-file sub-issues
|
||||
# - Generic CI failure issues
|
||||
# - Chicken-egg CI handling
|
||||
# - Cascade rebase + retry merge
|
||||
# - Flaky test quarantine
|
||||
# =============================================================================
|
||||
set -euo pipefail
|
||||
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ model: opus
|
|||
---
|
||||
|
||||
Periodic gardener housekeeping run. The action-agent reads \`formulas/run-gardener.toml\`
|
||||
and executes the steps: preflight, grooming, blocked-review, CI escalation recipes,
|
||||
and executes the steps: preflight, grooming, blocked-review,
|
||||
AGENTS.md update, and commit-and-pr.
|
||||
|
||||
Filed automatically by \`gardener-run.sh\`."
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue