@superblocksteam/vite-plugin-file-sync 2.0.89-next.1 → 2.0.89-next.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/ai-service/agent/prompts/api-prompts.js +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts +2 -2
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js +28 -132
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.js +1 -1
- package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.d.ts +0 -44
- package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +92 -226
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +11 -13
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.js +3 -33
- package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
- package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-debug.js +3 -8
- package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.js +2 -12
- package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-list-files.js +1 -1
- package/dist/ai-service/agent/tools/build-list-files.js.map +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.js +1 -6
- package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/get-logs.d.ts +1 -1
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +1 -5
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/access-control.js +0 -3
- package/dist/ai-service/agent/tools2/access-control.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +2 -2
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +3 -3
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.d.ts +1 -1
- package/dist/ai-service/agent/tools2/tools/index.d.ts +0 -1
- package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/index.js +0 -1
- package/dist/ai-service/agent/tools2/tools/index.js.map +1 -1
- package/dist/ai-service/agent/tools2/types.d.ts +0 -1
- package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/types.js +0 -1
- package/dist/ai-service/agent/tools2/types.js.map +1 -1
- package/dist/ai-service/agent/utils.d.ts.map +1 -1
- package/dist/ai-service/agent/utils.js +0 -77
- package/dist/ai-service/agent/utils.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts +1 -22
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js +11 -121
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/sdk-path-validator.d.ts +1 -1
- package/dist/ai-service/app-interface/filesystem/sdk-path-validator.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/sdk-path-validator.js +2 -4
- package/dist/ai-service/app-interface/filesystem/sdk-path-validator.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.d.ts +0 -2
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.js +3 -28
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.js.map +1 -1
- package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
- package/dist/ai-service/app-interface/shell.js +1 -8
- package/dist/ai-service/app-interface/shell.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +0 -82
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/facts/helpers.d.ts +1 -8
- package/dist/ai-service/facts/helpers.d.ts.map +1 -1
- package/dist/ai-service/facts/helpers.js +7 -89
- package/dist/ai-service/facts/helpers.js.map +1 -1
- package/dist/ai-service/facts/knowledge-manager.d.ts +3 -39
- package/dist/ai-service/facts/knowledge-manager.d.ts.map +1 -1
- package/dist/ai-service/facts/knowledge-manager.js +27 -108
- package/dist/ai-service/facts/knowledge-manager.js.map +1 -1
- package/dist/ai-service/features.d.ts +0 -5
- package/dist/ai-service/features.d.ts.map +1 -1
- package/dist/ai-service/features.js +0 -5
- package/dist/ai-service/features.js.map +1 -1
- package/dist/ai-service/index.d.ts +0 -20
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +1 -38
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/integrations/store.d.ts.map +1 -1
- package/dist/ai-service/integrations/store.js +1 -3
- package/dist/ai-service/integrations/store.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context.d.ts +0 -2
- package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context.js +0 -65
- package/dist/ai-service/llm/context-v2/context.js.map +1 -1
- package/dist/ai-service/recording/index.d.ts +0 -1
- package/dist/ai-service/recording/index.d.ts.map +1 -1
- package/dist/ai-service/recording/index.js +0 -2
- package/dist/ai-service/recording/index.js.map +1 -1
- package/dist/ai-service/recording/storage/session-recording-storage.d.ts +1 -5
- package/dist/ai-service/recording/storage/session-recording-storage.d.ts.map +1 -1
- package/dist/ai-service/recording/storage/session-recording-storage.js +21 -46
- package/dist/ai-service/recording/storage/session-recording-storage.js.map +1 -1
- package/dist/ai-service/skills/index.d.ts +1 -3
- package/dist/ai-service/skills/index.d.ts.map +1 -1
- package/dist/ai-service/skills/index.js +2 -5
- package/dist/ai-service/skills/index.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +4 -4
- package/dist/ai-service/state-machine/clark-fsm.d.ts +1 -18
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +0 -1
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.js +11 -82
- package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js +7 -67
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
- package/dist/ai-service/state-machine/mocks.js +0 -2
- package/dist/ai-service/state-machine/mocks.js.map +1 -1
- package/dist/ai-service/types.d.ts +0 -3
- package/dist/ai-service/types.d.ts.map +1 -1
- package/dist/ai-service/types.js.map +1 -1
- package/dist/ai-service/util/mode-message.d.ts.map +1 -1
- package/dist/ai-service/util/mode-message.js +0 -3
- package/dist/ai-service/util/mode-message.js.map +1 -1
- package/dist/file-sync-vite-plugin.d.ts.map +1 -1
- package/dist/file-sync-vite-plugin.js +21 -68
- package/dist/file-sync-vite-plugin.js.map +1 -1
- package/dist/file-system-helpers.d.ts +0 -4
- package/dist/file-system-helpers.d.ts.map +1 -1
- package/dist/file-system-helpers.js +0 -13
- package/dist/file-system-helpers.js.map +1 -1
- package/dist/injected-index.d.ts.map +1 -1
- package/dist/injected-index.js +3 -4
- package/dist/injected-index.js.map +1 -1
- package/dist/plugin-options.d.ts +0 -2
- package/dist/plugin-options.d.ts.map +1 -1
- package/dist/plugin-options.js.map +1 -1
- package/dist/socket-manager.d.ts +0 -1
- package/dist/socket-manager.d.ts.map +1 -1
- package/dist/socket-manager.js +0 -34
- package/dist/socket-manager.js.map +1 -1
- package/package.json +5 -9
- package/dist/ai-service/agent/tools2/tools/remember-facts.d.ts +0 -29
- package/dist/ai-service/agent/tools2/tools/remember-facts.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/remember-facts.js +0 -104
- package/dist/ai-service/agent/tools2/tools/remember-facts.js.map +0 -1
- package/dist/ai-service/app-skills/helpers.d.ts +0 -32
- package/dist/ai-service/app-skills/helpers.d.ts.map +0 -1
- package/dist/ai-service/app-skills/helpers.js +0 -259
- package/dist/ai-service/app-skills/helpers.js.map +0 -1
- package/dist/ai-service/app-skills/manager.d.ts +0 -60
- package/dist/ai-service/app-skills/manager.d.ts.map +0 -1
- package/dist/ai-service/app-skills/manager.js +0 -203
- package/dist/ai-service/app-skills/manager.js.map +0 -1
- package/dist/ai-service/app-skills/parser.d.ts +0 -53
- package/dist/ai-service/app-skills/parser.d.ts.map +0 -1
- package/dist/ai-service/app-skills/parser.js +0 -82
- package/dist/ai-service/app-skills/parser.js.map +0 -1
- package/dist/ai-service/attachment-upload.d.ts +0 -24
- package/dist/ai-service/attachment-upload.d.ts.map +0 -1
- package/dist/ai-service/attachment-upload.js +0 -75
- package/dist/ai-service/attachment-upload.js.map +0 -1
- package/dist/ai-service/recording/block-traversal.d.ts +0 -30
- package/dist/ai-service/recording/block-traversal.d.ts.map +0 -1
- package/dist/ai-service/recording/block-traversal.js +0 -118
- package/dist/ai-service/recording/block-traversal.js.map +0 -1
- package/dist/ai-service/recording/snapshot-manager.d.ts +0 -200
- package/dist/ai-service/recording/snapshot-manager.d.ts.map +0 -1
- package/dist/ai-service/recording/snapshot-manager.js +0 -708
- package/dist/ai-service/recording/snapshot-manager.js.map +0 -1
- package/dist/ai-service/sdk-api-templates.d.ts +0 -2
- package/dist/ai-service/sdk-api-templates.d.ts.map +0 -1
- package/dist/ai-service/sdk-api-templates.js +0 -2
- package/dist/ai-service/sdk-api-templates.js.map +0 -1
- package/dist/ai-service/util/rpc-timeout.d.ts +0 -37
- package/dist/ai-service/util/rpc-timeout.d.ts.map +0 -1
- package/dist/ai-service/util/rpc-timeout.js +0 -58
- package/dist/ai-service/util/rpc-timeout.js.map +0 -1
- package/dist/snapshot-routes.d.ts +0 -17
- package/dist/snapshot-routes.d.ts.map +0 -1
- package/dist/snapshot-routes.js +0 -247
- package/dist/snapshot-routes.js.map +0 -1
|
@@ -2,10 +2,6 @@ import { type FactDto } from "@superblocksteam/shared";
|
|
|
2
2
|
import { type Logger } from "../../util/logger.js";
|
|
3
3
|
import type { AutoConnectingRpcClient } from "../../server-rpc/index.js";
|
|
4
4
|
import type { PromptContextIntegration } from "@superblocksteam/library-shared/types";
|
|
5
|
-
type PartitionedFacts = {
|
|
6
|
-
alwaysInject: FactDto[];
|
|
7
|
-
onDemand: FactDto[];
|
|
8
|
-
};
|
|
9
5
|
export type LoadedFacts = {
|
|
10
6
|
org: FactDto[];
|
|
11
7
|
user: FactDto[];
|
|
@@ -14,48 +10,22 @@ export type LoadedFacts = {
|
|
|
14
10
|
export type FactsPromptSections = {
|
|
15
11
|
systemPromptSection: string;
|
|
16
12
|
userMessageSection: string;
|
|
17
|
-
onDemandSkillIndex: string;
|
|
18
13
|
facts: LoadedFacts;
|
|
19
14
|
};
|
|
20
15
|
/**
|
|
21
16
|
* Manages knowledge/facts loading, caching, and tracking for a chat session.
|
|
22
17
|
* - Caches facts with TTL to reduce RPC calls
|
|
23
18
|
* - Tracks which facts have been sent to UI to only push net-new knowledge
|
|
24
|
-
* - Provides on-demand fact retrieval for skill-based loading
|
|
25
19
|
*/
|
|
26
20
|
export declare class KnowledgeManager {
|
|
27
21
|
private cache;
|
|
28
22
|
private sentFactIds;
|
|
29
|
-
/** Cache of individual facts by ID for on-demand retrieval */
|
|
30
|
-
private factById;
|
|
31
23
|
private isCacheValid;
|
|
32
24
|
private getCached;
|
|
33
25
|
private setCache;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
* Used by SkillFileHandler to serve on-demand fact content.
|
|
38
|
-
*/
|
|
39
|
-
getFactById(factId: string): FactDto | undefined;
|
|
40
|
-
/**
|
|
41
|
-
* Partition facts by access type for separate handling.
|
|
42
|
-
*/
|
|
43
|
-
private partitionByAccessType;
|
|
44
|
-
/**
|
|
45
|
-
* Load all facts for an organization (both ALWAYS_INJECT and ON_DEMAND).
|
|
46
|
-
* Facts are fetched in a single RPC call and partitioned client-side.
|
|
47
|
-
*/
|
|
48
|
-
loadOrgFacts(rpcClient: AutoConnectingRpcClient, organizationId: string, logger: Logger): Promise<PartitionedFacts>;
|
|
49
|
-
/**
|
|
50
|
-
* Load all facts for an integration (both ALWAYS_INJECT and ON_DEMAND).
|
|
51
|
-
* Facts are fetched in a single RPC call and partitioned client-side.
|
|
52
|
-
*/
|
|
53
|
-
loadIntegrationFacts(rpcClient: AutoConnectingRpcClient, integrationId: string, logger: Logger): Promise<PartitionedFacts>;
|
|
54
|
-
/**
|
|
55
|
-
* Load all facts for a user (both ALWAYS_INJECT and ON_DEMAND).
|
|
56
|
-
* Facts are fetched in a single RPC call and partitioned client-side.
|
|
57
|
-
*/
|
|
58
|
-
loadUserFacts(rpcClient: AutoConnectingRpcClient, userId: string, logger: Logger): Promise<PartitionedFacts>;
|
|
26
|
+
loadOrgFacts(rpcClient: AutoConnectingRpcClient, organizationId: string, logger: Logger): Promise<FactDto[]>;
|
|
27
|
+
loadIntegrationFacts(rpcClient: AutoConnectingRpcClient, integrationId: string, logger: Logger): Promise<FactDto[]>;
|
|
28
|
+
loadUserFacts(rpcClient: AutoConnectingRpcClient, userId: string, logger: Logger): Promise<FactDto[]>;
|
|
59
29
|
/**
|
|
60
30
|
* Merge and de-duplicate integrations by id.
|
|
61
31
|
* This is so we can load all facts when a user might have not tagged something
|
|
@@ -77,11 +47,5 @@ export declare class KnowledgeManager {
|
|
|
77
47
|
*/
|
|
78
48
|
getNetNewFacts(facts: LoadedFacts): LoadedFacts;
|
|
79
49
|
hasAnyFacts(facts: LoadedFacts): boolean;
|
|
80
|
-
/**
|
|
81
|
-
* Filter LoadedFacts to only include ALWAYS_INJECT facts.
|
|
82
|
-
* Used to show only always-inject facts in the initial knowledge UI message.
|
|
83
|
-
*/
|
|
84
|
-
filterAlwaysInjectFacts(facts: LoadedFacts): LoadedFacts;
|
|
85
50
|
}
|
|
86
|
-
export {};
|
|
87
51
|
//# sourceMappingURL=knowledge-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-manager.d.ts","sourceRoot":"","sources":["../../../src/ai-service/facts/knowledge-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"knowledge-manager.d.ts","sourceRoot":"","sources":["../../../src/ai-service/facts/knowledge-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAyBtF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,OAAO,EAAE,CAAC;IACf,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,WAAW,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,WAAW,CAA0B;IAE7C,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,QAAQ;IAOV,YAAY,CAChB,SAAS,EAAE,uBAAuB,EAClC,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC;IAyBf,oBAAoB,CACxB,SAAS,EAAE,uBAAuB,EAClC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC;IAwBf,aAAa,CACjB,SAAS,EAAE,uBAAuB,EAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC;IAwBrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,2BAA2B;IAiB7B,uBAAuB,CAAC,EAC5B,SAAS,EACT,cAAc,EACd,MAAM,EACN,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,GACP,EAAE;QACD,SAAS,EAAE,uBAAuB,CAAC;QACnC,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,kBAAkB,EAAE,wBAAwB,EAAE,CAAC;QAC/C,gBAAgB,CAAC,EAAE,wBAAwB,EAAE,CAAC;KAC/C,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwEhC;;;OAGG;IACH,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IA4B/C,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;CAOzC"}
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
import { FactAccessType, FactEntityScope, } from "@superblocksteam/shared";
|
|
2
2
|
import { getErrorMeta } from "../../util/logger.js";
|
|
3
|
-
import { formatSystemPromptFacts, formatUserMessageFacts
|
|
3
|
+
import { formatSystemPromptFacts, formatUserMessageFacts } from "./helpers.js";
|
|
4
4
|
const CACHE_TTL_MS = 1 * 60 * 1000; // 1 minute
|
|
5
5
|
/**
|
|
6
6
|
* Manages knowledge/facts loading, caching, and tracking for a chat session.
|
|
7
7
|
* - Caches facts with TTL to reduce RPC calls
|
|
8
8
|
* - Tracks which facts have been sent to UI to only push net-new knowledge
|
|
9
|
-
* - Provides on-demand fact retrieval for skill-based loading
|
|
10
9
|
*/
|
|
11
10
|
export class KnowledgeManager {
|
|
12
11
|
cache = {};
|
|
13
12
|
sentFactIds = new Set();
|
|
14
|
-
/** Cache of individual facts by ID for on-demand retrieval */
|
|
15
|
-
factById = new Map();
|
|
16
13
|
isCacheValid(entry) {
|
|
17
14
|
return Date.now() - entry.timestamp < CACHE_TTL_MS;
|
|
18
15
|
}
|
|
@@ -28,44 +25,12 @@ export class KnowledgeManager {
|
|
|
28
25
|
facts,
|
|
29
26
|
timestamp: Date.now(),
|
|
30
27
|
};
|
|
31
|
-
// Index facts by ID for on-demand retrieval
|
|
32
|
-
for (const fact of facts) {
|
|
33
|
-
this.factById.set(fact.id, fact);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Get a fact by ID from the cache.
|
|
38
|
-
* Only returns facts that have been previously loaded and cached.
|
|
39
|
-
* Used by SkillFileHandler to serve on-demand fact content.
|
|
40
|
-
*/
|
|
41
|
-
getFactById(factId) {
|
|
42
|
-
return this.factById.get(factId);
|
|
43
28
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Partition facts by access type for separate handling.
|
|
46
|
-
*/
|
|
47
|
-
partitionByAccessType(facts) {
|
|
48
|
-
const alwaysInject = [];
|
|
49
|
-
const onDemand = [];
|
|
50
|
-
for (const fact of facts) {
|
|
51
|
-
if (fact.accessType === FactAccessType.ALWAYS_INJECT) {
|
|
52
|
-
alwaysInject.push(fact);
|
|
53
|
-
}
|
|
54
|
-
else if (fact.accessType === FactAccessType.ON_DEMAND) {
|
|
55
|
-
onDemand.push(fact);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return { alwaysInject, onDemand };
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Load all facts for an organization (both ALWAYS_INJECT and ON_DEMAND).
|
|
62
|
-
* Facts are fetched in a single RPC call and partitioned client-side.
|
|
63
|
-
*/
|
|
64
29
|
async loadOrgFacts(rpcClient, organizationId, logger) {
|
|
65
30
|
const cacheKey = `organization:${organizationId}`;
|
|
66
31
|
const cached = this.getCached(cacheKey);
|
|
67
32
|
if (cached) {
|
|
68
|
-
return
|
|
33
|
+
return cached;
|
|
69
34
|
}
|
|
70
35
|
try {
|
|
71
36
|
const facts = await rpcClient.call(async (client) => {
|
|
@@ -73,26 +38,23 @@ export class KnowledgeManager {
|
|
|
73
38
|
entityScope: FactEntityScope.ORG,
|
|
74
39
|
entityId: organizationId,
|
|
75
40
|
isEnabled: true,
|
|
41
|
+
accessType: FactAccessType.ALWAYS_INJECT,
|
|
76
42
|
});
|
|
77
43
|
return data?.facts ?? [];
|
|
78
44
|
});
|
|
79
45
|
this.setCache(cacheKey, facts);
|
|
80
|
-
return
|
|
46
|
+
return facts;
|
|
81
47
|
}
|
|
82
48
|
catch (error) {
|
|
83
49
|
logger.warn("Failed to load org facts", { error });
|
|
84
|
-
return
|
|
50
|
+
return [];
|
|
85
51
|
}
|
|
86
52
|
}
|
|
87
|
-
/**
|
|
88
|
-
* Load all facts for an integration (both ALWAYS_INJECT and ON_DEMAND).
|
|
89
|
-
* Facts are fetched in a single RPC call and partitioned client-side.
|
|
90
|
-
*/
|
|
91
53
|
async loadIntegrationFacts(rpcClient, integrationId, logger) {
|
|
92
54
|
const cacheKey = `integration:${integrationId}`;
|
|
93
55
|
const cached = this.getCached(cacheKey);
|
|
94
56
|
if (cached) {
|
|
95
|
-
return
|
|
57
|
+
return cached;
|
|
96
58
|
}
|
|
97
59
|
try {
|
|
98
60
|
const facts = await rpcClient.call(async (client) => {
|
|
@@ -100,26 +62,23 @@ export class KnowledgeManager {
|
|
|
100
62
|
entityScope: FactEntityScope.INTEGRATION,
|
|
101
63
|
entityId: integrationId,
|
|
102
64
|
isEnabled: true,
|
|
65
|
+
accessType: FactAccessType.ALWAYS_INJECT,
|
|
103
66
|
});
|
|
104
67
|
return data?.facts ?? [];
|
|
105
68
|
});
|
|
106
69
|
this.setCache(cacheKey, facts);
|
|
107
|
-
return
|
|
70
|
+
return facts;
|
|
108
71
|
}
|
|
109
72
|
catch (error) {
|
|
110
73
|
logger.warn("Failed to load integration facts", { error });
|
|
111
|
-
return
|
|
74
|
+
return [];
|
|
112
75
|
}
|
|
113
76
|
}
|
|
114
|
-
/**
|
|
115
|
-
* Load all facts for a user (both ALWAYS_INJECT and ON_DEMAND).
|
|
116
|
-
* Facts are fetched in a single RPC call and partitioned client-side.
|
|
117
|
-
*/
|
|
118
77
|
async loadUserFacts(rpcClient, userId, logger) {
|
|
119
78
|
const cacheKey = `user:${userId}`;
|
|
120
79
|
const cached = this.getCached(cacheKey);
|
|
121
80
|
if (cached) {
|
|
122
|
-
return
|
|
81
|
+
return cached;
|
|
123
82
|
}
|
|
124
83
|
try {
|
|
125
84
|
const facts = await rpcClient.call(async (client) => {
|
|
@@ -127,15 +86,16 @@ export class KnowledgeManager {
|
|
|
127
86
|
entityScope: FactEntityScope.USER,
|
|
128
87
|
entityId: userId,
|
|
129
88
|
isEnabled: true,
|
|
89
|
+
accessType: FactAccessType.ALWAYS_INJECT,
|
|
130
90
|
});
|
|
131
91
|
return data?.facts ?? [];
|
|
132
92
|
});
|
|
133
93
|
this.setCache(cacheKey, facts);
|
|
134
|
-
return
|
|
94
|
+
return facts;
|
|
135
95
|
}
|
|
136
96
|
catch (error) {
|
|
137
97
|
logger.warn("Failed to load user facts", { error });
|
|
138
|
-
return
|
|
98
|
+
return [];
|
|
139
99
|
}
|
|
140
100
|
}
|
|
141
101
|
/**
|
|
@@ -168,47 +128,28 @@ export class KnowledgeManager {
|
|
|
168
128
|
async loadFactsPromptSections({ rpcClient, organizationId, userId, promptIntegrations, planIntegrations, logger, }) {
|
|
169
129
|
try {
|
|
170
130
|
const mergedIntegrations = this.mergeIntegrations(promptIntegrations, planIntegrations ?? []);
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
// Load all facts in parallel (single call per entity type)
|
|
177
|
-
const [orgFacts, userFacts, ...integrationResults] = await Promise.all([
|
|
131
|
+
const integrationFactsPromises = mergedIntegrations.map(async (integration) => ({
|
|
132
|
+
integration,
|
|
133
|
+
facts: await this.loadIntegrationFacts(rpcClient, integration.id, logger),
|
|
134
|
+
}));
|
|
135
|
+
const [orgFacts, userFacts, ...integrationFactsResults] = await Promise.all([
|
|
178
136
|
this.loadOrgFacts(rpcClient, organizationId, logger),
|
|
179
137
|
this.loadUserFacts(rpcClient, userId, logger),
|
|
180
138
|
...integrationFactsPromises,
|
|
181
139
|
]);
|
|
182
|
-
|
|
183
|
-
const
|
|
184
|
-
|
|
185
|
-
facts: r.alwaysInject,
|
|
186
|
-
}));
|
|
187
|
-
const allIntegrationResults = integrationResults.map((r) => ({
|
|
188
|
-
integration: r.integration,
|
|
189
|
-
facts: [...r.alwaysInject, ...r.onDemand],
|
|
190
|
-
}));
|
|
191
|
-
logger.info("[knowledge-manager] loaded facts for prompt", this.summarizeLoadedFactsForLogs(orgFacts.alwaysInject, userFacts.alwaysInject, alwaysInjectIntegrationResults));
|
|
192
|
-
// Format ALWAYS_INJECT facts for direct prompt injection
|
|
193
|
-
const systemPromptSection = formatSystemPromptFacts(orgFacts.alwaysInject);
|
|
194
|
-
const userMessageSection = formatUserMessageFacts(userFacts.alwaysInject, alwaysInjectIntegrationResults);
|
|
195
|
-
// Generate skill index for ON_DEMAND facts
|
|
196
|
-
const onDemandSkillIndex = generateOnDemandFactsSkillIndex(orgFacts.onDemand, userFacts.onDemand, allIntegrationResults) ?? "";
|
|
197
|
-
// Combine all facts for tracking (both ALWAYS_INJECT and ON_DEMAND)
|
|
198
|
-
const allOrgFacts = [...orgFacts.alwaysInject, ...orgFacts.onDemand];
|
|
199
|
-
const allUserFacts = [...userFacts.alwaysInject, ...userFacts.onDemand];
|
|
200
|
-
const allIntegrationFacts = integrationResults.reduce((acc, r) => {
|
|
201
|
-
acc[r.integration.id] = [...r.alwaysInject, ...r.onDemand];
|
|
202
|
-
return acc;
|
|
203
|
-
}, {});
|
|
140
|
+
logger.info("[knowledge-manager] loaded facts for prompt", this.summarizeLoadedFactsForLogs(orgFacts, userFacts, integrationFactsResults));
|
|
141
|
+
const systemPromptSection = formatSystemPromptFacts(orgFacts);
|
|
142
|
+
const userMessageSection = formatUserMessageFacts(userFacts, integrationFactsResults);
|
|
204
143
|
return {
|
|
205
144
|
systemPromptSection,
|
|
206
145
|
userMessageSection,
|
|
207
|
-
onDemandSkillIndex,
|
|
208
146
|
facts: {
|
|
209
|
-
org:
|
|
210
|
-
user:
|
|
211
|
-
integrations:
|
|
147
|
+
org: orgFacts,
|
|
148
|
+
user: userFacts,
|
|
149
|
+
integrations: integrationFactsResults.reduce((acc, r) => {
|
|
150
|
+
acc[r.integration.id] = r.facts;
|
|
151
|
+
return acc;
|
|
152
|
+
}, {}),
|
|
212
153
|
},
|
|
213
154
|
};
|
|
214
155
|
}
|
|
@@ -217,7 +158,6 @@ export class KnowledgeManager {
|
|
|
217
158
|
return {
|
|
218
159
|
systemPromptSection: "",
|
|
219
160
|
userMessageSection: "",
|
|
220
|
-
onDemandSkillIndex: "",
|
|
221
161
|
facts: {
|
|
222
162
|
org: [],
|
|
223
163
|
user: [],
|
|
@@ -258,26 +198,5 @@ export class KnowledgeManager {
|
|
|
258
198
|
facts.user.length > 0 ||
|
|
259
199
|
Object.keys(facts.integrations).length > 0);
|
|
260
200
|
}
|
|
261
|
-
/**
|
|
262
|
-
* Filter LoadedFacts to only include ALWAYS_INJECT facts.
|
|
263
|
-
* Used to show only always-inject facts in the initial knowledge UI message.
|
|
264
|
-
*/
|
|
265
|
-
filterAlwaysInjectFacts(facts) {
|
|
266
|
-
const filterAlwaysInject = (factList) => {
|
|
267
|
-
return factList.filter((fact) => fact.accessType === FactAccessType.ALWAYS_INJECT);
|
|
268
|
-
};
|
|
269
|
-
const alwaysInjectIntegrations = {};
|
|
270
|
-
for (const [integrationId, integrationFacts] of Object.entries(facts.integrations)) {
|
|
271
|
-
const filtered = filterAlwaysInject(integrationFacts);
|
|
272
|
-
if (filtered.length > 0) {
|
|
273
|
-
alwaysInjectIntegrations[integrationId] = filtered;
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
return {
|
|
277
|
-
org: filterAlwaysInject(facts.org),
|
|
278
|
-
user: filterAlwaysInject(facts.user),
|
|
279
|
-
integrations: alwaysInjectIntegrations,
|
|
280
|
-
};
|
|
281
|
-
}
|
|
282
201
|
}
|
|
283
202
|
//# sourceMappingURL=knowledge-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-manager.js","sourceRoot":"","sources":["../../../src/ai-service/facts/knowledge-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,eAAe,GAEhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAe,MAAM,sBAAsB,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"knowledge-manager.js","sourceRoot":"","sources":["../../../src/ai-service/facts/knowledge-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,eAAe,GAEhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAe,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAS/E,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AA8B/C;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IACnB,KAAK,GAAgC,EAAE,CAAC;IACxC,WAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;IAErC,YAAY,CAAC,KAAkB;QACrC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;IACrD,CAAC;IAEO,SAAS,CAAC,GAAW;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,QAAQ,CAAC,GAAW,EAAE,KAAgB;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG;YAChB,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,SAAkC,EAClC,cAAsB,EACtB,MAAc;QAEd,MAAM,QAAQ,GAAG,gBAAgB,cAAc,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAClD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC9C,WAAW,EAAE,eAAe,CAAC,GAAG;oBAChC,QAAQ,EAAE,cAAc;oBACxB,SAAS,EAAE,IAAI;oBACf,UAAU,EAAE,cAAc,CAAC,aAAa;iBACzC,CAAC,CAAC;gBACH,OAAO,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACnD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,SAAkC,EAClC,aAAqB,EACrB,MAAc;QAEd,MAAM,QAAQ,GAAG,eAAe,aAAa,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAClD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC9C,WAAW,EAAE,eAAe,CAAC,WAAW;oBACxC,QAAQ,EAAE,aAAa;oBACvB,SAAS,EAAE,IAAI;oBACf,UAAU,EAAE,cAAc,CAAC,aAAa;iBACzC,CAAC,CAAC;gBACH,OAAO,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3D,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,SAAkC,EAClC,MAAc,EACd,MAAc;QAEd,MAAM,QAAQ,GAAG,QAAQ,MAAM,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAClD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC9C,WAAW,EAAE,eAAe,CAAC,IAAI;oBACjC,QAAQ,EAAE,MAAM;oBAChB,SAAS,EAAE,IAAI;oBACf,UAAU,EAAE,cAAc,CAAC,aAAa;iBACzC,CAAC,CAAC;gBACH,OAAO,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CACvB,kBAA8C,EAC9C,gBAA4C;QAE5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,OAAO,CAAC,GAAG,kBAAkB,EAAE,GAAG,gBAAgB,CAAC,CAAC,MAAM,CACxD,CAAC,WAAW,EAAE,EAAE;YACd,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,2BAA2B,CACjC,QAAmB,EACnB,SAAoB,EACpB,uBAAiD;QAEjD,OAAO;YACL,gBAAgB,EAAE,uBAAuB,CAAC,MAAM;YAChD,YAAY,EAAE,uBAAuB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACrD,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;gBAC9B,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;gBACzB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;aAC9B,CAAC,CAAC;YACH,QAAQ,EAAE,QAAQ,CAAC,MAAM;YACzB,SAAS,EAAE,SAAS,CAAC,MAAM;SAC5B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,EAC5B,SAAS,EACT,cAAc,EACd,MAAM,EACN,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,GAQP;QACC,IAAI,CAAC;YACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAC/C,kBAAkB,EAClB,gBAAgB,IAAI,EAAE,CACvB,CAAC;YAEF,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,GAAG,CACrD,KAAK,EAAE,WAAW,EAAmC,EAAE,CAAC,CAAC;gBACvD,WAAW;gBACX,KAAK,EAAE,MAAM,IAAI,CAAC,oBAAoB,CACpC,SAAS,EACT,WAAW,CAAC,EAAE,EACd,MAAM,CACP;aACF,CAAC,CACH,CAAC;YAEF,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,GACrD,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC;gBACpD,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC7C,GAAG,wBAAwB;aAC5B,CAAC,CAAC;YAEL,MAAM,CAAC,IAAI,CACT,6CAA6C,EAC7C,IAAI,CAAC,2BAA2B,CAC9B,QAAQ,EACR,SAAS,EACT,uBAAuB,CACxB,CACF,CAAC;YAEF,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAC9D,MAAM,kBAAkB,GAAG,sBAAsB,CAC/C,SAAS,EACT,uBAAuB,CACxB,CAAC;YAEF,OAAO;gBACL,mBAAmB;gBACnB,kBAAkB;gBAClB,KAAK,EAAE;oBACL,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,SAAS;oBACf,YAAY,EAAE,uBAAuB,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;wBACT,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;wBAChC,OAAO,GAAG,CAAC;oBACb,CAAC,EACD,EAA+B,CAChC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,wCAAwC,EACxC,YAAY,CAAC,KAAK,CAAC,CACpB,CAAC;YACF,OAAO;gBACL,mBAAmB,EAAE,EAAE;gBACvB,kBAAkB,EAAE,EAAE;gBACtB,KAAK,EAAE;oBACL,GAAG,EAAE,EAAE;oBACP,IAAI,EAAE,EAAE;oBACR,YAAY,EAAE,EAAE;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,KAAkB;QAC/B,MAAM,YAAY,GAAG,CAAC,QAAmB,EAAa,EAAE;YACtD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC9B,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;oBAClC,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC9B,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,kBAAkB,GAA8B,EAAE,CAAC;QACzD,KAAK,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,IAAI,MAAM,CAAC,OAAO,CAC5D,KAAK,CAAC,YAAY,CACnB,EAAE,CAAC;YACF,MAAM,MAAM,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;YAC9C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,kBAAkB,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,OAAO;YACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC;YAC5B,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;YAC9B,YAAY,EAAE,kBAAkB;SACjC,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,KAAkB;QAC5B,OAAO,CACL,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAC3C,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -82,11 +82,6 @@ declare const FLAG_DEFINITIONS: {
|
|
|
82
82
|
readonly key: "clark.session-recording.enabled";
|
|
83
83
|
readonly schema: z.ZodBoolean;
|
|
84
84
|
};
|
|
85
|
-
readonly sessionManagementEnabled: {
|
|
86
|
-
readonly key: "clark.session-management.enabled";
|
|
87
|
-
readonly schema: z.ZodBoolean;
|
|
88
|
-
};
|
|
89
|
-
/** Derived from application templateName in CLI (not LD). See isSdkApiTemplate(). */
|
|
90
85
|
readonly sdkApiEnabled: {
|
|
91
86
|
readonly key: "clark.sdk-api.enabled";
|
|
92
87
|
readonly schema: z.ZodBoolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/ai-service/features.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;CACtB;AAED;;GAEG;AACH,KAAK,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAEnE;;GAEG;AACH,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI;IACxD,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS;CACrE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/ai-service/features.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;CACtB;AAED;;GAEG;AACH,KAAK,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAEnE;;GAEG;AACH,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI;IACxD,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS;CACrE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyD0B,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEzE,eAAO,MAAM,qBAAqB;IAChC;;OAEG;mBACW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAQ,qBAAqB;CAkBnE,CAAC"}
|
|
@@ -66,11 +66,6 @@ const FLAG_DEFINITIONS = {
|
|
|
66
66
|
key: "clark.session-recording.enabled",
|
|
67
67
|
schema: z.boolean(),
|
|
68
68
|
},
|
|
69
|
-
sessionManagementEnabled: {
|
|
70
|
-
key: "clark.session-management.enabled",
|
|
71
|
-
schema: z.boolean(),
|
|
72
|
-
},
|
|
73
|
-
/** Derived from application templateName in CLI (not LD). See isSdkApiTemplate(). */
|
|
74
69
|
sdkApiEnabled: {
|
|
75
70
|
key: "clark.sdk-api.enabled",
|
|
76
71
|
schema: z.boolean(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/ai-service/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,CAAC,MAAM,KAAK,CAAC;AAsBpB;;;;;;;;;;;;GAYG;AACH,MAAM,gBAAgB,GAAG;IACvB,2BAA2B,EAAE;QAC3B,GAAG,EAAE,2BAA2B;QAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB;IACD,gCAAgC,EAAE;QAChC,GAAG,EAAE,0BAA0B;QAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB;IACD,sBAAsB,EAAE;QACtB,GAAG,EAAE,iCAAiC;QACtC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,oBAAoB,EAAE;QACpB,GAAG,EAAE,2BAA2B;QAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC9B;IACD,2BAA2B,EAAE;QAC3B,GAAG,EAAE,8CAA8C;QACnD,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,sBAAsB,EAAE;QACtB,GAAG,EAAE,yCAAyC;QAC9C,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,gBAAgB,EAAE;QAChB,GAAG,EAAE,sBAAsB;QAC3B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;KACpC;IACD,wBAAwB,EAAE;QACxB,GAAG,EAAE,qCAAqC;QAC1C,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,eAAe,EAAE;QACf,GAAG,EAAE,kCAAkC;QACvC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,iCAAiC,EAAE;QACjC,GAAG,EAAE,oCAAoC;QACzC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,iBAAiB,EAAE;QACjB,GAAG,EAAE,8BAA8B;QACnC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,eAAe,EAAE;QACf,GAAG,EAAE,yBAAyB;QAC9B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,uBAAuB,EAAE;QACvB,GAAG,EAAE,iCAAiC;QACtC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,
|
|
1
|
+
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/ai-service/features.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,CAAC,MAAM,KAAK,CAAC;AAsBpB;;;;;;;;;;;;GAYG;AACH,MAAM,gBAAgB,GAAG;IACvB,2BAA2B,EAAE;QAC3B,GAAG,EAAE,2BAA2B;QAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB;IACD,gCAAgC,EAAE;QAChC,GAAG,EAAE,0BAA0B;QAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB;IACD,sBAAsB,EAAE;QACtB,GAAG,EAAE,iCAAiC;QACtC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,oBAAoB,EAAE;QACpB,GAAG,EAAE,2BAA2B;QAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC9B;IACD,2BAA2B,EAAE;QAC3B,GAAG,EAAE,8CAA8C;QACnD,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,sBAAsB,EAAE;QACtB,GAAG,EAAE,yCAAyC;QAC9C,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,gBAAgB,EAAE;QAChB,GAAG,EAAE,sBAAsB;QAC3B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;KACpC;IACD,wBAAwB,EAAE;QACxB,GAAG,EAAE,qCAAqC;QAC1C,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,eAAe,EAAE;QACf,GAAG,EAAE,kCAAkC;QACvC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,iCAAiC,EAAE;QACjC,GAAG,EAAE,oCAAoC;QACzC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,iBAAiB,EAAE;QACjB,GAAG,EAAE,8BAA8B;QACnC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,eAAe,EAAE;QACf,GAAG,EAAE,yBAAyB;QAC9B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,uBAAuB,EAAE;QACvB,GAAG,EAAE,iCAAiC;QACtC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;IACD,aAAa,EAAE;QACb,GAAG,EAAE,uBAAuB;QAC5B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;KACpB;CAC6C,CAAC;AAUjD,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC;;OAEG;IACH,MAAM,CAAC,QAAiC,EAAE;QACxC,OAAO,IAAI,KAAK,CAAC,EAA2B,EAAE;YAC5C,GAAG,CAAC,OAAO,EAAE,IAAqB;gBAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,gBAAgB,CAAC,EAAE,CAAC;oBAC5D,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAqC,CAAC,CAAC;gBACpE,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAE3B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACzC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAClD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type AiAppFact } from "@superblocksteam/library-shared/types";
|
|
2
1
|
import { TracedEventEmitter } from "@superblocksteam/shared";
|
|
3
2
|
import { ChatSessionStore } from "./chat/chat-session-store.js";
|
|
4
3
|
import { AppContextStore } from "./context/app-context.js";
|
|
@@ -11,8 +10,6 @@ import type { ContextId } from "./llm/context-v2/types.js";
|
|
|
11
10
|
import type { AiGenerateRequest, AiExplainCodeRequest, AiLabelAttachmentRequest, AiLabelAttachmentResponse, AiToolPermission, LLMProviderConfig, PromptContext, RuntimeErrorData, ConsoleLogEntry, ApiRunRecord } from "@superblocksteam/library-shared/types";
|
|
12
11
|
import type { ViteDevServer } from "vite";
|
|
13
12
|
export { AiServiceFeatureFlags } from "./features.js";
|
|
14
|
-
export { SnapshotManager } from "./recording/index.js";
|
|
15
|
-
export { isSdkApiTemplate } from "./sdk-api-templates.js";
|
|
16
13
|
export declare function pruneByTTL<T extends {
|
|
17
14
|
timestamp?: number;
|
|
18
15
|
generationTimestamp?: string;
|
|
@@ -83,11 +80,6 @@ export declare class AiService extends TracedEventEmitter<AiServiceEvents> {
|
|
|
83
80
|
* This allows external code to add custom recording middleware.
|
|
84
81
|
*/
|
|
85
82
|
getRecordingManager(): RecordingManager;
|
|
86
|
-
/**
|
|
87
|
-
* Returns the set of integration IDs available in the current environment.
|
|
88
|
-
*/
|
|
89
|
-
getAvailableIntegrationIds(): Promise<Set<string>>;
|
|
90
|
-
get isSessionManagementEnabled(): boolean;
|
|
91
83
|
/**
|
|
92
84
|
* Checks if there is a connected peer (user is connected via socket)
|
|
93
85
|
*/
|
|
@@ -191,18 +183,6 @@ export declare class AiService extends TracedEventEmitter<AiServiceEvents> {
|
|
|
191
183
|
}): Promise<JudgeEvaluationResult>;
|
|
192
184
|
handleUserChange(change: UserChange): void;
|
|
193
185
|
handleNewChat(): Promise<void>;
|
|
194
|
-
/**
|
|
195
|
-
* Returns all saved app skill facts for the current application.
|
|
196
|
-
*/
|
|
197
|
-
getAppFacts(): Promise<AiAppFact[]>;
|
|
198
|
-
/**
|
|
199
|
-
* Deletes an app skill fact by its virtual path.
|
|
200
|
-
*/
|
|
201
|
-
deleteAppFact(virtualPath: string): Promise<void>;
|
|
202
|
-
/**
|
|
203
|
-
* Toggles the isEnabled field of an app skill fact and returns the updated fact.
|
|
204
|
-
*/
|
|
205
|
-
toggleAppFact(virtualPath: string, isEnabled: boolean): Promise<AiAppFact>;
|
|
206
186
|
handleRestoreToCommit(sinceTimestamp: number, commitId: string, applicationId: string, branchName: string): Promise<void>;
|
|
207
187
|
handleApiUpdate(update: ApiUpdate): Promise<void>;
|
|
208
188
|
isBusy(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai-service/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai-service/index.ts"],"names":[],"mappings":"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"}
|
package/dist/ai-service/index.js
CHANGED
|
@@ -18,7 +18,6 @@ import { explainCodeFinalizeToolFactory } from "./agent/tools2/tools/explain-cod
|
|
|
18
18
|
import { FileSystemInterface } from "./app-interface/file-system-interface.js";
|
|
19
19
|
import { createDefaultVirtualFileSystem, createPathValidator, } from "./app-interface/filesystem/index.js";
|
|
20
20
|
import { AppShell } from "./app-interface/shell.js";
|
|
21
|
-
import { AppSkillsManager } from "./app-skills/manager.js";
|
|
22
21
|
import { BoltArtifactProcessor } from "./artifacts/bolt.js";
|
|
23
22
|
import { ChatSessionStore } from "./chat/chat-session-store.js";
|
|
24
23
|
import { AppContextStore } from "./context/app-context.js";
|
|
@@ -57,8 +56,6 @@ import { createJsonStreamParser } from "./util/json-stream-parser.js";
|
|
|
57
56
|
import { processLLMConfig } from "./util/llm-config-utils.js";
|
|
58
57
|
import { getToolCallSignature } from "./util/tool-signature.js";
|
|
59
58
|
export { AiServiceFeatureFlags } from "./features.js";
|
|
60
|
-
export { SnapshotManager } from "./recording/index.js";
|
|
61
|
-
export { isSdkApiTemplate } from "./sdk-api-templates.js";
|
|
62
59
|
// Helper functions for console log and runtime error buffer management
|
|
63
60
|
export function pruneByTTL(items, ttlMs) {
|
|
64
61
|
const now = Date.now();
|
|
@@ -212,16 +209,6 @@ export class AiService extends TracedEventEmitter {
|
|
|
212
209
|
getRecordingManager() {
|
|
213
210
|
return this.recordingManager;
|
|
214
211
|
}
|
|
215
|
-
/**
|
|
216
|
-
* Returns the set of integration IDs available in the current environment.
|
|
217
|
-
*/
|
|
218
|
-
async getAvailableIntegrationIds() {
|
|
219
|
-
const headers = await this.integrationStore.availableIntegrations();
|
|
220
|
-
return new Set(headers.map((h) => h.id));
|
|
221
|
-
}
|
|
222
|
-
get isSessionManagementEnabled() {
|
|
223
|
-
return this.config.features.sessionManagementEnabled === true;
|
|
224
|
-
}
|
|
225
212
|
/**
|
|
226
213
|
* Checks if there is a connected peer (user is connected via socket)
|
|
227
214
|
*/
|
|
@@ -259,8 +246,6 @@ export class AiService extends TracedEventEmitter {
|
|
|
259
246
|
prefetchNodeModules: true,
|
|
260
247
|
workDirSeed: config.appRootDirPath,
|
|
261
248
|
});
|
|
262
|
-
// Create KnowledgeManager before AppShell so it can be passed to VirtualFileSystem
|
|
263
|
-
this.knowledgeManager = new KnowledgeManager();
|
|
264
249
|
this.appShell = new AppShell({
|
|
265
250
|
appRootDirPath: config.appRootDirPath,
|
|
266
251
|
fsOperationQueue: config.fsOperationQueue,
|
|
@@ -268,7 +253,6 @@ export class AiService extends TracedEventEmitter {
|
|
|
268
253
|
templateRenderer: this.templateRenderer,
|
|
269
254
|
virtualFileSystem: createDefaultVirtualFileSystem({
|
|
270
255
|
useSystemSkills: config.features.useSystemSkills,
|
|
271
|
-
knowledgeManager: this.knowledgeManager,
|
|
272
256
|
sdkApiEnabled: config.features.sdkApiEnabled,
|
|
273
257
|
}),
|
|
274
258
|
pathValidator: createPathValidator(config.features.sdkApiEnabled ?? false),
|
|
@@ -290,6 +274,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
290
274
|
});
|
|
291
275
|
this.fileSystemInterface = new FileSystemInterface();
|
|
292
276
|
this.integrationStore = new IntegrationStore(undefined, config.appRootDirPath, config.features.metadataCacheMaxTotalSizeMB, config.features.metadataCacheMaxSingleFileSizeMB, config.pluginExecutionVersions, config.superblocksBaseUrl, config.applicationId, () => this.clark?.context?.jwt);
|
|
277
|
+
this.knowledgeManager = new KnowledgeManager();
|
|
293
278
|
this._appContext = new AppContextStore(this.fileSystemInterface);
|
|
294
279
|
this.sessionId = `session_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
295
280
|
this.chatSessionStore = new ChatSessionStore({
|
|
@@ -1604,28 +1589,6 @@ export class AiService extends TracedEventEmitter {
|
|
|
1604
1589
|
this.getLogger().error("[ai-service] Failed to clear contexts on new chat", getErrorMeta(error));
|
|
1605
1590
|
}
|
|
1606
1591
|
}
|
|
1607
|
-
/**
|
|
1608
|
-
* Returns all saved app skill facts for the current application.
|
|
1609
|
-
*/
|
|
1610
|
-
async getAppFacts() {
|
|
1611
|
-
const manager = new AppSkillsManager(this.config.appRootDirPath);
|
|
1612
|
-
const facts = await manager.loadFacts();
|
|
1613
|
-
return AppSkillsManager.toAiAppFacts(facts);
|
|
1614
|
-
}
|
|
1615
|
-
/**
|
|
1616
|
-
* Deletes an app skill fact by its virtual path.
|
|
1617
|
-
*/
|
|
1618
|
-
async deleteAppFact(virtualPath) {
|
|
1619
|
-
const manager = new AppSkillsManager(this.config.appRootDirPath);
|
|
1620
|
-
await manager.deleteFact(virtualPath);
|
|
1621
|
-
}
|
|
1622
|
-
/**
|
|
1623
|
-
* Toggles the isEnabled field of an app skill fact and returns the updated fact.
|
|
1624
|
-
*/
|
|
1625
|
-
async toggleAppFact(virtualPath, isEnabled) {
|
|
1626
|
-
const manager = new AppSkillsManager(this.config.appRootDirPath);
|
|
1627
|
-
return manager.toggleFact(virtualPath, isEnabled);
|
|
1628
|
-
}
|
|
1629
1592
|
async handleRestoreToCommit(sinceTimestamp, commitId, applicationId, branchName) {
|
|
1630
1593
|
// TODO: change this to truncate after commit once commit info is supported here, so we can truncate messages accurately.
|
|
1631
1594
|
// 1. Truncate chat messages on server (always do this first)
|