pi-goal-list-loop-audit 0.34.4 → 0.34.5
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/extensions/loops/goal.ts +15 -2
- package/package.json +1 -1
package/extensions/loops/goal.ts
CHANGED
|
@@ -991,8 +991,21 @@ function heartbeatTick(): void {
|
|
|
991
991
|
})
|
|
992
992
|
) {
|
|
993
993
|
lastWedgeAlertAt = Date.now();
|
|
994
|
-
|
|
995
|
-
|
|
994
|
+
// v0.34.5: a wedge while blocked on a subagent wait is a DIFFERENT animal
|
|
995
|
+
// from a hung bash command (junk-runner 2026-08-01: 2 Explore agents
|
|
996
|
+
// "thinking…" 31 minutes — working, but indistinguishable from hung
|
|
997
|
+
// without this hint). Name the wait and give the liveness check: a child
|
|
998
|
+
// whose tool-use counter stops moving is hung, not thinking.
|
|
999
|
+
const subWaits = new Set(
|
|
1000
|
+
[...inFlightToolCalls.values()]
|
|
1001
|
+
.filter((t) => t.name === "get_subagent_result" || t.name === "Agent")
|
|
1002
|
+
.map((t) => t.name),
|
|
1003
|
+
);
|
|
1004
|
+
const subHint = subWaits.size > 0
|
|
1005
|
+
? ` The in-flight call is a SUBAGENT WAIT (${[...subWaits].join("/")}) — check the Agents panel: a child whose tool-use/token counters have stopped moving between checks is hung, not thinking (hard failures surface as ✗ failed + the wait returns; a HANG is silent). Esc interrupts the wait — then collect the survivors with get_subagent_result and absorb the dead scope inline.`
|
|
1006
|
+
: "";
|
|
1007
|
+
const msg = `${goalNoun()} appears wedged: no activity for ${Math.round((Date.now() - lastActivityAt) / 60_000)}m while the session is busy — likely a hung command (test/build/dev server without a timeout).${subHint} Check the session; Esc kills a stuck tool call.`;
|
|
1008
|
+
appendLedger(ctx.cwd, "wedge_alert", { silentMs: Date.now() - lastActivityAt, subagentWait: subWaits.size > 0 });
|
|
996
1009
|
ctx.ui.notify(msg, "warning");
|
|
997
1010
|
notifyExternal(ctx, msg);
|
|
998
1011
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-goal-list-loop-audit",
|
|
3
|
-
"version": "0.34.
|
|
3
|
+
"version": "0.34.5",
|
|
4
4
|
"description": "Mission control for autonomous pi: interview-drafted goals, an audited task queue, and forever-loops (metric, spec, project-audit) that run for hours. An isolated extension-less auditor re-verifies every completion with raw evidence; confirmed drafts, decision pauses and consent gates keep you in charge.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "dracon",
|