@namzu/cli 28.0.0 → 28.1.1

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/CHANGELOG.md +32 -0
  2. package/dist/integrations/sessions/transcript-export.js +3 -1
  3. package/dist/integrations/sessions/transcript-export.js.map +1 -1
  4. package/dist/integrations/subagents/runtime.d.ts +9 -0
  5. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  6. package/dist/integrations/subagents/runtime.js +6 -0
  7. package/dist/integrations/subagents/runtime.js.map +1 -1
  8. package/dist/permissions/live-mode.d.ts +73 -0
  9. package/dist/permissions/live-mode.d.ts.map +1 -0
  10. package/dist/permissions/live-mode.js +62 -0
  11. package/dist/permissions/live-mode.js.map +1 -0
  12. package/dist/tui/App.d.ts.map +1 -1
  13. package/dist/tui/App.js +180 -74
  14. package/dist/tui/App.js.map +1 -1
  15. package/dist/tui/Checklist.d.ts +56 -0
  16. package/dist/tui/Checklist.d.ts.map +1 -0
  17. package/dist/tui/Checklist.js +90 -0
  18. package/dist/tui/Checklist.js.map +1 -0
  19. package/dist/tui/StatusBar.d.ts +10 -0
  20. package/dist/tui/StatusBar.d.ts.map +1 -1
  21. package/dist/tui/StatusBar.js +8 -1
  22. package/dist/tui/StatusBar.js.map +1 -1
  23. package/dist/tui/TaskList.d.ts +18 -25
  24. package/dist/tui/TaskList.d.ts.map +1 -1
  25. package/dist/tui/TaskList.js +34 -58
  26. package/dist/tui/TaskList.js.map +1 -1
  27. package/dist/tui/Transcript.d.ts.map +1 -1
  28. package/dist/tui/Transcript.js +8 -1
  29. package/dist/tui/Transcript.js.map +1 -1
  30. package/dist/tui/agent.d.ts +43 -3
  31. package/dist/tui/agent.d.ts.map +1 -1
  32. package/dist/tui/agent.js +76 -8
  33. package/dist/tui/agent.js.map +1 -1
  34. package/dist/tui/live-window.d.ts +22 -0
  35. package/dist/tui/live-window.d.ts.map +1 -1
  36. package/dist/tui/live-window.js +34 -0
  37. package/dist/tui/live-window.js.map +1 -1
  38. package/dist/tui/notices.d.ts +27 -0
  39. package/dist/tui/notices.d.ts.map +1 -0
  40. package/dist/tui/notices.js +27 -0
  41. package/dist/tui/notices.js.map +1 -0
  42. package/dist/tui/task-activity.d.ts +71 -0
  43. package/dist/tui/task-activity.d.ts.map +1 -0
  44. package/dist/tui/task-activity.js +157 -0
  45. package/dist/tui/task-activity.js.map +1 -0
  46. package/dist/tui/types.d.ts +13 -0
  47. package/dist/tui/types.d.ts.map +1 -1
  48. package/package.json +7 -7
@@ -91,6 +91,14 @@ export type AgentEvent = {
91
91
  readonly hidden?: boolean;
92
92
  /** Output lines shown (collapsible) under the result. */
93
93
  readonly detail?: readonly string[];
94
+ /**
95
+ * The tool's own one-line account of its result, when it gave one (a
96
+ * `generic` result view). `summary` is the first line of the MODEL's
97
+ * receipt; this is what the tool chose to say to a person, which is
98
+ * the one to show when the receipt carries handles only the model
99
+ * needs.
100
+ */
101
+ readonly resultLabel?: string;
94
102
  }
95
103
  /**
96
104
  * The model thinking, for the live region only. `text` is a delta;
@@ -207,15 +215,16 @@ export type AgentEvent = {
207
215
  }
208
216
  /**
209
217
  * One task of the model's plan, on every change. `taskId` is what lets the
210
- * live list update a row in place rather than append; `status` is the
211
- * store's own vocabulary. The transcript still records only the opening
212
- * and the close — the churn in between is for the list, not the record.
218
+ * checklist update a row in place rather than append; `status` is the
219
+ * store's own vocabulary. The id is a key only: no surface shows it.
213
220
  */
214
221
  | {
215
222
  readonly kind: 'task';
216
223
  readonly taskId: string;
217
224
  readonly subject: string;
218
225
  readonly status: 'pending' | 'in_progress' | 'completed' | 'failed';
226
+ /** The task left the plan; the checklist drops it. */
227
+ readonly removed?: true;
219
228
  }
220
229
  /**
221
230
  * The turn ended without throwing — which is not the same as succeeding.
@@ -347,6 +356,15 @@ export interface SendOptions {
347
356
  * Overrides the session default for this turn only.
348
357
  */
349
358
  readonly permissionMode?: PermissionMode;
359
+ /**
360
+ * The host's current mode, read at every review decision of this turn —
361
+ * the turn's own calls and the delegated turns that borrow its handler.
362
+ * Present, it lets the operator change the mode while the turn runs:
363
+ * each decision takes the mode current when it is asked and keeps it,
364
+ * dialog included. Pair a change with `AgentSession.setPermissionMode`
365
+ * so it is recorded. Absent, `permissionMode` holds for the whole turn.
366
+ */
367
+ readonly currentPermissionMode?: () => PermissionMode;
350
368
  /**
351
369
  * Caller-reserved identity for this new turn, for a host that has to name
352
370
  * the turn before it starts (a resident step's verifier). Absent: the
@@ -417,6 +435,20 @@ export interface ResumePausedParams {
417
435
  */
418
436
  readonly checkpointId?: string;
419
437
  readonly signal?: AbortSignal;
438
+ /**
439
+ * The mode the resumed turn starts under. Absent: the session's own
440
+ * `permissionMode`, else `auto`. The interactive terminal never creates
441
+ * its session with a mode — it hands one to every turn — so without this
442
+ * a `/resume` in plan mode was decided under `auto`.
443
+ */
444
+ readonly permissionMode?: PermissionMode;
445
+ /**
446
+ * The host's current mode, read at every decision, as
447
+ * `SendOptions.currentPermissionMode` is for a new turn: Shift+Tab into
448
+ * plan while the resumed turn runs refuses its next change, and its
449
+ * children's.
450
+ */
451
+ readonly currentPermissionMode?: () => PermissionMode;
420
452
  }
421
453
  export interface AgentSession {
422
454
  /** Loaded extensions; idle-session changes can explicitly be remembered across reconstruction. */
@@ -648,6 +680,14 @@ export interface AgentSession {
648
680
  * change when this capability is absent rather than pretending it revoked.
649
681
  */
650
682
  readonly resetApprovalLatch?: () => void;
683
+ /**
684
+ * Record a permission-mode change on every turn running now: written to
685
+ * the session log as `approval_policy_changed` before it takes effect,
686
+ * and told to the model once, by the kernel's own notice. The change
687
+ * itself is read through `SendOptions.currentPermissionMode`; this only
688
+ * makes it durable. Optional for older embedded sessions.
689
+ */
690
+ readonly setPermissionMode?: (mode: PermissionMode, reason?: string) => Promise<void>;
651
691
  /**
652
692
  * Tools this session will run without asking, by name.
653
693
  *
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/tui/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/tui/agent.ts"],"names":[],"mappings":"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"}
package/dist/tui/agent.js CHANGED
@@ -67,6 +67,7 @@ import { cliLogger } from '../logging.js';
67
67
  import { formatMemoryDiagnostics } from '../memory/presentation.js';
68
68
  import { composeMemoryPrompt, readMemory } from '../memory/store.js';
69
69
  import { composeStoredMemoryPrompt, describeCuratedNotesImport, describeMemoryMigration, importCuratedNotes, migrateMemoryOnce, saveTypedNote, } from '../memory/typed.js';
70
+ import { createLiveModeControl, permissionChangeReason, } from '../permissions/live-mode.js';
70
71
  import { projectTurnConversation } from './conversation-history.js';
71
72
  import { buildSwitchModelTool } from './model-switch-tool.js';
72
73
  import { resolveModelSwitch } from './model-switch.js';
@@ -1020,6 +1021,10 @@ export async function createAgentSession(prefs, detected, options = {}) {
1020
1021
  // Agent tool. Keying the review channel by the executing turn keeps two
1021
1022
  // concurrent sends from borrowing each other's prompt or approval latch.
1022
1023
  const delegatedResumeHandlers = new Map();
1024
+ // Beside each borrowed handler, the switch that sends it the batches it
1025
+ // would otherwise never see (`reviewAllowedCalls`): without it a child's
1026
+ // rule-allowed or already-approved call ran past a handler in plan mode.
1027
+ const delegatedReviewAllowedCalls = new Map();
1023
1028
  const goalToolNames = new Set(SESSION_GOAL_TOOL_NAMES);
1024
1029
  if (options.sessionGoals) {
1025
1030
  registry.register(buildSessionGoalTools(options.sessionGoals, (turnId) => goalAuthorities.get(turnId)));
@@ -1210,6 +1215,7 @@ export async function createAgentSession(prefs, detected, options = {}) {
1210
1215
  },
1211
1216
  sandboxWorkspace,
1212
1217
  resolveResumeHandler: (turnId) => delegatedResumeHandlers.get(turnId),
1218
+ resolveReviewAllowedCalls: (turnId) => delegatedReviewAllowedCalls.get(turnId),
1213
1219
  resolveWaitForInbound: (turnId) => delegatedInputWaiters.get(turnId),
1214
1220
  ...(sandbox.provider ? { sandboxProvider: sandbox.provider } : {}),
1215
1221
  ...(options.sandbox?.teardownTimeoutMs !== undefined
@@ -1494,6 +1500,10 @@ export async function createAgentSession(prefs, detected, options = {}) {
1494
1500
  // Persists across turns: once the user picks "approve all", later tool
1495
1501
  // batches in this session run without prompting.
1496
1502
  const approval = { all: false };
1503
+ // The turns running now, each deciding under a mode the operator may change
1504
+ // mid-turn, and the mode each conversation's log last recorded.
1505
+ const liveModeControls = new Set();
1506
+ const recordedModes = new Map();
1497
1507
  // Share the project store with tools and recall. Each turn selects either
1498
1508
  // this extracted-claim promoter or explicit consolidation, never both.
1499
1509
  // Candidates without useful claims write nothing.
@@ -1642,7 +1652,7 @@ export async function createAgentSession(prefs, detected, options = {}) {
1642
1652
  * checkpoint cannot carry. `resumeDurable` and `resumePaused` differ only
1643
1653
  * in where the log and its lease come from.
1644
1654
  */
1645
- const kernelResume = ({ entry, sessionLog, checkpointStore, lease, signal, checkpointId, listener, }) => operations.promise(signal, async (ownedSignal) => {
1655
+ const kernelResume = ({ entry, sessionLog, checkpointStore, lease, signal, checkpointId, listener, permissionMode, currentPermissionMode, }) => operations.promise(signal, async (ownedSignal) => {
1646
1656
  const selectTaskStore = beginTaskStoreReadout();
1647
1657
  // The turn's own limits, as its `turn_started` recorded them.
1648
1658
  const resumedLimits = (await readStoredTurnGuards(sessionLog, entry.turnId)) ?? resolveTurnGuards(options.limits);
@@ -1679,12 +1689,32 @@ export async function createAgentSession(prefs, detected, options = {}) {
1679
1689
  ]
1680
1690
  .filter((s) => Boolean(s))
1681
1691
  .join('\n\n') || undefined;
1682
- const resumeHandler = makeResumeHandler(approval, undefined, options.permissionMode, (name, input) => isPromptExempt(registry, name, input), { unattendedSandboxEscape });
1683
1692
  if (delegatedResumeHandlers.has(entry.turnId)) {
1684
1693
  throw new Error(`Turn ${entry.turnId} already owns a delegated review channel.`);
1685
1694
  }
1695
+ // The resumed turn is decided under the caller's mode, else the
1696
+ // session's, read at every decision exactly as a new turn's is: the
1697
+ // interactive terminal creates its session without a mode and hands
1698
+ // one to each turn, so the session's alone left a TUI `/resume` in
1699
+ // plan mode under `auto`. Plan is stricter than the rules, so while it
1700
+ // holds a batch a rule allows, or an approval earlier in the turn
1701
+ // covers, still reaches the handler that refuses it — in this turn and
1702
+ // in every turn it delegates. No prompt stands behind the handler:
1703
+ // nobody answers a drainer's terminal, and `/resume` never asked.
1704
+ const modeControl = createLiveModeControl({
1705
+ initial: permissionMode ?? options.permissionMode ?? 'auto',
1706
+ ...(currentPermissionMode ? { read: currentPermissionMode } : {}),
1707
+ ...(recordedModes.has(String(entry.sessionId))
1708
+ ? { recorded: recordedModes.get(String(entry.sessionId)) }
1709
+ : {}),
1710
+ handlerFor: (mode) => makeResumeHandler(approval, undefined, mode, (name, input) => isPromptExempt(registry, name, input), { unattendedSandboxEscape }),
1711
+ });
1712
+ const resumeHandler = modeControl.handler;
1713
+ const reviewAllowedCalls = modeControl.reviewAllowedCalls;
1714
+ liveModeControls.add(modeControl);
1686
1715
  const turnScope = { ...entry, topicId: scope.topicId };
1687
1716
  delegatedResumeHandlers.set(entry.turnId, resumeHandler);
1717
+ delegatedReviewAllowedCalls.set(entry.turnId, reviewAllowedCalls);
1688
1718
  delegationScopes.set(entry.turnId, turnScope);
1689
1719
  delegationLimits.set(entry.turnId, resumedLimits);
1690
1720
  const turnTaskStore = selectTaskStore(turnScope);
@@ -1757,6 +1787,9 @@ export async function createAgentSession(prefs, detected, options = {}) {
1757
1787
  // prompt would block the pass forever on a turn nobody is watching.
1758
1788
  // The gate's deny rules still apply.
1759
1789
  resumeHandler,
1790
+ approvalPolicyName: modeControl.initialName,
1791
+ onApprovalPolicy: (box) => modeControl.attach(box),
1792
+ reviewAllowedCalls,
1760
1793
  signal: ownedSignal,
1761
1794
  // Attribution comes from the ENTRY, not from this session: the turn
1762
1795
  // belongs to whoever started it, and stamping the drainer's ids onto
@@ -1792,8 +1825,11 @@ export async function createAgentSession(prefs, detected, options = {}) {
1792
1825
  });
1793
1826
  }
1794
1827
  finally {
1828
+ liveModeControls.delete(modeControl);
1829
+ recordedModes.set(String(entry.sessionId), modeControl.current());
1795
1830
  if (delegatedResumeHandlers.get(entry.turnId) === resumeHandler) {
1796
1831
  delegatedResumeHandlers.delete(entry.turnId);
1832
+ delegatedReviewAllowedCalls.delete(entry.turnId);
1797
1833
  delegationScopes.delete(entry.turnId);
1798
1834
  delegationLimits.delete(entry.turnId);
1799
1835
  await subagentRuntime?.releaseTurn(entry.turnId);
@@ -1806,7 +1842,7 @@ export async function createAgentSession(prefs, detected, options = {}) {
1806
1842
  * headless caller renders a resumed turn exactly as it rendered the first
1807
1843
  * segment.
1808
1844
  */
1809
- const resumePausedStream = ({ turnId, checkpointId, signal, }) => {
1845
+ const resumePausedStream = ({ turnId, checkpointId, signal, permissionMode, currentPermissionMode, }) => {
1810
1846
  const queue = [];
1811
1847
  let wake;
1812
1848
  let settled = false;
@@ -1824,6 +1860,8 @@ export async function createAgentSession(prefs, detected, options = {}) {
1824
1860
  sessionLog,
1825
1861
  ...(signal ? { signal } : {}),
1826
1862
  ...(checkpointId !== undefined ? { checkpointId: checkpointId } : {}),
1863
+ ...(permissionMode ? { permissionMode } : {}),
1864
+ ...(currentPermissionMode ? { currentPermissionMode } : {}),
1827
1865
  listener: (event) => {
1828
1866
  queue.push(event);
1829
1867
  wake?.();
@@ -1996,6 +2034,9 @@ export async function createAgentSession(prefs, detected, options = {}) {
1996
2034
  resetApprovalLatch: () => {
1997
2035
  approval.all = false;
1998
2036
  },
2037
+ setPermissionMode: async (mode, reason) => {
2038
+ await Promise.all([...liveModeControls].map((control) => control.record(mode, reason ?? permissionChangeReason(mode, 'now'))));
2039
+ },
1999
2040
  promptExemptTools: () => promptExemptToolNames(registry).filter((name) => !goalToolNames.has(name)),
2000
2041
  send: (messages, opts) => operations.stream(opts?.signal, (signal) => (async function* () {
2001
2042
  const selectTaskStore = beginTaskStoreReadout();
@@ -2003,8 +2044,22 @@ export async function createAgentSession(prefs, detected, options = {}) {
2003
2044
  const turnOpts = { ...opts, signal };
2004
2045
  let runTools = registry;
2005
2046
  lastSendInteractive = opts?.onPermission !== undefined;
2006
- const resumeHandler = makeResumeHandler(approval, opts?.onPermission, opts?.permissionMode ?? options.permissionMode, (name, input) => isPromptExempt(runTools, name, input), { unattendedSandboxEscape });
2007
2047
  const turnScope = { ...scope };
2048
+ const initialMode = opts?.permissionMode ??
2049
+ options.permissionMode ??
2050
+ (opts?.onPermission ? 'prompt' : 'auto');
2051
+ // The mode is read at every decision, so the operator can change it
2052
+ // while this turn runs (see permissions/live-mode.ts).
2053
+ const modeControl = createLiveModeControl({
2054
+ initial: initialMode,
2055
+ ...(opts?.currentPermissionMode ? { read: opts.currentPermissionMode } : {}),
2056
+ ...(recordedModes.has(String(turnScope.sessionId))
2057
+ ? { recorded: recordedModes.get(String(turnScope.sessionId)) }
2058
+ : {}),
2059
+ handlerFor: (mode) => makeResumeHandler(approval, opts?.onPermission, mode, (name, input) => isPromptExempt(runTools, name, input), { unattendedSandboxEscape }),
2060
+ });
2061
+ const resumeHandler = modeControl.handler;
2062
+ liveModeControls.add(modeControl);
2008
2063
  // The turn's id is reserved here, before the kernel begins it, because
2009
2064
  // everything that authorizes the turn is keyed by it: the review
2010
2065
  // channel its children borrow, the delegation gateway, the goal-round
@@ -2021,6 +2076,7 @@ export async function createAgentSession(prefs, detected, options = {}) {
2021
2076
  }
2022
2077
  claimed.add(turnId);
2023
2078
  delegatedResumeHandlers.set(turnId, resumeHandler);
2079
+ delegatedReviewAllowedCalls.set(turnId, modeControl.reviewAllowedCalls);
2024
2080
  if (opts?.onModelSwitch)
2025
2081
  modelSwitchHandlers.set(turnId, opts.onModelSwitch);
2026
2082
  if (opts?.waitForInbound)
@@ -2270,6 +2326,9 @@ export async function createAgentSession(prefs, detected, options = {}) {
2270
2326
  projectInstructionContext: projectInstructions.createTurnContext(),
2271
2327
  opts: turnOpts,
2272
2328
  resumeHandler,
2329
+ approvalPolicyName: modeControl.initialName,
2330
+ onApprovalPolicy: (box) => modeControl.attach(box),
2331
+ reviewAllowedCalls: modeControl.reviewAllowedCalls,
2273
2332
  taskGateway: await subagentRuntime?.gatewayForTurn(turnId),
2274
2333
  completionInbox: await subagentRuntime?.completionInboxForTurn(turnId),
2275
2334
  promptContributions,
@@ -2300,10 +2359,13 @@ export async function createAgentSession(prefs, detected, options = {}) {
2300
2359
  }
2301
2360
  }
2302
2361
  finally {
2362
+ liveModeControls.delete(modeControl);
2363
+ recordedModes.set(String(turnScope.sessionId), modeControl.current());
2303
2364
  for (const turnId of claimed) {
2304
2365
  if (delegatedResumeHandlers.get(turnId) !== resumeHandler)
2305
2366
  continue;
2306
2367
  delegatedResumeHandlers.delete(turnId);
2368
+ delegatedReviewAllowedCalls.delete(turnId);
2307
2369
  modelSwitchHandlers.delete(turnId);
2308
2370
  delegatedInputWaiters.delete(turnId);
2309
2371
  delegationScopes.delete(turnId);
@@ -2771,7 +2833,7 @@ function compactionConfigFor(compaction) {
2771
2833
  : {}),
2772
2834
  };
2773
2835
  }
2774
- async function* runTurn({ retainedToolPreviewChars, fileReadTracker, provider, compactionConfig, consolidateInto, backgroundJobs, backgroundJobOwner, fallbackProviders, model, tools, pluginManager, skillRegistry, skills, scope, turnId, paths, sessionLog, claimTurn, workingDirectory, limits, additionalDirectories, escalation, sandboxWorkspace, rules, structuredOutput, reviewAnswer, maxAnswerReviews, promoteMemory, prepareStep, resumeHandler, taskStore, systemPrompt, messages, projectInstructionContext, opts, taskGateway, completionInbox, promptContributions, runtimeToolOverrides, webSearch, web, sandboxProvider, sandboxTeardownTimeoutMs, onSessionEvent, }) {
2836
+ async function* runTurn({ retainedToolPreviewChars, fileReadTracker, provider, compactionConfig, consolidateInto, backgroundJobs, backgroundJobOwner, fallbackProviders, model, tools, pluginManager, skillRegistry, skills, scope, turnId, paths, sessionLog, claimTurn, workingDirectory, limits, additionalDirectories, escalation, sandboxWorkspace, rules, structuredOutput, reviewAnswer, maxAnswerReviews, promoteMemory, prepareStep, resumeHandler, approvalPolicyName, onApprovalPolicy, reviewAllowedCalls, taskStore, systemPrompt, messages, projectInstructionContext, opts, taskGateway, completionInbox, promptContributions, runtimeToolOverrides, webSearch, web, sandboxProvider, sandboxTeardownTimeoutMs, onSessionEvent, }) {
2775
2837
  const signal = opts?.signal;
2776
2838
  // One presenter for the whole stream, built from the registry this scope
2777
2839
  // already holds. Its absence HERE is what forced presentation to be name
@@ -2847,6 +2909,11 @@ async function* runTurn({ retainedToolPreviewChars, fileReadTracker, provider, c
2847
2909
  // tools `query()` registers deferred below and any tool server that
2848
2910
  // connected after this session was built.
2849
2911
  resumeHandler,
2912
+ ...(approvalPolicyName ? { approvalPolicyName } : {}),
2913
+ ...(onApprovalPolicy ? { onApprovalPolicy } : {}),
2914
+ // Plan mode is stricter than the rules: a batch a rule allows still
2915
+ // reaches the handler, which refuses the change.
2916
+ ...(reviewAllowedCalls ? { reviewAllowedCalls } : {}),
2850
2917
  ...(promptContributions ? { promptContributions } : {}),
2851
2918
  ...(runtimeToolOverrides ? { runtimeToolOverrides } : {}),
2852
2919
  ...(web ? { web } : {}),
@@ -3062,6 +3129,7 @@ export function toAgentEvent(event, presenter) {
3062
3129
  summary,
3063
3130
  ...(event.durationMs !== undefined ? { durationMs: event.durationMs } : {}),
3064
3131
  ...(view.kind === 'generic' && view.visibility === 'hidden' ? { hidden: true } : {}),
3132
+ ...(view.kind === 'generic' && view.label.length > 0 ? { resultLabel: view.label } : {}),
3065
3133
  ...(withoutRepeatedSummary && withoutRepeatedSummary.length > 0
3066
3134
  ? { detail: withoutRepeatedSummary }
3067
3135
  : {}),
@@ -3128,14 +3196,14 @@ export function toAgentEvent(event, presenter) {
3128
3196
  }
3129
3197
  case 'task_created':
3130
3198
  case 'task_updated':
3131
- // Every change, not only completions: the live task list needs the
3132
- // in-progress flips to show which step is current. The transcript
3133
- // decides for itself which of these it records.
3199
+ // Every change, not only completions: the checklist needs the
3200
+ // in-progress flips to show which step is current.
3134
3201
  return {
3135
3202
  kind: 'task',
3136
3203
  taskId: String(event.taskId),
3137
3204
  subject: event.subject,
3138
3205
  status: event.status,
3206
+ ...(event.type === 'task_updated' && event.deleted ? { removed: true } : {}),
3139
3207
  };
3140
3208
  case 'turn_paused':
3141
3209
  // A pause is not an error and not an invisible end. The checkpoint and