diff --git a/action/action-agent.sh b/action/action-agent.sh index 5a39856..cf51dd6 100644 --- a/action/action-agent.sh +++ b/action/action-agent.sh @@ -24,6 +24,7 @@ export PROJECT_TOML="${2:-${PROJECT_TOML:-}}" source "$(dirname "$0")/../lib/env.sh" source "$(dirname "$0")/../lib/agent-session.sh" +source "$(dirname "$0")/../lib/formula-session.sh" # shellcheck source=../dev/phase-handler.sh source "$(dirname "$0")/../dev/phase-handler.sh" SESSION_NAME="action-${ISSUE}" @@ -168,22 +169,8 @@ if [ -n "${_thread_id:-}" ]; then fi # --- Read scratch file (compaction survival) --- -SCRATCH_CONTEXT="" -if [ -f "$SCRATCH_FILE" ]; then - SCRATCH_CONTEXT="## Previous context (from scratch file) -$(cat "$SCRATCH_FILE") -" -fi -SCRATCH_INSTRUCTION="## Context scratch file (compaction survival) - -Periodically (every 10-15 tool calls), write a summary of: -- What you have discovered so far -- Decisions made and why -- What remains to do -to: ${SCRATCH_FILE} - -If you find this file exists when you start, read it first — it is your previous context. -This file is ephemeral — not evidence or permanent memory, just a compaction survival mechanism." +SCRATCH_CONTEXT=$(read_scratch_context "$SCRATCH_FILE") +SCRATCH_INSTRUCTION=$(build_scratch_instruction "$SCRATCH_FILE") # --- Build initial prompt --- PRIOR_SECTION="" diff --git a/dev/dev-agent.sh b/dev/dev-agent.sh index 059fde5..6d3e463 100755 --- a/dev/dev-agent.sh +++ b/dev/dev-agent.sh @@ -23,6 +23,7 @@ set -euo pipefail # Load shared environment source "$(dirname "$0")/../lib/env.sh" source "$(dirname "$0")/../lib/agent-session.sh" +source "$(dirname "$0")/../lib/formula-session.sh" # shellcheck source=./phase-handler.sh source "$(dirname "$0")/phase-handler.sh" @@ -499,22 +500,8 @@ fi # ============================================================================= # READ SCRATCH FILE (compaction survival) # ============================================================================= -SCRATCH_CONTEXT="" -if [ -f "$SCRATCH_FILE" ]; then - SCRATCH_CONTEXT="## Previous context (from scratch file) -$(cat "$SCRATCH_FILE") -" -fi -SCRATCH_INSTRUCTION="## Context scratch file (compaction survival) - -Periodically (every 10-15 tool calls), write a summary of: -- What you have discovered so far -- Decisions made and why -- What remains to do -to: ${SCRATCH_FILE} - -If you find this file exists when you start, read it first — it is your previous context. -This file is ephemeral — not evidence or permanent memory, just a compaction survival mechanism." +SCRATCH_CONTEXT=$(read_scratch_context "$SCRATCH_FILE") +SCRATCH_INSTRUCTION=$(build_scratch_instruction "$SCRATCH_FILE") # ============================================================================= # BUILD PROMPT diff --git a/predictor/predictor-run.sh b/predictor/predictor-run.sh index 253953a..cdb217d 100755 --- a/predictor/predictor-run.sh +++ b/predictor/predictor-run.sh @@ -65,12 +65,11 @@ about CI health, issue staleness, agent status, and system conditions. ## Project context ${CONTEXT_BLOCK} ${SCRATCH_CONTEXT:+${SCRATCH_CONTEXT} -} +}${SCRATCH_INSTRUCTION} + ## Formula ${FORMULA_CONTENT} -${SCRATCH_INSTRUCTION} - ${PROMPT_FOOTER}" # ── Run session ──────────────────────────────────────────────────────────