taskplane 0.23.3 → 0.23.4

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.
@@ -1758,13 +1758,19 @@ export async function resolveTaskMonitorState(
1758
1758
  // TP-115: Backend-aware liveness check.
1759
1759
  // V2: read the lane snapshot file written by lane-runner every second.
1760
1760
  // Snapshot status is authoritative — no PID probing needed.
1761
+ // If snapshot doesn't exist yet, assume alive (lane-runner startup race).
1761
1762
  // Legacy: check TMUX session.
1762
1763
  let sessionAlive: boolean;
1763
1764
  if (runtimeBackend === "v2" && v2Context) {
1764
1765
  const snap = readLaneSnapshot(v2Context.stateRoot, v2Context.batchId, v2Context.laneNumber);
1765
- sessionAlive = snap != null && snap.status === "running";
1766
+ if (snap == null) {
1767
+ // Snapshot not written yet — lane-runner is still starting up.
1768
+ // Assume alive to avoid false "failed" from monitor racing lane startup.
1769
+ sessionAlive = true;
1770
+ } else {
1771
+ sessionAlive = snap.status === "running";
1772
+ }
1766
1773
  } else if (runtimeBackend === "v2") {
1767
- // Fallback to registry-based check if no v2Context
1768
1774
  sessionAlive = isV2AgentAlive(sessionName, runtimeBackend);
1769
1775
  } else {
1770
1776
  sessionAlive = await tmuxHasSessionAsync(sessionName);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taskplane",
3
- "version": "0.23.3",
3
+ "version": "0.23.4",
4
4
  "description": "AI agent orchestration for pi — parallel task execution with checkpoint discipline",
5
5
  "keywords": [
6
6
  "pi-package",