teamshare-bridge 0.25.0 → 0.25.2

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.
Files changed (48) hide show
  1. package/dist/bridge/wake-handler.js +27 -0
  2. package/dist/bridge/wake-handler.js.map +1 -1
  3. package/dist/bridge/wake-routing.js +10 -0
  4. package/dist/bridge/wake-routing.js.map +1 -1
  5. package/dist/cli/commands/research.js +17 -1
  6. package/dist/cli/commands/research.js.map +1 -1
  7. package/dist/cli/commands/run.js +21 -0
  8. package/dist/cli/commands/run.js.map +1 -1
  9. package/dist/cli/commands/workflow.js +139 -0
  10. package/dist/cli/commands/workflow.js.map +1 -1
  11. package/dist/lib/api-types.d.ts +62 -0
  12. package/dist/lib/api.d.ts +24 -0
  13. package/dist/lib/api.js +18 -0
  14. package/dist/lib/api.js.map +1 -1
  15. package/dist/lib/brief.d.ts +18 -1
  16. package/dist/lib/brief.js +1 -0
  17. package/dist/lib/brief.js.map +1 -1
  18. package/dist/lib/browser/batch.d.ts +3 -0
  19. package/dist/lib/browser/batch.js +1 -0
  20. package/dist/lib/browser/batch.js.map +1 -1
  21. package/dist/lib/browser/login.d.ts +7 -0
  22. package/dist/lib/browser/login.js +23 -2
  23. package/dist/lib/browser/login.js.map +1 -1
  24. package/dist/lib/harness/harness-adapter.d.ts +12 -0
  25. package/dist/lib/harness/harness-adapter.js.map +1 -1
  26. package/dist/lib/harness/harness-output.js +14 -0
  27. package/dist/lib/harness/harness-output.js.map +1 -1
  28. package/dist/lib/harness/opencode-outcome.d.ts +25 -0
  29. package/dist/lib/harness/opencode-outcome.js +92 -0
  30. package/dist/lib/harness/opencode-outcome.js.map +1 -0
  31. package/dist/lib/harness/spawn.js +72 -5
  32. package/dist/lib/harness/spawn.js.map +1 -1
  33. package/dist/lib/llm/llm-core.d.ts +1 -1
  34. package/dist/lib/llm/llm-tools.js +34 -43
  35. package/dist/lib/llm/llm-tools.js.map +1 -1
  36. package/dist/lib/llm/llm.js +18 -0
  37. package/dist/lib/llm/llm.js.map +1 -1
  38. package/dist/lib/media-gen/generate.d.ts +31 -0
  39. package/dist/lib/media-gen/generate.js +266 -0
  40. package/dist/lib/media-gen/generate.js.map +1 -0
  41. package/dist/lib/orchestrator/handlers/browser.js +1 -0
  42. package/dist/lib/orchestrator/handlers/browser.js.map +1 -1
  43. package/dist/lib/tools/browser-tool.js +1 -0
  44. package/dist/lib/tools/browser-tool.js.map +1 -1
  45. package/dist/lib/workflow/node-executor.d.ts +35 -0
  46. package/dist/lib/workflow/node-executor.js +248 -0
  47. package/dist/lib/workflow/node-executor.js.map +1 -0
  48. package/package.json +1 -1
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseSessionOutcome = parseSessionOutcome;
4
+ exports.probeOpencodeOutcome = probeOpencodeOutcome;
5
+ exports.decideHarnessExit = decideHarnessExit;
6
+ /**
7
+ * OpenCode V2 session-outcome probe (2026-10-15).
8
+ *
9
+ * WHY THIS EXISTS - OpenCode V2 is a client/server product: `opencode run` is
10
+ * a CLIENT attached to a shared background service, and its process exit code
11
+ * does NOT describe the run. Two distinct shapes were observed:
12
+ *
13
+ * 1. A client that crashes/disconnects mid-stream exits non-zero with NO
14
+ * output at all while the service finishes the turn successfully. Real
15
+ * case (Windows 11, v2.0.29): `[harness] opencode exited with code 1`,
16
+ * zero stderr, no Bun crash report, no opencode.log ERROR line - and the
17
+ * session record said `outcome: "succeeded"`. The run's work was complete,
18
+ * committed and pushed, yet the bridge reported "Run harness failed; no
19
+ * work was produced".
20
+ * 2. The deliberate error paths (session.step.failed / execution.failed /
21
+ * message errors) also set a non-zero exit code for SESSION-level errors.
22
+ *
23
+ * The session record is the authority on whether a run succeeded, so on a
24
+ * non-zero opencode exit the bridge asks the session. Everything here is
25
+ * best-effort and tolerant: any failure to read the outcome answers
26
+ * 'unknown', which falls back to the classic exit-code contract.
27
+ */
28
+ const node_child_process_1 = require("node:child_process");
29
+ const harness_1 = require("./harness");
30
+ /** How long the outcome probe may take before we give up (best-effort). */
31
+ const PROBE_TIMEOUT_MS = 30_000;
32
+ /** Session exports embed the full transcript; a big session is a few MB. */
33
+ const PROBE_MAX_BUFFER = 64 * 1024 * 1024;
34
+ /**
35
+ * Pure: read `info.outcome` out of an `opencode session export` document.
36
+ * Missing/malformed output is 'unknown' (fall back to the exit code); any
37
+ * non-'succeeded' string outcome (failed/interrupted/aborted/...) is 'failed'.
38
+ */
39
+ function parseSessionOutcome(exportJson) {
40
+ try {
41
+ const parsed = JSON.parse(exportJson);
42
+ const outcome = parsed?.info?.outcome;
43
+ if (outcome === 'succeeded')
44
+ return 'succeeded';
45
+ if (typeof outcome === 'string' && outcome.length > 0)
46
+ return 'failed';
47
+ }
48
+ catch {
49
+ /* not a session export document */
50
+ }
51
+ return 'unknown';
52
+ }
53
+ /**
54
+ * Default probe: `opencode session export <id>` against the local service.
55
+ * Best-effort by design - never throws, never blocks longer than the timeout.
56
+ */
57
+ function probeOpencodeOutcome(sessionId) {
58
+ if (!sessionId)
59
+ return 'unknown';
60
+ try {
61
+ const bin = (0, harness_1.resolveBin)('opencode');
62
+ if (!bin)
63
+ return 'unknown';
64
+ const res = (0, node_child_process_1.spawnSync)(bin.file, [...(bin.args ?? []), 'session', 'export', sessionId], {
65
+ encoding: 'utf8',
66
+ timeout: PROBE_TIMEOUT_MS,
67
+ maxBuffer: PROBE_MAX_BUFFER,
68
+ windowsHide: true,
69
+ });
70
+ // A v1 CLI has no `session export` - non-zero status is just 'unknown'.
71
+ if (res.status !== 0 || !res.stdout)
72
+ return 'unknown';
73
+ return parseSessionOutcome(res.stdout);
74
+ }
75
+ catch {
76
+ return 'unknown';
77
+ }
78
+ }
79
+ /**
80
+ * Pure decision: is a non-zero harness exit actually a COMPLETED run?
81
+ *
82
+ * Only opencode has the v2 client/server split. The idle kill (124) is OURS
83
+ * and must stay a failure. Every other harness keeps the classic contract.
84
+ */
85
+ function decideHarnessExit(input) {
86
+ const recovered = input.harness === 'opencode' &&
87
+ input.code !== 0 &&
88
+ input.code !== 124 &&
89
+ input.outcome === 'succeeded';
90
+ return { recovered };
91
+ }
92
+ //# sourceMappingURL=opencode-outcome.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-outcome.js","sourceRoot":"","sources":["../../../src/lib/harness/opencode-outcome.ts"],"names":[],"mappings":";;AAqCA,kDAUC;AAMD,oDAqBC;AAQD,8CAWC;AA7FD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,2DAA+C;AAC/C,uCAAuC;AAIvC,2EAA2E;AAC3E,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAChC,4EAA4E;AAC5E,MAAM,gBAAgB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE1C;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,UAAkB;IACpD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAqC,CAAC;QAC1E,MAAM,OAAO,GAAG,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;QACtC,IAAI,OAAO,KAAK,WAAW;YAAE,OAAO,WAAW,CAAC;QAChD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,QAAQ,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,SAAiB;IACpD,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAA,oBAAU,EAAC,UAAU,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAA,8BAAS,EACnB,GAAG,CAAC,IAAI,EACR,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,EACrD;YACE,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,gBAAgB;YAC3B,WAAW,EAAE,IAAI;SAClB,CACF,CAAC;QACF,wEAAwE;QACxE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QACtD,OAAO,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,KAIjC;IACC,MAAM,SAAS,GACb,KAAK,CAAC,OAAO,KAAK,UAAU;QAC5B,KAAK,CAAC,IAAI,KAAK,CAAC;QAChB,KAAK,CAAC,IAAI,KAAK,GAAG;QAClB,KAAK,CAAC,OAAO,KAAK,WAAW,CAAC;IAChC,OAAO,EAAE,SAAS,EAAE,CAAC;AACvB,CAAC"}
@@ -19,6 +19,7 @@ const harness_adapter_1 = require("./harness-adapter");
19
19
  const harness_1 = require("./harness");
20
20
  const harness_output_1 = require("./harness-output");
21
21
  const line_assembler_1 = require("./line-assembler");
22
+ const opencode_outcome_1 = require("./opencode-outcome");
22
23
  const agy_pty_1 = require("./agy-pty");
23
24
  const prompt_file_1 = require("./prompt-file");
24
25
  const diagnostics_1 = require("../diagnostics");
@@ -415,6 +416,65 @@ function spawnHarness(harness, prompt, log, settings = {}) {
415
416
  finalReq = freshReq;
416
417
  result = await runOnce(freshReq);
417
418
  }
419
+ // ── OpenCode V2: the client's exit code is NOT the run's outcome ────
420
+ // (2026-10-15) V2 runs as a client attached to a shared service; a client
421
+ // crash/disconnect exits non-zero with no output while the service
422
+ // finishes the turn successfully, and the deliberate error paths set a
423
+ // non-zero code for SESSION-level errors. Live case: exit 1, zero stderr,
424
+ // session `outcome: "succeeded"` - the bridge reported "no work was
425
+ // produced" for a run whose work was committed and pushed. Ask the
426
+ // session record before believing the exit code. The idle kill (124) is
427
+ // ours and stays a failure; every other harness keeps the classic contract.
428
+ let finalCode = result.code;
429
+ if (resolved === 'opencode' && finalCode !== 0 && finalCode !== 124) {
430
+ // The session id is captured from the first stream event (every v2
431
+ // NDJSON line carries `sessionID`), so it is known even when the client
432
+ // died mid-run - which is exactly the case this exists for.
433
+ const sessionId = result.capturedId ?? finalReq?.id;
434
+ if (sessionId) {
435
+ const outcome = (0, opencode_outcome_1.probeOpencodeOutcome)(sessionId);
436
+ if ((0, opencode_outcome_1.decideHarnessExit)({ harness: resolved, code: finalCode, outcome }).recovered) {
437
+ finalCode = 0;
438
+ log(`[harness] opencode client exited with code ${result.code} but the session ` +
439
+ `succeeded - treating the run as complete (an opencode v2 client exit does ` +
440
+ `not reflect the session outcome; session ${shortId(sessionId)})`);
441
+ // Automatic bug report: a non-zero exit that was NOT a run failure
442
+ // is still worth recording (warning severity - this is the silent
443
+ // Windows client-crash signature).
444
+ try {
445
+ (0, diagnostics_1.reportDiagnosticSafe)({
446
+ kind: 'harness_failure',
447
+ severity: 'warning',
448
+ message: `opencode client exited with code ${result.code} after a succeeded session (recovered; ${settings.sessionMode ?? 'run'} mode)`,
449
+ errorCode: `HARNESS_EXIT_${result.code}_RECOVERED`,
450
+ agentId: store?.agentId,
451
+ context: {
452
+ harness: adapter.name,
453
+ model: settings.model ?? null,
454
+ mode: settings.sessionMode ?? null,
455
+ taskId: store?.taskId ?? null,
456
+ cwd: settings.cwd ?? null,
457
+ sessionId,
458
+ recovered: true,
459
+ },
460
+ });
461
+ }
462
+ catch {
463
+ /* reporting must never block the run */
464
+ }
465
+ try {
466
+ settings.onRecovered?.({
467
+ harness: resolved,
468
+ exitCode: result.code,
469
+ sessionId,
470
+ });
471
+ }
472
+ catch {
473
+ /* a caller callback must never break the run */
474
+ }
475
+ }
476
+ }
477
+ }
418
478
  // ── Persist the session id for the NEXT run of this task ─────────────
419
479
  // A FAILED attempt's session is treated as consumed by the failure: we
420
480
  // clear it so the next retry (build-plan retry, orchestrator escalation,
@@ -432,7 +492,9 @@ function spawnHarness(harness, prompt, log, settings = {}) {
432
492
  // line had run. The failure is still reported as a failure; only the
433
493
  // conversation is retained.
434
494
  if (store && spec) {
435
- const failedRun = result.code !== 0;
495
+ // A recovered exit is a COMPLETED run (see the v2 block above): keep the
496
+ // session record so a later resume can continue this very conversation.
497
+ const failedRun = finalCode !== 0;
436
498
  // A real task id with a live key - the only shape that can be asked a
437
499
  // question at all. `UUID_RE` keeps synthetic keys (chat-<projectId>)
438
500
  // off the network entirely.
@@ -453,7 +515,7 @@ function spawnHarness(harness, prompt, log, settings = {}) {
453
515
  // title re-capture, which could match an older same-titled session.
454
516
  let id = finalReq?.id ?? result.capturedId;
455
517
  if (!id && spec.capture === 'session-list') {
456
- id = captureFromSessionList(bin, settings.title);
518
+ id = captureFromSessionList(bin, settings.title, settings.cwd);
457
519
  }
458
520
  if (id) {
459
521
  const now = new Date().toISOString();
@@ -487,7 +549,7 @@ function spawnHarness(harness, prompt, log, settings = {}) {
487
549
  }
488
550
  }
489
551
  }
490
- return result.code;
552
+ return finalCode;
491
553
  })().finally(() => {
492
554
  // Runs on EVERY path - success, failure, or a rejection anywhere above.
493
555
  // This used to be the last statement of the body, so a throw between the
@@ -506,13 +568,18 @@ function shortId(id) {
506
568
  * Resolve a just-launched harness session id from the harness's own session
507
569
  * list (opencode `session list --format json`), matched by the unique title
508
570
  * the bridge set with --title. Best-effort - undefined means no resume later.
571
+ *
572
+ * `cwd` matters on opencode v2: `session list` is scoped to the CURRENT
573
+ * PROJECT (derived from the working directory), so without it the list is
574
+ * whatever project the bridge's own process happens to sit in and the title
575
+ * match can never succeed.
509
576
  */
510
- function captureFromSessionList(bin, title) {
577
+ function captureFromSessionList(bin, title, cwd) {
511
578
  if (!title)
512
579
  return undefined;
513
580
  try {
514
581
  const { spawnSync } = require('node:child_process');
515
- const res = spawnSync(bin.file, [...(bin.args ?? []), 'session', 'list', '--format', 'json', '--max-count', '20'], { encoding: 'utf8', timeout: 20_000, windowsHide: true });
582
+ const res = spawnSync(bin.file, [...(bin.args ?? []), 'session', 'list', '--format', 'json', '--max-count', '20'], { encoding: 'utf8', timeout: 20_000, windowsHide: true, cwd });
516
583
  if (res.status !== 0 || !res.stdout)
517
584
  return undefined;
518
585
  const parsed = JSON.parse(res.stdout);
@@ -1 +1 @@
1
- {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../src/lib/harness/spawn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../src/lib/harness/spawn.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export interface LlmResult {
31
31
  summary: string;
32
32
  iterations: number;
33
33
  tokensUsed: number;
34
- finishedBy: 'no-tool-call' | 'max-iterations' | 'task-done';
34
+ finishedBy: 'no-tool-call' | 'max-iterations' | 'task-done' | 'asked-human';
35
35
  }
36
36
  export interface LlmOptions {
37
37
  baseUrl: string;
@@ -378,11 +378,25 @@ function buildTools(api, ctx) {
378
378
  catch {
379
379
  // Chat post is best-effort for the --self mirror
380
380
  }
381
- return { posted: true, commentId: comment.id, channelId, questionMessageId };
381
+ return {
382
+ posted: true,
383
+ commentId: comment.id,
384
+ channelId,
385
+ questionMessageId,
386
+ // TERMINAL ASK (2026-10): an ask pauses the run. End the turn NOW -
387
+ // do not keep working, do not poll. The human's reply resumes this
388
+ // session with the answer.
389
+ endTurn: true,
390
+ message: 'Question posted and the human notified. END YOUR TURN NOW - say ' +
391
+ 'what you asked and what you will do when answered. Do not call ' +
392
+ "wait_for_answer; the human's reply wakes and resumes this session.",
393
+ };
382
394
  }, 'ask_human', `Ask the human a question. Posts a "[question]" comment on the task AND a ` +
383
395
  `message in the project's #agent-questions channel. Pass mentionNames to ` +
384
- `notify specific people. Refuses while a question is already pending. Then ` +
385
- `call wait_for_answer with the returned commentId. Requires comments:create + chat:write.`, {
396
+ `notify specific people (else the task stakeholders are notified). An ask ` +
397
+ `PAUSES you - END YOUR TURN immediately after calling; the human's reply ` +
398
+ `wakes and resumes this session. Refuses while a question is already ` +
399
+ `pending. Requires comments:create + chat:write.`, {
386
400
  type: 'object',
387
401
  properties: {
388
402
  taskId: { type: 'string' },
@@ -494,50 +508,27 @@ function buildTools(api, ctx) {
494
508
  catch {
495
509
  // Chat check is best-effort
496
510
  }
497
- // Same budget contract as the MCP tool: answer immediately, say how
498
- // long is left, tell the agent whether to come back or to stop. The only
499
- // clock available here is the question's own age (`waitedMs`), which is
500
- // exactly the stateless ceiling the backend applies when its cache is
501
- // unavailable - so the two surfaces cannot disagree about when waiting
502
- // is over, and an agent cannot poll unboundedly.
503
- const waitedMs = Math.max(0, Date.now() - qAt);
504
- const remainingSec = Math.max(0, Math.ceil((askTimeout - waitedMs) / 1000));
505
- const retryAfterSec = Math.max(exports.ASK_MIN_RETRY_SEC, Math.min(remainingSec, 15));
506
- if (remainingSec <= 0) {
507
- return {
508
- status: 'QUESTION_PENDING',
509
- pending: true,
510
- waitedSec: Math.floor(waitedMs / 1000),
511
- remainingSec: 0,
512
- commentId,
513
- message: `No answer after ${Math.floor(waitedMs / 1000)}s - your wait ` +
514
- `budget is spent. STOP calling this tool. End your turn and say ` +
515
- `what you asked and what you would do next; the human's reply ` +
516
- `wakes you and resumes this session with the answer.`,
517
- };
518
- }
511
+ // DEPRECATED WAIT (2026-10): no budget, no poll. An ask pauses; the
512
+ // human's reply resumes. Terminal PENDING so any caller ends its turn.
519
513
  return {
520
- status: 'QUESTION_WAITING',
514
+ status: 'QUESTION_PENDING',
521
515
  pending: true,
522
- remainingSec,
523
- retryAfterSec,
524
- waitedSec: Math.floor(waitedMs / 1000),
516
+ waitedSec: 0,
517
+ remainingSec: 0,
525
518
  commentId,
526
- message: `Still unanswered - ${remainingSec}s of your ${Math.round(askTimeout / 1000)}s wait budget left. Do other useful work meanwhile, then call ` +
527
- `this tool again in ${retryAfterSec}s. When remainingSec hits 0 it ` +
528
- `tells you to end your turn.`,
519
+ message: 'Still unanswered - and there is nothing to wait on. STOP calling ' +
520
+ 'this tool. End your turn and say what you asked and what you ' +
521
+ "will do when answered; the human's reply wakes you and resumes " +
522
+ 'this session with the answer.',
529
523
  };
530
- }, 'wait_for_answer', `Check for an answer to a question posted by ask_human (the task comment ` +
531
- `thread AND the #agent-questions channel). This tool NEVER blocks - it ` +
532
- `answers immediately with one of four statuses: ` +
533
- `{status:'ANSWERED', answer, author, at} - carry on with the answer. ` +
534
- `{status:'QUESTION_WAITING', remainingSec, retryAfterSec} - the human has ` +
535
- `not replied yet; do other useful work and call again after retryAfterSec. ` +
536
- `{status:'QUESTION_PENDING'} - your wait budget is spent: END YOUR TURN and ` +
537
- `do not call this again; the human's reply wakes you and resumes this ` +
538
- `session. ` +
539
- `{status:'QUESTION_STALE', reason} - the task is finished or claimed by ` +
540
- `another agent; stop waiting. Requires tasks:read.`, {
524
+ }, 'wait_for_answer', `DEPRECATED (2026-10): no longer waits. Check for an answer to a question ` +
525
+ `posted by ask_human (the task comment thread AND the #agent-questions ` +
526
+ `channel). Answers immediately: {status:'ANSWERED', answer, author, at} - ` +
527
+ `carry on with the answer. {status:'QUESTION_PENDING'} - end your turn; ` +
528
+ `the human's reply wakes and resumes this session. ` +
529
+ `{status:'QUESTION_STALE', reason} - ` +
530
+ `the task is finished or claimed by another agent; stop waiting. New code ` +
531
+ `should call ask_human and end the turn without waiting. Requires tasks:read.`, {
541
532
  type: 'object',
542
533
  properties: {
543
534
  commentId: { type: 'string', description: 'commentId from ask_human' },
@@ -1 +1 @@
1
- {"version":3,"file":"llm-tools.js","sourceRoot":"","sources":["../../../src/lib/llm/llm-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-tools.js","sourceRoot":"","sources":["../../../src/lib/llm/llm-tools.ts"],"names":[],"mappings":"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"}
@@ -196,12 +196,23 @@ async function runLlmSession(api, taskId, brief, opts, projectId) {
196
196
  break;
197
197
  }
198
198
  messages.push(reply.message);
199
+ // TERMINAL ASK (2026-10): an ask_human (endTurn) or a pending wait ends
200
+ // the turn immediately. The run pauses; the human's answer resumes it.
201
+ // Detecting it here (not trusting the model to stop) is what makes the
202
+ // pause real for the --self loop.
203
+ let askedHuman = false;
199
204
  for (const call of toolCalls) {
200
205
  let resultText;
201
206
  try {
202
207
  const args = JSON.parse(call.function.arguments ?? '{}');
203
208
  const fn = tools.find((t) => t.def.name === call.function.name);
204
209
  const result = fn ? await fn.run(args) : `unknown tool: ${call.function.name}`;
210
+ if (result !== null &&
211
+ typeof result === 'object' &&
212
+ (result.endTurn === true ||
213
+ result.status === 'QUESTION_PENDING')) {
214
+ askedHuman = true;
215
+ }
205
216
  resultText = JSON.stringify(result);
206
217
  }
207
218
  catch (err) {
@@ -213,6 +224,13 @@ async function runLlmSession(api, taskId, brief, opts, projectId) {
213
224
  content: resultText.slice(0, 20_000),
214
225
  });
215
226
  }
227
+ if (askedHuman) {
228
+ summary =
229
+ 'Asked the human a question and ended the turn. Paused until the ' +
230
+ 'human answers; their reply resumes this session.';
231
+ finishedBy = 'asked-human';
232
+ break;
233
+ }
216
234
  // Phase 4: compact context if it's growing too large.
217
235
  const estimatedTokens = estimateTotalTokens(messages);
218
236
  if (estimatedTokens > COMPACTION_THRESHOLD_TOKENS) {