feat(statusline): objetivo+DoD coherentes con los prompts + alerta de mezcla de tareas
El objetivo y el DoD dejan de quedarse congelados en el primer prompt: - goal_tracker acumula cada prompt sustantivo del usuario en .prompts y lanza goal_refine.sh (background, haiku) para mantener objetivo y DoD coherentes con TODO lo pedido (action refine), o dejarlos igual (action same). - goal_refine marca alert=true (action switch) cuando el ultimo prompt introduce una tarea completamente distinta del objetivo: senal de que la terminal mezcla tareas (principio: una terminal = una tarea). No cambia el objetivo, solo avisa. - statusline muestra ⚠️ en rojo antes del objetivo cuando alert=true. - Comando 'recalcular' (recalcula/replantea): fuerza regenerar objetivo+DoD desde los prompts y limpia la alerta (para cuando el cambio de tarea es intencional). - goal_autogen inicializa .prompts con el primer prompt. Coste: 1 haiku/prompt sustantivo en background (ademas del haiku de reposo del Stop), solicitado para mantener la coherencia. No bloquea el turno. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -37,8 +37,8 @@ DOD=$(printf '%s' "$JSON" | jq -r '.dod // ""' 2>/dev/null)
|
||||
[ -f "$F" ] && exit 0
|
||||
|
||||
TMP="${F}.tmp.$$"
|
||||
if jq -n --arg g "$GOAL" --arg d "$DOD" \
|
||||
'{goal:$g, phase:"planificando", history:["planificando"]} | if $d != "" then .dod=$d else . end' > "$TMP" 2>/dev/null; then
|
||||
if jq -n --arg g "$GOAL" --arg d "$DOD" --arg p "$P" \
|
||||
'{goal:$g, phase:"planificando", history:["planificando"], prompts:[$p]} | if $d != "" then .dod=$d else . end' > "$TMP" 2>/dev/null; then
|
||||
mv "$TMP" "$F"
|
||||
else
|
||||
rm -f "$TMP"
|
||||
|
||||
Reference in New Issue
Block a user