@rallycry/conveyor-agent 8.8.1 → 8.9.0

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/dist/cli.js CHANGED
@@ -9,11 +9,11 @@ import {
9
9
  loadForwardPorts,
10
10
  runSetupCommand,
11
11
  runStartCommand
12
- } from "./chunk-4ZZXIHJV.js";
12
+ } from "./chunk-6462GDLZ.js";
13
13
  import "./chunk-FDWECEDJ.js";
14
14
  import {
15
15
  createServiceLogger
16
- } from "./chunk-EOGZOS2H.js";
16
+ } from "./chunk-TN2YYT2V.js";
17
17
 
18
18
  // src/cli.ts
19
19
  import { readFileSync } from "fs";
package/dist/index.d.ts CHANGED
@@ -320,6 +320,12 @@ declare class SessionRunner {
320
320
  private inputResolver;
321
321
  private pendingMessages;
322
322
  private prNudgeCount;
323
+ /** Set when the agent posts a substantive message to the task chat (the
324
+ * `post_to_chat` tool) during the current turn; reset at the start of every
325
+ * query. Read by the stuck-detection: an auto agent that finished without a
326
+ * PR but DID explain itself / ask for help in chat is waiting on a human,
327
+ * not silently stuck, so it is left attached rather than nudged. */
328
+ private agentSpokeThisTurn;
323
329
  /** Guards overlapping runs of the periodic git flush. */
324
330
  private periodicFlushInFlight;
325
331
  constructor(config: SessionRunnerConfig, callbacks: SessionRunnerCallbacks);
@@ -401,10 +407,28 @@ declare class SessionRunner {
401
407
  flushGitOnShutdown(): Promise<void>;
402
408
  stop(): void;
403
409
  softStop(): void;
404
- private static readonly MAX_PR_NUDGES;
405
- private needsPRNudge;
410
+ private static readonly MAX_STUCK_NUDGES;
411
+ /** The prompt delivered into the live TUI when an auto agent looks stuck. It
412
+ * must offer BOTH escape routes so the agent never just goes idle. */
413
+ private static readonly STUCK_PROMPT;
414
+ /**
415
+ * An auto task is "stuck" when its last turn ended (the call sites run
416
+ * post-turn, so the TUI is no longer actively working), it has no open PR,
417
+ * AND the agent did not communicate in chat this turn. If the agent posted a
418
+ * message (explained itself / asked for help) it is waiting on a human, not
419
+ * silently stuck, so we leave it attached instead of nudging.
420
+ */
421
+ private isAutoStuck;
422
+ /**
423
+ * Stop driving the agent and route the core loop into dormant idle —
424
+ * connected and attachable, but NOT running (so no tokens are spent while it
425
+ * waits). A human reply (chat or TUI keystroke after the next wake) resumes
426
+ * it. This replaces the old hard `stop()`: the auto agent must never kill its
427
+ * own session, so a person can always take over.
428
+ */
429
+ private enterDormantForHumanTakeover;
406
430
  private refreshTaskContext;
407
- private maybeSendPRNudge;
431
+ private maybeHandleStuckAuto;
408
432
  private buildFullContext;
409
433
  private createQueryBridge;
410
434
  private wireConnectionCallbacks;
package/dist/index.js CHANGED
@@ -25,9 +25,9 @@ import {
25
25
  stageAndCommit,
26
26
  unshallowRepo,
27
27
  updateRemoteToken
28
- } from "./chunk-4ZZXIHJV.js";
28
+ } from "./chunk-6462GDLZ.js";
29
29
  import "./chunk-FDWECEDJ.js";
30
- import "./chunk-EOGZOS2H.js";
30
+ import "./chunk-TN2YYT2V.js";
31
31
 
32
32
  // src/runner/file-cache.ts
33
33
  var DEFAULT_MAX_SIZE_BYTES = 50 * 1024 * 1024;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createHarness,
3
3
  createServiceLogger
4
- } from "./chunk-EOGZOS2H.js";
4
+ } from "./chunk-TN2YYT2V.js";
5
5
 
6
6
  // src/runner/tag-audit-handler.ts
7
7
  var logger = createServiceLogger("TagAudit");
@@ -219,4 +219,4 @@ export {
219
219
  buildTagAuditPrompt,
220
220
  handleTagAudit
221
221
  };
222
- //# sourceMappingURL=tag-audit-handler-S4VT47XG.js.map
222
+ //# sourceMappingURL=tag-audit-handler-X3LEX63H.js.map
@@ -5,7 +5,7 @@ import {
5
5
  createHarness,
6
6
  createServiceLogger,
7
7
  defineTool
8
- } from "./chunk-EOGZOS2H.js";
8
+ } from "./chunk-TN2YYT2V.js";
9
9
 
10
10
  // src/runner/task-audit-handler.ts
11
11
  import { z } from "zod";
@@ -798,4 +798,4 @@ async function handleTaskAudit(request, connection, projectDir) {
798
798
  export {
799
799
  handleTaskAudit
800
800
  };
801
- //# sourceMappingURL=task-audit-handler-QK7S4LWO.js.map
801
+ //# sourceMappingURL=task-audit-handler-BRCXB5V6.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rallycry/conveyor-agent",
3
- "version": "8.8.1",
3
+ "version": "8.9.0",
4
4
  "description": "Conveyor Agent Runner v8 - PTY harness for the task chat (SDK harness for audit/project-chat). Agent-as-User architecture with BaseService patterns. Works locally too.",
5
5
  "keywords": [
6
6
  "agent",