dominds 1.13.2 → 1.15.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.
- package/dist/bootstrap/global-dialog-event-broadcaster.d.ts +18 -0
- package/dist/bootstrap/global-dialog-event-broadcaster.js +81 -0
- package/dist/dialog-fork.js +13 -12
- package/dist/dialog.d.ts +61 -50
- package/dist/dialog.js +284 -78
- package/dist/docs/dialog-system.md +12 -0
- package/dist/docs/dialog-system.zh.md +12 -0
- package/dist/docs/dominds-terminology.md +17 -0
- package/dist/docs/issues/global-dialog-event-broadcaster-missing.md +128 -0
- package/dist/docs/llm-provider-isolation.md +35 -0
- package/dist/docs/llm-provider-isolation.zh.md +35 -0
- package/dist/llm/client.d.ts +2 -1
- package/dist/llm/defaults.yaml +118 -4
- package/dist/llm/gen/anthropic.js +2 -4
- package/dist/llm/gen/codex.d.ts +11 -0
- package/dist/llm/gen/codex.js +41 -31
- package/dist/llm/gen/failure-classifier.js +17 -0
- package/dist/llm/gen/mock.js +45 -21
- package/dist/llm/gen/openai-compatible.d.ts +2 -0
- package/dist/llm/gen/openai-compatible.js +43 -38
- package/dist/llm/gen/openai.d.ts +3 -1
- package/dist/llm/gen/openai.js +888 -71
- package/dist/llm/gen/tool-call-context.d.ts +7 -2
- package/dist/llm/gen/tool-call-context.js +55 -13
- package/dist/llm/gen.d.ts +60 -3
- package/dist/llm/kernel-driver/context.js +1 -1
- package/dist/llm/kernel-driver/drive.js +374 -348
- package/dist/llm/kernel-driver/flow.js +3 -3
- package/dist/llm/kernel-driver/guardrails.d.ts +1 -1
- package/dist/llm/kernel-driver/guardrails.js +4 -4
- package/dist/llm/kernel-driver/runtime.js +11 -29
- package/dist/llm/kernel-driver/subdialog.js +56 -5
- package/dist/llm/kernel-driver/tellask-special.d.ts +38 -12
- package/dist/llm/kernel-driver/tellask-special.js +489 -180
- package/dist/llm/kernel-driver/types.d.ts +1 -1
- package/dist/persistence.d.ts +30 -62
- package/dist/persistence.js +978 -986
- package/dist/priming.js +398 -365
- package/dist/recovery/reply-special.js +3 -3
- package/dist/runtime/inter-dialog-format.d.ts +1 -1
- package/dist/runtime/inter-dialog-format.js +1 -1
- package/dist/runtime/reply-prompt-copy.js +4 -4
- package/dist/server/setup-routes.js +26 -5
- package/dist/server/snippets-routes.d.ts +1 -0
- package/dist/server/snippets-routes.js +20 -9
- package/dist/server/websocket-handler.js +58 -25
- package/dist/shared/utils/fbr.js +12 -8
- package/dist/shared/utils/inter-dialog-format.js +6 -4
- package/dist/team.d.ts +24 -13
- package/dist/team.js +123 -32
- package/dist/tool.d.ts +26 -0
- package/dist/tool.js +97 -0
- package/dist/tools/team_mgmt.js +18 -0
- package/package.json +2 -2
- package/webapp/dist/assets/{_basePickBy-CBOtd63g.js → _basePickBy-DsirmCgI.js} +3 -3
- package/webapp/dist/assets/_basePickBy-DsirmCgI.js.map +1 -0
- package/webapp/dist/assets/{_baseUniq-mfoKz4Wm.js → _baseUniq-tR6G8loB.js} +2 -2
- package/webapp/dist/assets/_baseUniq-tR6G8loB.js.map +1 -0
- package/webapp/dist/assets/{arc-Dq0WZLyu.js → arc-CzxpASkZ.js} +2 -2
- package/webapp/dist/assets/arc-CzxpASkZ.js.map +1 -0
- package/webapp/dist/assets/{architectureDiagram-VXUJARFQ-CNmygmp3.js → architectureDiagram-2XIMDMQ5-BSH7H5oI.js} +26 -8
- package/webapp/dist/assets/architectureDiagram-2XIMDMQ5-BSH7H5oI.js.map +1 -0
- package/webapp/dist/assets/{blockDiagram-VD42YOAC-DvE0lybt.js → blockDiagram-WCTKOSBZ-DpLIr7yO.js} +187 -170
- package/webapp/dist/assets/blockDiagram-WCTKOSBZ-DpLIr7yO.js.map +1 -0
- package/webapp/dist/assets/{c4Diagram-YG6GDRKO-CR7zJ2_u.js → c4Diagram-IC4MRINW-WuYKgWfY.js} +4 -4
- package/webapp/dist/assets/c4Diagram-IC4MRINW-WuYKgWfY.js.map +1 -0
- package/webapp/dist/assets/{channel-DrTrnYx4.js → channel-B-v9dqLN.js} +2 -2
- package/webapp/dist/assets/channel-B-v9dqLN.js.map +1 -0
- package/webapp/dist/assets/{chunk-4BX2VUAB-CVuJEIeN.js → chunk-4BX2VUAB-MtFUfKZy.js} +2 -2
- package/webapp/dist/assets/chunk-4BX2VUAB-MtFUfKZy.js.map +1 -0
- package/webapp/dist/assets/{chunk-55IACEB6-BxUoXApB.js → chunk-55IACEB6-rY9AJdzj.js} +2 -2
- package/webapp/dist/assets/chunk-55IACEB6-rY9AJdzj.js.map +1 -0
- package/webapp/dist/assets/{chunk-FMBD7UC4-TX-LVAaV.js → chunk-FMBD7UC4-B-RtOs7e.js} +2 -2
- package/webapp/dist/assets/chunk-FMBD7UC4-B-RtOs7e.js.map +1 -0
- package/webapp/dist/assets/{chunk-TZMSLE5B-Cw689yRl.js → chunk-JSJVCQXG-Da1d3uS4.js} +14 -6
- package/webapp/dist/assets/chunk-JSJVCQXG-Da1d3uS4.js.map +1 -0
- package/webapp/dist/assets/{chunk-QN33PNHL-D1uiKlOO.js → chunk-KX2RTZJC-DH9UrpuG.js} +2 -2
- package/webapp/dist/assets/chunk-KX2RTZJC-DH9UrpuG.js.map +1 -0
- package/webapp/dist/assets/{chunk-DI55MBZ5-SAhxUTqQ.js → chunk-NQ4KR5QH-CK365lrr.js} +9 -7
- package/webapp/dist/assets/chunk-NQ4KR5QH-CK365lrr.js.map +1 -0
- package/webapp/dist/assets/{chunk-QZHKN3VN-BxuV0Oba.js → chunk-QZHKN3VN-BCaWPGDm.js} +2 -2
- package/webapp/dist/assets/chunk-QZHKN3VN-BCaWPGDm.js.map +1 -0
- package/webapp/dist/assets/{chunk-B4BG7PRW-DpMa3-9L.js → chunk-WL4C6EOR-DDCnEwft.js} +171 -121
- package/webapp/dist/assets/chunk-WL4C6EOR-DDCnEwft.js.map +1 -0
- package/webapp/dist/assets/{classDiagram-2ON5EDUG-BTTGianr.js → classDiagram-VBA2DB6C-CvMBU4WA.js} +7 -6
- package/webapp/dist/assets/classDiagram-VBA2DB6C-CvMBU4WA.js.map +1 -0
- package/webapp/dist/assets/{classDiagram-v2-WZHVMYZB-BTTGianr.js → classDiagram-v2-RAHNMMFH-CvMBU4WA.js} +7 -6
- package/webapp/dist/assets/classDiagram-v2-RAHNMMFH-CvMBU4WA.js.map +1 -0
- package/webapp/dist/assets/{clone-Dk8cAI3I.js → clone-r98jR0MC.js} +2 -2
- package/webapp/dist/assets/clone-r98jR0MC.js.map +1 -0
- package/webapp/dist/assets/{cose-bilkent-S5V4N54A-BjJnzB2N.js → cose-bilkent-S5V4N54A-t6J60Ogk.js} +2 -2
- package/webapp/dist/assets/cose-bilkent-S5V4N54A-t6J60Ogk.js.map +1 -0
- package/webapp/dist/assets/cytoscape.esm-Bm8DJGmZ.js.map +1 -1
- package/webapp/dist/assets/{dagre-6UL2VRFP-VF-xGhAf.js → dagre-KLK3FWXG-BlqmY2DV.js} +7 -7
- package/webapp/dist/assets/dagre-KLK3FWXG-BlqmY2DV.js.map +1 -0
- package/webapp/dist/assets/defaultLocale-B2RvLBDe.js.map +1 -1
- package/webapp/dist/assets/{diagram-PSM6KHXK-Ba5U0oRY.js → diagram-E7M64L7V-FwCHeIUD.js} +10 -10
- package/webapp/dist/assets/diagram-E7M64L7V-FwCHeIUD.js.map +1 -0
- package/webapp/dist/assets/{diagram-QEK2KX5R-DoYCnEw_.js → diagram-IFDJBPK2-NhtmkuZG.js} +9 -8
- package/webapp/dist/assets/diagram-IFDJBPK2-NhtmkuZG.js.map +1 -0
- package/webapp/dist/assets/{diagram-S2PKOQOG-CkK4SRyE.js → diagram-P4PSJMXO-B9FcmokX.js} +8 -8
- package/webapp/dist/assets/diagram-P4PSJMXO-B9FcmokX.js.map +1 -0
- package/webapp/dist/assets/{erDiagram-Q2GNP2WA-DkI5eYww.js → erDiagram-INFDFZHY-DHKmWvtB.js} +96 -75
- package/webapp/dist/assets/erDiagram-INFDFZHY-DHKmWvtB.js.map +1 -0
- package/webapp/dist/assets/{flowDiagram-NV44I4VS-wOdPUQ7Y.js → flowDiagram-PKNHOUZH-C7Zi8I7T.js} +98 -81
- package/webapp/dist/assets/flowDiagram-PKNHOUZH-C7Zi8I7T.js.map +1 -0
- package/webapp/dist/assets/{ganttDiagram-JELNMOA3-BtRWgkUH.js → ganttDiagram-A5KZAMGK-Cv2T8tz_.js} +28 -3
- package/webapp/dist/assets/ganttDiagram-A5KZAMGK-Cv2T8tz_.js.map +1 -0
- package/webapp/dist/assets/{gitGraphDiagram-V2S2FVAM-Bsz7u1vi.js → gitGraphDiagram-K3NZZRJ6-DztaipJU.js} +38 -46
- package/webapp/dist/assets/gitGraphDiagram-K3NZZRJ6-DztaipJU.js.map +1 -0
- package/webapp/dist/assets/graph-C5yf62Vs.js +782 -0
- package/webapp/dist/assets/graph-C5yf62Vs.js.map +1 -0
- package/webapp/dist/assets/{index-xvYYeHuy.css → index-YaxF76or.css} +1 -1
- package/webapp/dist/assets/{index-rYmIohM_.js → index-hve5MWPs.js} +1603 -1415
- package/webapp/dist/assets/index-hve5MWPs.js.map +1 -0
- package/webapp/dist/assets/{infoDiagram-HS3SLOUP-BMaxCvH5.js → infoDiagram-LFFYTUFH-VgsbBPZP.js} +7 -7
- package/webapp/dist/assets/infoDiagram-LFFYTUFH-VgsbBPZP.js.map +1 -0
- package/webapp/dist/assets/init-ZxktEp_H.js.map +1 -1
- package/webapp/dist/assets/ishikawaDiagram-PHBUUO56-C7j3YWdw.js +966 -0
- package/webapp/dist/assets/ishikawaDiagram-PHBUUO56-C7j3YWdw.js.map +1 -0
- package/webapp/dist/assets/{journeyDiagram-XKPGCS4Q-ejyerzmG.js → journeyDiagram-4ABVD52K-OO8sev-Y.js} +5 -5
- package/webapp/dist/assets/journeyDiagram-4ABVD52K-OO8sev-Y.js.map +1 -0
- package/webapp/dist/assets/{kanban-definition-3W4ZIXB7-CYj35TEs.js → kanban-definition-K7BYSVSG-DiYCC1Ig.js} +5 -3
- package/webapp/dist/assets/kanban-definition-K7BYSVSG-DiYCC1Ig.js.map +1 -0
- package/webapp/dist/assets/{layout-7Ql4zmuL.js → layout-DdZSgGdu.js} +5 -5
- package/webapp/dist/assets/layout-DdZSgGdu.js.map +1 -0
- package/webapp/dist/assets/{linear-CVmgVPuZ.js → linear-7-aHtaFi.js} +2 -2
- package/webapp/dist/assets/linear-7-aHtaFi.js.map +1 -0
- package/webapp/dist/assets/{mindmap-definition-VGOIOE7T-DOpxjGVo.js → mindmap-definition-YRQLILUH-IG3I-RdD.js} +7 -5
- package/webapp/dist/assets/mindmap-definition-YRQLILUH-IG3I-RdD.js.map +1 -0
- package/webapp/dist/assets/ordinal-CxptdPJm.js.map +1 -1
- package/webapp/dist/assets/{pieDiagram-ADFJNKIX-CLQjpmAG.js → pieDiagram-SKSYHLDU-z68KJT5r.js} +8 -8
- package/webapp/dist/assets/pieDiagram-SKSYHLDU-z68KJT5r.js.map +1 -0
- package/webapp/dist/assets/{quadrantDiagram-AYHSOK5B-ClD_bz7z.js → quadrantDiagram-337W2JSQ-DaENWdO6.js} +3 -3
- package/webapp/dist/assets/quadrantDiagram-337W2JSQ-DaENWdO6.js.map +1 -0
- package/webapp/dist/assets/{requirementDiagram-UZGBJVZJ-DOpb-TWH.js → requirementDiagram-Z7DCOOCP-ROTFv4sa.js} +16 -6
- package/webapp/dist/assets/requirementDiagram-Z7DCOOCP-ROTFv4sa.js.map +1 -0
- package/webapp/dist/assets/{sankeyDiagram-TZEHDZUN-D8Hsj3yx.js → sankeyDiagram-WA2Y5GQK-CK7qtpzw.js} +2 -2
- package/webapp/dist/assets/sankeyDiagram-WA2Y5GQK-CK7qtpzw.js.map +1 -0
- package/webapp/dist/assets/{sequenceDiagram-WL72ISMW-CFMNjBER.js → sequenceDiagram-2WXFIKYE-R5lDySeI.js} +601 -201
- package/webapp/dist/assets/sequenceDiagram-2WXFIKYE-R5lDySeI.js.map +1 -0
- package/webapp/dist/assets/{stateDiagram-FKZM4ZOC-BQeDlw0P.js → stateDiagram-RAJIS63D-sr7msF5U.js} +9 -9
- package/webapp/dist/assets/stateDiagram-RAJIS63D-sr7msF5U.js.map +1 -0
- package/webapp/dist/assets/{stateDiagram-v2-4FDKWEC3-DscX61Rs.js → stateDiagram-v2-FVOUBMTO-X663liwS.js} +5 -5
- package/webapp/dist/assets/stateDiagram-v2-FVOUBMTO-X663liwS.js.map +1 -0
- package/webapp/dist/assets/{timeline-definition-IT6M3QCI-BcXPSTiw.js → timeline-definition-YZTLITO2-Bw0TdG26.js} +3 -3
- package/webapp/dist/assets/timeline-definition-YZTLITO2-Bw0TdG26.js.map +1 -0
- package/webapp/dist/assets/{treemap-GDKQZRPO-BBr4UV0Z.js → treemap-KZPCXAKY-D_sjKwI7.js} +37 -24
- package/webapp/dist/assets/treemap-KZPCXAKY-D_sjKwI7.js.map +1 -0
- package/webapp/dist/assets/vennDiagram-LZ73GAT5-DhlHIHid.js +2487 -0
- package/webapp/dist/assets/vennDiagram-LZ73GAT5-DhlHIHid.js.map +1 -0
- package/webapp/dist/assets/{xychartDiagram-PRI3JC2R-CS5RAtQE.js → xychartDiagram-JWTSCODW-C65ESjTc.js} +4 -4
- package/webapp/dist/assets/xychartDiagram-JWTSCODW-C65ESjTc.js.map +1 -0
- package/webapp/dist/index.html +2 -2
- package/webapp/dist/assets/_basePickBy-CBOtd63g.js.map +0 -1
- package/webapp/dist/assets/_baseUniq-mfoKz4Wm.js.map +0 -1
- package/webapp/dist/assets/arc-Dq0WZLyu.js.map +0 -1
- package/webapp/dist/assets/architectureDiagram-VXUJARFQ-CNmygmp3.js.map +0 -1
- package/webapp/dist/assets/blockDiagram-VD42YOAC-DvE0lybt.js.map +0 -1
- package/webapp/dist/assets/c4Diagram-YG6GDRKO-CR7zJ2_u.js.map +0 -1
- package/webapp/dist/assets/channel-DrTrnYx4.js.map +0 -1
- package/webapp/dist/assets/chunk-4BX2VUAB-CVuJEIeN.js.map +0 -1
- package/webapp/dist/assets/chunk-55IACEB6-BxUoXApB.js.map +0 -1
- package/webapp/dist/assets/chunk-B4BG7PRW-DpMa3-9L.js.map +0 -1
- package/webapp/dist/assets/chunk-DI55MBZ5-SAhxUTqQ.js.map +0 -1
- package/webapp/dist/assets/chunk-FMBD7UC4-TX-LVAaV.js.map +0 -1
- package/webapp/dist/assets/chunk-QN33PNHL-D1uiKlOO.js.map +0 -1
- package/webapp/dist/assets/chunk-QZHKN3VN-BxuV0Oba.js.map +0 -1
- package/webapp/dist/assets/chunk-TZMSLE5B-Cw689yRl.js.map +0 -1
- package/webapp/dist/assets/classDiagram-2ON5EDUG-BTTGianr.js.map +0 -1
- package/webapp/dist/assets/classDiagram-v2-WZHVMYZB-BTTGianr.js.map +0 -1
- package/webapp/dist/assets/clone-Dk8cAI3I.js.map +0 -1
- package/webapp/dist/assets/cose-bilkent-S5V4N54A-BjJnzB2N.js.map +0 -1
- package/webapp/dist/assets/dagre-6UL2VRFP-VF-xGhAf.js.map +0 -1
- package/webapp/dist/assets/diagram-PSM6KHXK-Ba5U0oRY.js.map +0 -1
- package/webapp/dist/assets/diagram-QEK2KX5R-DoYCnEw_.js.map +0 -1
- package/webapp/dist/assets/diagram-S2PKOQOG-CkK4SRyE.js.map +0 -1
- package/webapp/dist/assets/erDiagram-Q2GNP2WA-DkI5eYww.js.map +0 -1
- package/webapp/dist/assets/flowDiagram-NV44I4VS-wOdPUQ7Y.js.map +0 -1
- package/webapp/dist/assets/ganttDiagram-JELNMOA3-BtRWgkUH.js.map +0 -1
- package/webapp/dist/assets/gitGraphDiagram-V2S2FVAM-Bsz7u1vi.js.map +0 -1
- package/webapp/dist/assets/graph-DAMkuTbn.js +0 -425
- package/webapp/dist/assets/graph-DAMkuTbn.js.map +0 -1
- package/webapp/dist/assets/index-rYmIohM_.js.map +0 -1
- package/webapp/dist/assets/infoDiagram-HS3SLOUP-BMaxCvH5.js.map +0 -1
- package/webapp/dist/assets/journeyDiagram-XKPGCS4Q-ejyerzmG.js.map +0 -1
- package/webapp/dist/assets/kanban-definition-3W4ZIXB7-CYj35TEs.js.map +0 -1
- package/webapp/dist/assets/layout-7Ql4zmuL.js.map +0 -1
- package/webapp/dist/assets/linear-CVmgVPuZ.js.map +0 -1
- package/webapp/dist/assets/mindmap-definition-VGOIOE7T-DOpxjGVo.js.map +0 -1
- package/webapp/dist/assets/pieDiagram-ADFJNKIX-CLQjpmAG.js.map +0 -1
- package/webapp/dist/assets/quadrantDiagram-AYHSOK5B-ClD_bz7z.js.map +0 -1
- package/webapp/dist/assets/requirementDiagram-UZGBJVZJ-DOpb-TWH.js.map +0 -1
- package/webapp/dist/assets/sankeyDiagram-TZEHDZUN-D8Hsj3yx.js.map +0 -1
- package/webapp/dist/assets/sequenceDiagram-WL72ISMW-CFMNjBER.js.map +0 -1
- package/webapp/dist/assets/stateDiagram-FKZM4ZOC-BQeDlw0P.js.map +0 -1
- package/webapp/dist/assets/stateDiagram-v2-4FDKWEC3-DscX61Rs.js.map +0 -1
- package/webapp/dist/assets/timeline-definition-IT6M3QCI-BcXPSTiw.js.map +0 -1
- package/webapp/dist/assets/treemap-GDKQZRPO-BBr4UV0Z.js.map +0 -1
- package/webapp/dist/assets/xychartDiagram-PRI3JC2R-CS5RAtQE.js.map +0 -1
|
@@ -36,7 +36,7 @@ export interface KernelDriverHumanPrompt {
|
|
|
36
36
|
msgId: string;
|
|
37
37
|
grammar: 'markdown';
|
|
38
38
|
userLanguageCode?: LanguageCode;
|
|
39
|
-
|
|
39
|
+
q4hAnswerCallId?: string;
|
|
40
40
|
tellaskReplyDirective?: TellaskReplyDirective;
|
|
41
41
|
origin: 'user' | 'diligence_push' | 'runtime';
|
|
42
42
|
skipTaskdoc?: boolean;
|
package/dist/persistence.d.ts
CHANGED
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
* Provides file-based storage with append-only events and atomic operations.
|
|
6
6
|
*/
|
|
7
7
|
import type { ContextHealthSnapshot } from '@longrun-ai/kernel/types/context-health';
|
|
8
|
-
import type { WebSearchCallAction } from '@longrun-ai/kernel/types/dialog';
|
|
8
|
+
import type { NativeToolCallPayload, WebSearchCallAction, WebSearchCallSource } from '@longrun-ai/kernel/types/dialog';
|
|
9
9
|
import type { LanguageCode } from '@longrun-ai/kernel/types/language';
|
|
10
|
-
import type {
|
|
10
|
+
import type { DialogLatestFile, DialogMetadataFile, HumanQuestion, PendingSubdialogStateRecord, PersistedDialogRecord, ProviderData, ReasoningPayload, ReconciledRecordWriteTarget, RootDialogMetadataFile, RootGenerationAnchor, SubdialogMetadataFile, SubdialogRegistryStateRecord, SubdialogResponseStateRecord, TellaskCallRecordName, TellaskReplyDirective } from '@longrun-ai/kernel/types/storage';
|
|
11
11
|
import { WebSocket } from 'ws';
|
|
12
12
|
import type { PendingSubdialog } from './dialog';
|
|
13
13
|
import { Dialog, DialogID, DialogStore, RootDialog, SubDialog } from './dialog';
|
|
14
|
-
import { ChatMessage, FuncResultMsg } from './llm/client';
|
|
14
|
+
import { ChatMessage, FuncResultMsg, TellaskCarryoverMsg, TellaskResultMsg } from './llm/client';
|
|
15
15
|
import { Reminder } from './tool';
|
|
16
16
|
export interface DialogPersistenceState {
|
|
17
17
|
metadata: DialogMetadataFile;
|
|
@@ -48,56 +48,8 @@ export declare class DiskFileDialogStore extends DialogStore {
|
|
|
48
48
|
* Receive and handle function call results (includes logging)
|
|
49
49
|
*/
|
|
50
50
|
receiveFuncResult(dialog: Dialog, funcResult: FuncResultMsg): Promise<void>;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
*
|
|
54
|
-
* Call Types:
|
|
55
|
-
* - tellask-special function call (inline bubble)
|
|
56
|
-
* - Result displays INLINE in the same bubble
|
|
57
|
-
* - Uses callId for correlation between call_start and response
|
|
58
|
-
* - Uses receiveTellaskCallResult() + callId parameter
|
|
59
|
-
*
|
|
60
|
-
* - Tellask sideline response (subdialog response bubble)
|
|
61
|
-
* - Result displays in SEPARATE bubble (subdialog response)
|
|
62
|
-
* - Uses calleeDialogId for correlation
|
|
63
|
-
* - Uses receiveTellaskResponse() instead
|
|
64
|
-
*
|
|
65
|
-
* @param dialog - The dialog receiving the response
|
|
66
|
-
* @param responderId - ID of the tool/agent that responded (e.g., "add_reminder")
|
|
67
|
-
* @param mentionList - Mention list of the original call
|
|
68
|
-
* @param tellaskContent - Tellask content of the original call
|
|
69
|
-
* @param result - The result content to display
|
|
70
|
-
* @param status - Response status ('completed' | 'failed')
|
|
71
|
-
* @param callId - Correlation ID from call_start_evt (REQUIRED for inline display)
|
|
72
|
-
*/
|
|
73
|
-
receiveTellaskCallResult(dialog: Dialog, responderId: string, callName: 'tellaskBack' | 'tellask' | 'tellaskSessionless' | 'askHuman' | 'freshBootsReasoning', mentionList: string[] | undefined, tellaskContent: string, result: string, status: 'completed' | 'failed', callId: string): Promise<void>;
|
|
74
|
-
/**
|
|
75
|
-
* Receive and handle tellask responses (separate bubble for subdialog/supdialog replies)
|
|
76
|
-
*
|
|
77
|
-
* Call Types:
|
|
78
|
-
* - Tellask sideline response
|
|
79
|
-
* - Result displays in SEPARATE bubble (subdialog or supdialog response)
|
|
80
|
-
* - Uses calleeDialogId for correlation (not callId)
|
|
81
|
-
* - Uses this method (receiveTellaskResponse)
|
|
82
|
-
*
|
|
83
|
-
* @param dialog - The dialog receiving the response
|
|
84
|
-
* @param responderId - ID of the responder agent (e.g., "coder")
|
|
85
|
-
* @param mentionList - Mention list of the original tellask
|
|
86
|
-
* @param tellaskContent - Tellask content of the original tellask
|
|
87
|
-
* @param status - Response status ('completed' | 'failed')
|
|
88
|
-
* @param calleeDialogId - ID of the callee dialog (subdialog OR supdialog) for navigation links
|
|
89
|
-
*/
|
|
90
|
-
receiveTellaskResponse(dialog: Dialog, responderId: string, callName: 'tellaskBack' | 'tellask' | 'tellaskSessionless' | 'freshBootsReasoning', mentionList: string[] | undefined, tellaskContent: string, status: 'completed' | 'failed', calleeDialogId: DialogID | undefined, options: {
|
|
91
|
-
response: string;
|
|
92
|
-
agentId: string;
|
|
93
|
-
callId: string;
|
|
94
|
-
originMemberId: string;
|
|
95
|
-
originCourse?: CallingCourseNumber;
|
|
96
|
-
carryoverContent?: string;
|
|
97
|
-
sessionSlug?: string;
|
|
98
|
-
calleeCourse?: CalleeCourseNumber;
|
|
99
|
-
calleeGenseq?: CalleeGenerationSeqNumber;
|
|
100
|
-
}): Promise<void>;
|
|
51
|
+
receiveTellaskResult(dialog: Dialog, result: TellaskResultMsg): Promise<void>;
|
|
52
|
+
receiveTellaskCarryover(dialog: Dialog, result: TellaskCarryoverMsg): Promise<void>;
|
|
101
53
|
/**
|
|
102
54
|
* Ensure subdialog directory exists (delegate to DialogPersistence)
|
|
103
55
|
*/
|
|
@@ -106,6 +58,7 @@ export declare class DiskFileDialogStore extends DialogStore {
|
|
|
106
58
|
* Append event to course JSONL file (delegate to DialogPersistence)
|
|
107
59
|
*/
|
|
108
60
|
private appendEvent;
|
|
61
|
+
private appendEvents;
|
|
109
62
|
/**
|
|
110
63
|
* Notify start of LLM generation for frontend bubble management
|
|
111
64
|
* CRITICAL: This must be called BEFORE any substream events (thinking_start, markdown_start, etc.)
|
|
@@ -137,11 +90,13 @@ export declare class DiskFileDialogStore extends DialogStore {
|
|
|
137
90
|
}): Promise<void>;
|
|
138
91
|
funcCallRequested(dialog: Dialog, funcId: string, funcName: string, argumentsStr: string): Promise<void>;
|
|
139
92
|
webSearchCall(dialog: Dialog, payload: {
|
|
93
|
+
source?: WebSearchCallSource;
|
|
140
94
|
phase: 'added' | 'done';
|
|
141
95
|
itemId: string;
|
|
142
96
|
status?: string;
|
|
143
97
|
action?: WebSearchCallAction;
|
|
144
98
|
}): Promise<void>;
|
|
99
|
+
nativeToolCall(dialog: Dialog, payload: NativeToolCallPayload): Promise<void>;
|
|
145
100
|
/**
|
|
146
101
|
* Emit stream error for current generation lifecycle (uses active genseq when present)
|
|
147
102
|
*/
|
|
@@ -160,7 +115,7 @@ export declare class DiskFileDialogStore extends DialogStore {
|
|
|
160
115
|
* Note: The end_of_user_saying_evt is emitted by the driver after user content
|
|
161
116
|
* is rendered and any tellask calls are parsed/executed.
|
|
162
117
|
*/
|
|
163
|
-
persistUserMessage(dialog: Dialog, content: string, msgId: string, grammar: 'markdown', origin: 'user' | 'diligence_push' | 'runtime' | undefined, userLanguageCode?: LanguageCode,
|
|
118
|
+
persistUserMessage(dialog: Dialog, content: string, msgId: string, grammar: 'markdown', origin: 'user' | 'diligence_push' | 'runtime' | undefined, userLanguageCode?: LanguageCode, q4hAnswerCallId?: string, tellaskReplyDirective?: TellaskReplyDirective): Promise<void>;
|
|
164
119
|
appendTellaskReplyResolution(dialog: Dialog, payload: {
|
|
165
120
|
callId: string;
|
|
166
121
|
replyCallName: 'replyTellask' | 'replyTellaskSessionless' | 'replyTellaskBack';
|
|
@@ -175,8 +130,19 @@ export declare class DiskFileDialogStore extends DialogStore {
|
|
|
175
130
|
/**
|
|
176
131
|
* Persist a function call to storage
|
|
177
132
|
*/
|
|
178
|
-
persistFunctionCall(dialog: Dialog, id: string, name: string,
|
|
179
|
-
|
|
133
|
+
persistFunctionCall(dialog: Dialog, id: string, name: string, rawArgumentsText: string, genseq: number): Promise<void>;
|
|
134
|
+
persistTellaskCall(dialog: Dialog, id: string, name: 'tellaskBack' | 'tellask' | 'tellaskSessionless' | 'replyTellask' | 'replyTellaskSessionless' | 'replyTellaskBack' | 'askHuman' | 'freshBootsReasoning', rawArgumentsText: string, genseq: number, options?: {
|
|
135
|
+
deliveryMode?: 'tellask_call_start' | 'func_call_requested';
|
|
136
|
+
}): Promise<void>;
|
|
137
|
+
persistFunctionCallResultPair(dialog: Dialog, id: string, name: string, rawArgumentsText: string, genseq: number, result: FuncResultMsg): Promise<void>;
|
|
138
|
+
persistTellaskCallResultPair(dialog: Dialog, args: {
|
|
139
|
+
id: string;
|
|
140
|
+
name: TellaskCallRecordName;
|
|
141
|
+
rawArgumentsText: string;
|
|
142
|
+
genseq: number;
|
|
143
|
+
result: TellaskResultMsg | FuncResultMsg;
|
|
144
|
+
deliveryMode: 'tellask_call_start' | 'func_call_requested';
|
|
145
|
+
}): Promise<void>;
|
|
180
146
|
/**
|
|
181
147
|
* Update questions for human state (exceptional overwrite pattern)
|
|
182
148
|
*/
|
|
@@ -291,7 +257,6 @@ type DialogLatestMutation = {
|
|
|
291
257
|
* Utility class for managing dialog persistence
|
|
292
258
|
*/
|
|
293
259
|
export declare class DialogPersistence {
|
|
294
|
-
private static repairInterruptedFunctionCallsOnRestore;
|
|
295
260
|
private static readonly DIALOGS_DIR;
|
|
296
261
|
private static readonly RUN_DIR;
|
|
297
262
|
private static readonly DONE_DIR;
|
|
@@ -373,6 +338,7 @@ export declare class DialogPersistence {
|
|
|
373
338
|
/**
|
|
374
339
|
* Append event to course JSONL file (append-only pattern)
|
|
375
340
|
*/
|
|
341
|
+
static appendEvents(dialogId: DialogID, course: number, events: readonly PersistedDialogRecord[], status?: 'running' | 'completed' | 'archived'): Promise<void>;
|
|
376
342
|
static appendEvent(dialogId: DialogID, course: number, event: PersistedDialogRecord, status?: 'running' | 'completed' | 'archived'): Promise<void>;
|
|
377
343
|
static persistRuntimeGuide(dialog: Dialog, content: string, genseq: number): Promise<void>;
|
|
378
344
|
/**
|
|
@@ -436,8 +402,7 @@ export declare class DialogPersistence {
|
|
|
436
402
|
taskDocPath: string;
|
|
437
403
|
tellaskContent: string;
|
|
438
404
|
askedAt: string;
|
|
439
|
-
callId
|
|
440
|
-
remainingCallIds?: string[];
|
|
405
|
+
callId: string;
|
|
441
406
|
callSiteRef: {
|
|
442
407
|
course: number;
|
|
443
408
|
messageIndex: number;
|
|
@@ -571,8 +536,11 @@ export declare class DialogPersistence {
|
|
|
571
536
|
*/
|
|
572
537
|
static restoreDialogTree(rootDialogId: DialogID, status?: 'running' | 'completed' | 'archived'): Promise<DialogPersistenceState | null>;
|
|
573
538
|
/**
|
|
574
|
-
* Restore dialog from disk using JSONL events (optimized: only latest course loaded)
|
|
575
|
-
*
|
|
539
|
+
* Restore dialog from disk using JSONL events (optimized: only latest course loaded).
|
|
540
|
+
* Historical-course ask/tellask context that still matters to the current round must already be
|
|
541
|
+
* represented via latest-course carryover records; older courses themselves are not reloaded into
|
|
542
|
+
* LLM context during restore. For historical courses, use loadCourseEvents() on-demand for UI
|
|
543
|
+
* navigation.
|
|
576
544
|
*/
|
|
577
545
|
static restoreDialog(dialogId: DialogID, status?: 'running' | 'completed' | 'archived'): Promise<DialogPersistenceState | null>;
|
|
578
546
|
/**
|
|
@@ -580,7 +548,7 @@ export declare class DialogPersistence {
|
|
|
580
548
|
*/
|
|
581
549
|
static loadCourseEvents(dialogId: DialogID, course: number, status?: 'running' | 'completed' | 'archived'): Promise<PersistedDialogRecord[]>;
|
|
582
550
|
/**
|
|
583
|
-
* Reconstruct dialog state from JSONL events (optimized: only latest course needed)
|
|
551
|
+
* Reconstruct dialog state from JSONL events (optimized: only latest course needed).
|
|
584
552
|
*/
|
|
585
553
|
static rebuildFromEvents(events: PersistedDialogRecord[], metadata: DialogMetadataFile, reminders: Reminder[], currentCourse: number): Promise<DialogPersistenceState>;
|
|
586
554
|
/**
|