fix: Migrate planner, predictor, supervisor to SDK (#6)
Replace tmux-based run_formula_and_monitor() with synchronous agent_run() from lib/agent-sdk.sh, matching the pattern established in gardener-run.sh. Key changes per agent: - Drop agent-session.sh, use agent-sdk.sh (SID_FILE, LOGFILE) - Remove SESSION_NAME, PHASE_FILE, PHASE_POLL_INTERVAL (tmux/phase artifacts) - Strip phase protocol from prompt footer (SDK mode needs no phase signals) - Preserve all prompt composition: context blocks, memory, journal, preflight Shared helpers added to lib/formula-session.sh: - build_sdk_prompt_footer(): build_prompt_footer minus phase protocol - formula_worktree_setup(): fetch + cleanup + create worktree + EXIT trap Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
8f389d9dab
commit
de2e7dc1fb
5 changed files with 113 additions and 80 deletions
|
|
@ -291,6 +291,33 @@ build_graph_section() {
|
|||
fi
|
||||
}
|
||||
|
||||
# ── SDK helpers ───────────────────────────────────────────────────────────
|
||||
|
||||
# build_sdk_prompt_footer [EXTRA_API_LINES]
|
||||
# Like build_prompt_footer but omits the phase protocol section (SDK mode).
|
||||
# Sets PROMPT_FOOTER.
|
||||
build_sdk_prompt_footer() {
|
||||
# shellcheck disable=SC2034 # consumed by build_prompt_footer
|
||||
PHASE_FILE="" # not used in SDK mode
|
||||
build_prompt_footer "${1:-}"
|
||||
PROMPT_FOOTER="${PROMPT_FOOTER%%## Phase protocol*}"
|
||||
}
|
||||
|
||||
# formula_worktree_setup WORKTREE
|
||||
# Creates an isolated worktree for synchronous formula execution.
|
||||
# Fetches primary branch, cleans stale worktree, creates new one, and
|
||||
# sets an EXIT trap for cleanup.
|
||||
# Requires globals: PROJECT_REPO_ROOT, PRIMARY_BRANCH.
|
||||
formula_worktree_setup() {
|
||||
local worktree="$1"
|
||||
cd "$PROJECT_REPO_ROOT"
|
||||
git fetch origin "$PRIMARY_BRANCH" 2>/dev/null || true
|
||||
worktree_cleanup "$worktree"
|
||||
git worktree add "$worktree" "origin/${PRIMARY_BRANCH}" --detach 2>/dev/null
|
||||
# shellcheck disable=SC2064 # expand worktree now, not at trap time
|
||||
trap "worktree_cleanup '$worktree'" EXIT
|
||||
}
|
||||
|
||||
# ── Prompt + monitor helpers ──────────────────────────────────────────────
|
||||
|
||||
# build_prompt_footer [EXTRA_API_LINES]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue