@pentoshi/clai 3.9.1 → 3.9.3
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/agent/compaction-attempt.d.ts +22 -0
- package/dist/agent/compaction-attempt.js +69 -0
- package/dist/agent/compaction-attempt.js.map +1 -0
- package/dist/agent/compaction-summary.d.ts +27 -0
- package/dist/agent/compaction-summary.js +62 -0
- package/dist/agent/compaction-summary.js.map +1 -1
- package/dist/agent/context-breakdown.d.ts +2 -0
- package/dist/agent/context-breakdown.js +37 -0
- package/dist/agent/context-breakdown.js.map +1 -1
- package/dist/agent/context-manager.d.ts +7 -1
- package/dist/agent/context-manager.js +64 -15
- package/dist/agent/context-manager.js.map +1 -1
- package/dist/agent/continue-orient.d.ts +8 -0
- package/dist/agent/continue-orient.js +26 -3
- package/dist/agent/continue-orient.js.map +1 -1
- package/dist/agent/durable-envelope.d.ts +39 -0
- package/dist/agent/durable-envelope.js +195 -0
- package/dist/agent/durable-envelope.js.map +1 -0
- package/dist/agent/events.d.ts +21 -0
- package/dist/agent/loop-guard.d.ts +13 -5
- package/dist/agent/loop-guard.js +114 -1
- package/dist/agent/loop-guard.js.map +1 -1
- package/dist/agent/outcomes.d.ts +29 -0
- package/dist/agent/outcomes.js +118 -3
- package/dist/agent/outcomes.js.map +1 -1
- package/dist/agent/plan-decision.js +8 -3
- package/dist/agent/plan-decision.js.map +1 -1
- package/dist/agent/plan-tool.d.ts +5 -0
- package/dist/agent/plan-tool.js +166 -6
- package/dist/agent/plan-tool.js.map +1 -1
- package/dist/agent/reliability-policy.d.ts +11 -6
- package/dist/agent/reliability-policy.js +19 -13
- package/dist/agent/reliability-policy.js.map +1 -1
- package/dist/agent/request-budget.d.ts +24 -0
- package/dist/agent/request-budget.js +59 -0
- package/dist/agent/request-budget.js.map +1 -0
- package/dist/agent/responder-context.js +2 -2
- package/dist/agent/responder-context.js.map +1 -1
- package/dist/agent/responder-parent.d.ts +30 -0
- package/dist/agent/responder-parent.js +82 -0
- package/dist/agent/responder-parent.js.map +1 -0
- package/dist/agent/runner.d.ts +14 -1
- package/dist/agent/runner.js +850 -237
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/scope-context.d.ts +5 -0
- package/dist/agent/scope-context.js +7 -1
- package/dist/agent/scope-context.js.map +1 -1
- package/dist/agent/session-policy.js +1 -0
- package/dist/agent/session-policy.js.map +1 -1
- package/dist/agent/stop-summary.js +13 -7
- package/dist/agent/stop-summary.js.map +1 -1
- package/dist/agent/stream-recovery.d.ts +83 -0
- package/dist/agent/stream-recovery.js +270 -0
- package/dist/agent/stream-recovery.js.map +1 -0
- package/dist/agent/task-analyzer.js +7 -3
- package/dist/agent/task-analyzer.js.map +1 -1
- package/dist/agent/task-evidence.js +2 -0
- package/dist/agent/task-evidence.js.map +1 -1
- package/dist/agent/task-sync.d.ts +11 -0
- package/dist/agent/task-sync.js +31 -0
- package/dist/agent/task-sync.js.map +1 -1
- package/dist/agent/tool-call-parser.d.ts +6 -13
- package/dist/agent/tool-call-parser.js +186 -82
- package/dist/agent/tool-call-parser.js.map +1 -1
- package/dist/agent/tool-history.d.ts +8 -2
- package/dist/agent/tool-history.js +8 -1
- package/dist/agent/tool-history.js.map +1 -1
- package/dist/agent/turn-outcome.d.ts +4 -1
- package/dist/agent/turn-outcome.js +16 -2
- package/dist/agent/turn-outcome.js.map +1 -1
- package/dist/app/adapters/agent-event-adapter.js +27 -0
- package/dist/app/adapters/agent-event-adapter.js.map +1 -1
- package/dist/app/adapters/current-agent-adapter.js +1 -0
- package/dist/app/adapters/current-agent-adapter.js.map +1 -1
- package/dist/app/adapters/current-jobs-adapter.js +4 -3
- package/dist/app/adapters/current-jobs-adapter.js.map +1 -1
- package/dist/app/adapters/current-store-adapter.js +4 -3
- package/dist/app/adapters/current-store-adapter.js.map +1 -1
- package/dist/app/adapters/current-updates-adapter.d.ts +1 -1
- package/dist/app/adapters/current-updates-adapter.js +34 -5
- package/dist/app/adapters/current-updates-adapter.js.map +1 -1
- package/dist/app/adapters/quiet-meta-tools.js +2 -1
- package/dist/app/adapters/quiet-meta-tools.js.map +1 -1
- package/dist/app/controllers/job-controller.d.ts +4 -3
- package/dist/app/controllers/job-controller.js +9 -6
- package/dist/app/controllers/job-controller.js.map +1 -1
- package/dist/app/controllers/plan-controller.js +14 -0
- package/dist/app/controllers/plan-controller.js.map +1 -1
- package/dist/app/controllers/responder-settlement.js +2 -2
- package/dist/app/controllers/responder-settlement.js.map +1 -1
- package/dist/app/controllers/session-compact-helper.d.ts +23 -1
- package/dist/app/controllers/session-compact-helper.js +117 -7
- package/dist/app/controllers/session-compact-helper.js.map +1 -1
- package/dist/app/controllers/session-context-usage.d.ts +24 -0
- package/dist/app/controllers/session-context-usage.js +89 -0
- package/dist/app/controllers/session-context-usage.js.map +1 -0
- package/dist/app/controllers/session-controller.d.ts +18 -17
- package/dist/app/controllers/session-controller.js +127 -119
- package/dist/app/controllers/session-controller.js.map +1 -1
- package/dist/app/controllers/session-prompt-queue.d.ts +3 -0
- package/dist/app/controllers/session-prompt-queue.js +20 -1
- package/dist/app/controllers/session-prompt-queue.js.map +1 -1
- package/dist/app/controllers/session-responder.js +16 -6
- package/dist/app/controllers/session-responder.js.map +1 -1
- package/dist/app/controllers/session-turn-request.d.ts +18 -0
- package/dist/app/controllers/session-turn-request.js +31 -0
- package/dist/app/controllers/session-turn-request.js.map +1 -0
- package/dist/app/controllers/turn-continuation.d.ts +14 -0
- package/dist/app/controllers/turn-continuation.js +46 -0
- package/dist/app/controllers/turn-continuation.js.map +1 -0
- package/dist/app/events/app-event.d.ts +21 -0
- package/dist/app/events/app-event.js +1 -0
- package/dist/app/events/app-event.js.map +1 -1
- package/dist/app/ports/agent-port.d.ts +7 -0
- package/dist/app/ports/jobs-port.d.ts +4 -3
- package/dist/app/ports/persistence-port.d.ts +11 -0
- package/dist/app/ports/updates-port.d.ts +8 -0
- package/dist/attachments/service.js +13 -2
- package/dist/attachments/service.js.map +1 -1
- package/dist/commands/providers.js +13 -10
- package/dist/commands/providers.js.map +1 -1
- package/dist/commands/update.d.ts +4 -0
- package/dist/commands/update.js +14 -0
- package/dist/commands/update.js.map +1 -1
- package/dist/llm/adapters/anthropic-tools.d.ts +14 -1
- package/dist/llm/adapters/anthropic-tools.js +36 -5
- package/dist/llm/adapters/anthropic-tools.js.map +1 -1
- package/dist/llm/adapters/gemini-tools.d.ts +3 -1
- package/dist/llm/adapters/gemini-tools.js +5 -2
- package/dist/llm/adapters/gemini-tools.js.map +1 -1
- package/dist/llm/adapters/ollama-tools.js +8 -3
- package/dist/llm/adapters/ollama-tools.js.map +1 -1
- package/dist/llm/adapters/openai-tools.js +8 -1
- package/dist/llm/adapters/openai-tools.js.map +1 -1
- package/dist/llm/agentrouter.js +2 -0
- package/dist/llm/agentrouter.js.map +1 -1
- package/dist/llm/anthropic.d.ts +8 -0
- package/dist/llm/anthropic.js +68 -9
- package/dist/llm/anthropic.js.map +1 -1
- package/dist/llm/aws-mantle.js +60 -12
- package/dist/llm/aws-mantle.js.map +1 -1
- package/dist/llm/bynara.js +2 -0
- package/dist/llm/bynara.js.map +1 -1
- package/dist/llm/capabilities.d.ts +7 -0
- package/dist/llm/capabilities.js +22 -0
- package/dist/llm/capabilities.js.map +1 -1
- package/dist/llm/gemini.d.ts +3 -0
- package/dist/llm/gemini.js +71 -11
- package/dist/llm/gemini.js.map +1 -1
- package/dist/llm/groq.d.ts +20 -1
- package/dist/llm/groq.js +32 -4
- package/dist/llm/groq.js.map +1 -1
- package/dist/llm/http.d.ts +29 -0
- package/dist/llm/http.js +122 -29
- package/dist/llm/http.js.map +1 -1
- package/dist/llm/kimchi.js +2 -0
- package/dist/llm/kimchi.js.map +1 -1
- package/dist/llm/nvidia.js +2 -0
- package/dist/llm/nvidia.js.map +1 -1
- package/dist/llm/ollama.d.ts +5 -0
- package/dist/llm/ollama.js +53 -6
- package/dist/llm/ollama.js.map +1 -1
- package/dist/llm/openai.js +2 -0
- package/dist/llm/openai.js.map +1 -1
- package/dist/llm/openrouter.js +2 -0
- package/dist/llm/openrouter.js.map +1 -1
- package/dist/llm/qwen-cloud.js +2 -0
- package/dist/llm/qwen-cloud.js.map +1 -1
- package/dist/llm/router.d.ts +16 -0
- package/dist/llm/router.js +79 -23
- package/dist/llm/router.js.map +1 -1
- package/dist/llm/sampling.d.ts +32 -0
- package/dist/llm/sampling.js +48 -0
- package/dist/llm/sampling.js.map +1 -0
- package/dist/llm/stream-progress.d.ts +4 -0
- package/dist/llm/stream-progress.js +43 -0
- package/dist/llm/stream-progress.js.map +1 -0
- package/dist/llm/system-messages.d.ts +29 -0
- package/dist/llm/system-messages.js +51 -0
- package/dist/llm/system-messages.js.map +1 -0
- package/dist/llm/token-usage.d.ts +4 -1
- package/dist/llm/token-usage.js +56 -4
- package/dist/llm/token-usage.js.map +1 -1
- package/dist/llm/tool-protocol.js +30 -0
- package/dist/llm/tool-protocol.js.map +1 -1
- package/dist/os/process-tree.d.ts +15 -0
- package/dist/os/process-tree.js +77 -0
- package/dist/os/process-tree.js.map +1 -0
- package/dist/prompts/embedded.js +1 -1
- package/dist/prompts/embedded.js.map +1 -1
- package/dist/prompts/system.agent.md +13 -12
- package/dist/repl/prompt-line.d.ts +5 -0
- package/dist/repl/prompt-line.js +7 -1
- package/dist/repl/prompt-line.js.map +1 -1
- package/dist/repl.js +61 -41
- package/dist/repl.js.map +1 -1
- package/dist/safety/classifier.js +98 -44
- package/dist/safety/classifier.js.map +1 -1
- package/dist/safety/engagement-policy.d.ts +8 -0
- package/dist/safety/engagement-policy.js +52 -7
- package/dist/safety/engagement-policy.js.map +1 -1
- package/dist/safety/patterns.d.ts +44 -0
- package/dist/safety/patterns.js +168 -37
- package/dist/safety/patterns.js.map +1 -1
- package/dist/store/config.d.ts +9 -1
- package/dist/store/config.js +51 -1
- package/dist/store/config.js.map +1 -1
- package/dist/store/history-index.d.ts +12 -0
- package/dist/store/history-index.js +47 -18
- package/dist/store/history-index.js.map +1 -1
- package/dist/store/history.d.ts +5 -2
- package/dist/store/history.js +153 -62
- package/dist/store/history.js.map +1 -1
- package/dist/store/plan.d.ts +81 -5
- package/dist/store/plan.js +406 -46
- package/dist/store/plan.js.map +1 -1
- package/dist/store/redaction-cache.d.ts +12 -0
- package/dist/store/redaction-cache.js +51 -0
- package/dist/store/redaction-cache.js.map +1 -0
- package/dist/store/responder-settlement.d.ts +5 -1
- package/dist/store/responder-settlement.js +42 -30
- package/dist/store/responder-settlement.js.map +1 -1
- package/dist/store/scope.js +36 -27
- package/dist/store/scope.js.map +1 -1
- package/dist/store/task-transitions.d.ts +19 -0
- package/dist/store/task-transitions.js +46 -0
- package/dist/store/task-transitions.js.map +1 -0
- package/dist/tools/capabilities.js +33 -18
- package/dist/tools/capabilities.js.map +1 -1
- package/dist/tools/command-intent.d.ts +24 -0
- package/dist/tools/command-intent.js +158 -4
- package/dist/tools/command-intent.js.map +1 -1
- package/dist/tools/definitions.d.ts +5 -1
- package/dist/tools/definitions.js +162 -21
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/fs.d.ts +16 -0
- package/dist/tools/fs.js +122 -46
- package/dist/tools/fs.js.map +1 -1
- package/dist/tools/image.js +1 -1
- package/dist/tools/image.js.map +1 -1
- package/dist/tools/jobs.d.ts +78 -4
- package/dist/tools/jobs.js +542 -115
- package/dist/tools/jobs.js.map +1 -1
- package/dist/tools/net-ping-sweep.d.ts +3 -1
- package/dist/tools/net-ping-sweep.js +64 -26
- package/dist/tools/net-ping-sweep.js.map +1 -1
- package/dist/tools/nmap-runner.js +5 -2
- package/dist/tools/nmap-runner.js.map +1 -1
- package/dist/tools/pdf.js +50 -7
- package/dist/tools/pdf.js.map +1 -1
- package/dist/tools/registry.js +154 -96
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/shell.d.ts +24 -2
- package/dist/tools/shell.js +113 -28
- package/dist/tools/shell.js.map +1 -1
- package/dist/tools/tool-types.d.ts +2 -0
- package/dist/tools/validate.d.ts +8 -5
- package/dist/tools/validate.js +177 -7
- package/dist/tools/validate.js.map +1 -1
- package/dist/tools/wordlists.js +69 -17
- package/dist/tools/wordlists.js.map +1 -1
- package/dist/tui/state.d.ts +4 -0
- package/dist/tui/state.js +88 -2
- package/dist/tui/state.js.map +1 -1
- package/dist/tui-v2/actions/keymap.js +3 -8
- package/dist/tui-v2/actions/keymap.js.map +1 -1
- package/dist/tui-v2/app/App.js +56 -5
- package/dist/tui-v2/app/App.js.map +1 -1
- package/dist/tui-v2/app/commands/config-commands.js +5 -2
- package/dist/tui-v2/app/commands/config-commands.js.map +1 -1
- package/dist/tui-v2/app/commands/picker-commands.js +3 -0
- package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
- package/dist/tui-v2/app/plan-lifecycle.d.ts +1 -1
- package/dist/tui-v2/app/plan-lifecycle.js +2 -1
- package/dist/tui-v2/app/plan-lifecycle.js.map +1 -1
- package/dist/tui-v2/components/composer/composer-input-box.d.ts +1 -1
- package/dist/tui-v2/components/composer/composer-input-box.js +12 -3
- package/dist/tui-v2/components/composer/composer-input-box.js.map +1 -1
- package/dist/tui-v2/components/jobs/jobs-panel.js +19 -6
- package/dist/tui-v2/components/jobs/jobs-panel.js.map +1 -1
- package/dist/tui-v2/components/plan/plan-view.js +9 -6
- package/dist/tui-v2/components/plan/plan-view.js.map +1 -1
- package/dist/tui-v2/components/status/status-line.d.ts +15 -0
- package/dist/tui-v2/components/status/status-line.js +33 -25
- package/dist/tui-v2/components/status/status-line.js.map +1 -1
- package/dist/tui-v2/components/transcript/assistant-message.js +17 -9
- package/dist/tui-v2/components/transcript/assistant-message.js.map +1 -1
- package/dist/tui-v2/components/transcript/compacted-row.js +49 -22
- package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
- package/dist/tui-v2/components/transcript/intro-card.js +3 -0
- package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
- package/dist/tui-v2/components/transcript/thinking-block.js +2 -1
- package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
- package/dist/tui-v2/components/transcript/transcript-view.js +27 -2
- package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
- package/dist/tui-v2/components/transcript/use-transcript-selection.js +57 -6
- package/dist/tui-v2/components/transcript/use-transcript-selection.js.map +1 -1
- package/dist/tui-v2/composer/composer-editor.js +20 -12
- package/dist/tui-v2/composer/composer-editor.js.map +1 -1
- package/dist/tui-v2/rendering/incremental-strip.d.ts +11 -0
- package/dist/tui-v2/rendering/incremental-strip.js +89 -0
- package/dist/tui-v2/rendering/incremental-strip.js.map +1 -0
- package/dist/tui-v2/rendering/plan-view.d.ts +12 -0
- package/dist/tui-v2/rendering/plan-view.js +71 -2
- package/dist/tui-v2/rendering/plan-view.js.map +1 -1
- package/dist/tui-v2/rendering/streaming-markdown.d.ts +25 -0
- package/dist/tui-v2/rendering/streaming-markdown.js +108 -0
- package/dist/tui-v2/rendering/streaming-markdown.js.map +1 -0
- package/dist/tui-v2/rendering/thinking-tail.d.ts +5 -0
- package/dist/tui-v2/rendering/thinking-tail.js +26 -0
- package/dist/tui-v2/rendering/thinking-tail.js.map +1 -0
- package/dist/tui-v2/state/transcript-hydrate.js +6 -2
- package/dist/tui-v2/state/transcript-hydrate.js.map +1 -1
- package/dist/tui-v2/state/transcript-reducer.js +146 -25
- package/dist/tui-v2/state/transcript-reducer.js.map +1 -1
- package/dist/tui-v2/state/transcript-types.d.ts +6 -0
- package/dist/tui-v2/state/transcript-types.js +17 -0
- package/dist/tui-v2/state/transcript-types.js.map +1 -1
- package/dist/types.d.ts +29 -0
- package/dist/types.js.map +1 -1
- package/dist/ui/intro-header.d.ts +1 -0
- package/dist/ui/intro-header.js +10 -13
- package/dist/ui/intro-header.js.map +1 -1
- package/dist/ui/markdown.js +9 -2
- package/dist/ui/markdown.js.map +1 -1
- package/dist/ui/mentions.d.ts +5 -0
- package/dist/ui/mentions.js +66 -7
- package/dist/ui/mentions.js.map +1 -1
- package/dist/ui/thinking.d.ts +5 -1
- package/dist/ui/thinking.js +3 -2
- package/dist/ui/thinking.js.map +1 -1
- package/dist/version.generated.d.ts +2 -2
- package/dist/version.generated.js +2 -2
- package/package.json +2 -1
package/dist/tools/jobs.d.ts
CHANGED
|
@@ -14,6 +14,12 @@ export type JobMonitorMetadata = Record<string, unknown>;
|
|
|
14
14
|
export interface JobLinkMetadata {
|
|
15
15
|
taskId?: string | undefined;
|
|
16
16
|
parentTaskId?: string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Stable delegation identity minted before launch. It is the
|
|
19
|
+
* reconciliation key between a job and its responder child task, so a fast
|
|
20
|
+
* exit or a failed link cannot orphan the child.
|
|
21
|
+
*/
|
|
22
|
+
delegationId?: string | undefined;
|
|
17
23
|
wakeOnCompletion?: boolean | undefined;
|
|
18
24
|
monitor?: JobMonitorMetadata | undefined;
|
|
19
25
|
/** Runtime listening lease that authorized this responder delegation. */
|
|
@@ -65,6 +71,19 @@ export interface BackgroundJob extends JobLinkMetadata {
|
|
|
65
71
|
timeoutAt?: string | undefined;
|
|
66
72
|
}
|
|
67
73
|
export declare function formatJobElapsed(job: Pick<BackgroundJob, "startedAt" | "endedAt">, now?: number): string;
|
|
74
|
+
export interface SupersededResultRevision {
|
|
75
|
+
resultRevision: number;
|
|
76
|
+
resultHash: string;
|
|
77
|
+
status: JobTerminalStatus;
|
|
78
|
+
endedAt: string;
|
|
79
|
+
exitCode?: number | undefined;
|
|
80
|
+
signal?: string | undefined;
|
|
81
|
+
deliveredAt?: string | undefined;
|
|
82
|
+
readAt?: string | undefined;
|
|
83
|
+
analyzedAt?: string | undefined;
|
|
84
|
+
acknowledgedAt?: string | undefined;
|
|
85
|
+
settledAt?: string | undefined;
|
|
86
|
+
}
|
|
68
87
|
export interface ResponderNotification {
|
|
69
88
|
id: string;
|
|
70
89
|
ownerSessionId: string;
|
|
@@ -84,10 +103,21 @@ export interface ResponderNotification {
|
|
|
84
103
|
responder: boolean;
|
|
85
104
|
monitor?: JobMonitorMetadata | undefined;
|
|
86
105
|
responderLeaseId?: string | undefined;
|
|
106
|
+
/** A delivery attempt began; not durable consumption. Cleared claims may retry. */
|
|
107
|
+
deliveryStartedAt?: string | undefined;
|
|
87
108
|
deliveredAt?: string | undefined;
|
|
88
109
|
readAt?: string | undefined;
|
|
89
110
|
analyzedAt?: string | undefined;
|
|
90
111
|
acknowledgedAt?: string | undefined;
|
|
112
|
+
/** User discarded this receipt (cancel/new session); never model analysis. */
|
|
113
|
+
discardedAt?: string | undefined;
|
|
114
|
+
discardReason?: "session-cancelled" | undefined;
|
|
115
|
+
/** Monotonic revision of the authoritative result this receipt carries. */
|
|
116
|
+
resultRevision?: number | undefined;
|
|
117
|
+
/** Content hash of the authoritative result, used to detect a correction. */
|
|
118
|
+
resultHash?: string | undefined;
|
|
119
|
+
/** Bounded audit trail of revisions this receipt superseded. */
|
|
120
|
+
supersededRevisions?: readonly SupersededResultRevision[] | undefined;
|
|
91
121
|
archivedAt?: string | undefined;
|
|
92
122
|
settledAt?: string | undefined;
|
|
93
123
|
}
|
|
@@ -100,6 +130,16 @@ export type JobManagerChange = {
|
|
|
100
130
|
notificationId: string;
|
|
101
131
|
};
|
|
102
132
|
export type JobManagerListener = (change: JobManagerChange) => void;
|
|
133
|
+
/** Durable projection marker for a terminal result whose plan child is unsettled. */
|
|
134
|
+
export interface PendingSettlement {
|
|
135
|
+
jobId: string;
|
|
136
|
+
resultRevision: number;
|
|
137
|
+
attempts: number;
|
|
138
|
+
firstAttemptAt: string;
|
|
139
|
+
lastAttemptAt: string;
|
|
140
|
+
lastReason: string;
|
|
141
|
+
deadLetteredAt?: string | undefined;
|
|
142
|
+
}
|
|
103
143
|
interface TailCursor {
|
|
104
144
|
stream?: "stdout" | "stderr" | "combined";
|
|
105
145
|
offset?: number;
|
|
@@ -137,7 +177,9 @@ export declare class JobManager {
|
|
|
137
177
|
private authorizationTimers;
|
|
138
178
|
private responderLeases;
|
|
139
179
|
private settlementTimers;
|
|
140
|
-
private
|
|
180
|
+
private pendingSettlements;
|
|
181
|
+
private consumedResponderResults;
|
|
182
|
+
private livenessWatchTimer;
|
|
141
183
|
private finalizations;
|
|
142
184
|
private listeners;
|
|
143
185
|
/**
|
|
@@ -147,11 +189,19 @@ export declare class JobManager {
|
|
|
147
189
|
* observed alive again or finalized.
|
|
148
190
|
*/
|
|
149
191
|
private livenessMisses;
|
|
192
|
+
private livenessCheckedAt;
|
|
150
193
|
private registryRetryTimer;
|
|
151
194
|
private readonly registryPath;
|
|
152
195
|
private readonly transientV2RegistryPath;
|
|
153
196
|
constructor(jobsDir?: string);
|
|
154
197
|
private isDurable;
|
|
198
|
+
private artifactPathsOf;
|
|
199
|
+
/** Delete a dropped job's artifact chunks, never one still referenced. */
|
|
200
|
+
private removeJobArtifacts;
|
|
201
|
+
/** Drop a job row plus its per-job caches and artifacts. */
|
|
202
|
+
private forgetJob;
|
|
203
|
+
/** Remove artifact files whose job row no longer exists. */
|
|
204
|
+
private sweepOrphanArtifacts;
|
|
155
205
|
private isLive;
|
|
156
206
|
private isTerminalStatus;
|
|
157
207
|
private emit;
|
|
@@ -170,6 +220,25 @@ export declare class JobManager {
|
|
|
170
220
|
/** Reconcile a restored process that no longer has a ChildProcess close event. */
|
|
171
221
|
private refreshJobLiveness;
|
|
172
222
|
private scheduleTaskSettlement;
|
|
223
|
+
private completeSettlement;
|
|
224
|
+
/**
|
|
225
|
+
* Retry until the projection lands. The marker is durable, so a crash or a
|
|
226
|
+
* long-lived plan-write conflict cannot silently strand a green child, and an
|
|
227
|
+
* unrecoverable case is dead-lettered with a visible reason.
|
|
228
|
+
*/
|
|
229
|
+
private retrySettlement;
|
|
230
|
+
/**
|
|
231
|
+
* One coalesced, unref'd watcher that reconciles restored live jobs without a
|
|
232
|
+
* UI read. Without it a headless session can leave a finished responder job
|
|
233
|
+
* "running" forever, because liveness was only refreshed by list/get calls.
|
|
234
|
+
*/
|
|
235
|
+
private scheduleLivenessWatch;
|
|
236
|
+
/** Ownership guard: a receipt may only be mutated by its owning session. */
|
|
237
|
+
private ownsNotification;
|
|
238
|
+
/** Receipt for a launch that was deduplicated by its delegation key. */
|
|
239
|
+
private startJobReceipt;
|
|
240
|
+
/** Terminal results whose plan child could not be settled yet. */
|
|
241
|
+
getPendingSettlements(): PendingSettlement[];
|
|
173
242
|
/**
|
|
174
243
|
* Register an in-flight tool for stall tracking only.
|
|
175
244
|
* Never appears in shell.jobs and never touches the durable registry.
|
|
@@ -188,10 +257,15 @@ export declare class JobManager {
|
|
|
188
257
|
pendingNotifications(sessionId?: string): ResponderNotification[];
|
|
189
258
|
claimNextResponderNotification(sessionId: string, leaseId: string): ResponderNotification | undefined;
|
|
190
259
|
releaseResponderNotificationClaim(notificationId: string): void;
|
|
191
|
-
|
|
260
|
+
/**
|
|
261
|
+
* Record that a delivery attempt started. This is deliberately weaker than
|
|
262
|
+
* `markDelivered`: an aborted or failed analysis turn must remain deliverable.
|
|
263
|
+
*/
|
|
264
|
+
markDeliveryStarted(notificationId: string, sessionId?: string): boolean;
|
|
265
|
+
markDelivered(notificationId: string, sessionId?: string): boolean;
|
|
192
266
|
markRead(notificationId: string, sessionId: string): boolean;
|
|
193
|
-
markAnalyzed(notificationId: string): boolean;
|
|
194
|
-
acknowledge(notificationId: string): boolean;
|
|
267
|
+
markAnalyzed(notificationId: string, sessionId?: string): boolean;
|
|
268
|
+
acknowledge(notificationId: string, sessionId?: string): boolean;
|
|
195
269
|
linkJob(jobId: string, metadata: JobLinkMetadata): BackgroundJob | undefined;
|
|
196
270
|
tailJob(id: string, bytesOrCursor?: number | TailCursor): Promise<ToolResult>;
|
|
197
271
|
stopJob(id: string, options?: {
|