agent-world 0.13.0 → 0.15.0
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/README.md +90 -17
- package/dist/cli/commands.d.ts +7 -1
- package/dist/cli/commands.js +27 -10
- package/dist/cli/hitl.d.ts +4 -1
- package/dist/cli/hitl.js +55 -20
- package/dist/cli/index.js +249 -97
- package/dist/cli/system-events.d.ts +27 -0
- package/dist/cli/system-events.js +63 -0
- package/dist/core/activity-tracker.d.ts +26 -0
- package/dist/core/activity-tracker.d.ts.map +1 -1
- package/dist/core/activity-tracker.js +21 -4
- package/dist/core/activity-tracker.js.map +1 -1
- package/dist/core/anthropic-direct.d.ts +2 -0
- package/dist/core/anthropic-direct.d.ts.map +1 -1
- package/dist/core/anthropic-direct.js +43 -1
- package/dist/core/anthropic-direct.js.map +1 -1
- package/dist/core/chat-constants.d.ts +12 -0
- package/dist/core/chat-constants.d.ts.map +1 -1
- package/dist/core/chat-constants.js +5 -0
- package/dist/core/chat-constants.js.map +1 -1
- package/dist/core/create-agent-tool.d.ts +5 -0
- package/dist/core/create-agent-tool.d.ts.map +1 -1
- package/dist/core/create-agent-tool.js +57 -34
- package/dist/core/create-agent-tool.js.map +1 -1
- package/dist/core/events/index.d.ts +5 -2
- package/dist/core/events/index.d.ts.map +1 -1
- package/dist/core/events/index.js +5 -2
- package/dist/core/events/index.js.map +1 -1
- package/dist/core/events/memory-manager.d.ts +26 -1
- package/dist/core/events/memory-manager.d.ts.map +1 -1
- package/dist/core/events/memory-manager.js +877 -72
- package/dist/core/events/memory-manager.js.map +1 -1
- package/dist/core/events/orchestrator.d.ts +8 -0
- package/dist/core/events/orchestrator.d.ts.map +1 -1
- package/dist/core/events/orchestrator.js +203 -36
- package/dist/core/events/orchestrator.js.map +1 -1
- package/dist/core/events/persistence.d.ts +21 -14
- package/dist/core/events/persistence.d.ts.map +1 -1
- package/dist/core/events/persistence.js +100 -35
- package/dist/core/events/persistence.js.map +1 -1
- package/dist/core/events/publishers.d.ts +13 -7
- package/dist/core/events/publishers.d.ts.map +1 -1
- package/dist/core/events/publishers.js +53 -37
- package/dist/core/events/publishers.js.map +1 -1
- package/dist/core/events/subscribers.d.ts +17 -14
- package/dist/core/events/subscribers.d.ts.map +1 -1
- package/dist/core/events/subscribers.js +61 -148
- package/dist/core/events/subscribers.js.map +1 -1
- package/dist/core/events/title-scheduler.d.ts +27 -0
- package/dist/core/events/title-scheduler.d.ts.map +1 -0
- package/dist/core/events/title-scheduler.js +135 -0
- package/dist/core/events/title-scheduler.js.map +1 -0
- package/dist/core/events/tool-bridge-logging.d.ts +4 -1
- package/dist/core/events/tool-bridge-logging.d.ts.map +1 -1
- package/dist/core/events/tool-bridge-logging.js +112 -13
- package/dist/core/events/tool-bridge-logging.js.map +1 -1
- package/dist/core/events-metadata.d.ts.map +1 -1
- package/dist/core/events-metadata.js +8 -4
- package/dist/core/events-metadata.js.map +1 -1
- package/dist/core/export.d.ts +1 -1
- package/dist/core/export.d.ts.map +1 -1
- package/dist/core/export.js +2 -15
- package/dist/core/export.js.map +1 -1
- package/dist/core/feature-path-logging.d.ts +50 -0
- package/dist/core/feature-path-logging.d.ts.map +1 -0
- package/dist/core/feature-path-logging.js +130 -0
- package/dist/core/feature-path-logging.js.map +1 -0
- package/dist/core/file-tools.d.ts +57 -1
- package/dist/core/file-tools.d.ts.map +1 -1
- package/dist/core/file-tools.js +329 -29
- package/dist/core/file-tools.js.map +1 -1
- package/dist/core/google-direct.d.ts +6 -1
- package/dist/core/google-direct.d.ts.map +1 -1
- package/dist/core/google-direct.js +76 -7
- package/dist/core/google-direct.js.map +1 -1
- package/dist/core/heartbeat.d.ts +34 -0
- package/dist/core/heartbeat.d.ts.map +1 -0
- package/dist/core/heartbeat.js +153 -0
- package/dist/core/heartbeat.js.map +1 -0
- package/dist/core/hitl-tool.d.ts +6 -12
- package/dist/core/hitl-tool.d.ts.map +1 -1
- package/dist/core/hitl-tool.js +66 -88
- package/dist/core/hitl-tool.js.map +1 -1
- package/dist/core/hitl.d.ts +61 -4
- package/dist/core/hitl.d.ts.map +1 -1
- package/dist/core/hitl.js +324 -60
- package/dist/core/hitl.js.map +1 -1
- package/dist/core/index.d.ts +11 -7
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +10 -6
- package/dist/core/index.js.map +1 -1
- package/dist/core/llm-manager.d.ts +15 -0
- package/dist/core/llm-manager.d.ts.map +1 -1
- package/dist/core/llm-manager.js +325 -40
- package/dist/core/llm-manager.js.map +1 -1
- package/dist/core/load-skill-tool.d.ts +36 -3
- package/dist/core/load-skill-tool.d.ts.map +1 -1
- package/dist/core/load-skill-tool.js +807 -93
- package/dist/core/load-skill-tool.js.map +1 -1
- package/dist/core/logger.d.ts +14 -0
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +15 -0
- package/dist/core/logger.js.map +1 -1
- package/dist/core/managers.d.ts +18 -50
- package/dist/core/managers.d.ts.map +1 -1
- package/dist/core/managers.js +340 -502
- package/dist/core/managers.js.map +1 -1
- package/dist/core/mcp-server-registry.d.ts +16 -1
- package/dist/core/mcp-server-registry.d.ts.map +1 -1
- package/dist/core/mcp-server-registry.js +162 -12
- package/dist/core/mcp-server-registry.js.map +1 -1
- package/dist/core/message-cutoff.d.ts +29 -0
- package/dist/core/message-cutoff.d.ts.map +1 -0
- package/dist/core/message-cutoff.js +63 -0
- package/dist/core/message-cutoff.js.map +1 -0
- package/dist/core/message-edit-manager.d.ts +54 -0
- package/dist/core/message-edit-manager.d.ts.map +1 -0
- package/dist/core/message-edit-manager.js +602 -0
- package/dist/core/message-edit-manager.js.map +1 -0
- package/dist/core/message-prep.d.ts +2 -0
- package/dist/core/message-prep.d.ts.map +1 -1
- package/dist/core/message-prep.js +39 -12
- package/dist/core/message-prep.js.map +1 -1
- package/dist/core/message-processing-control.d.ts +1 -0
- package/dist/core/message-processing-control.d.ts.map +1 -1
- package/dist/core/message-processing-control.js +23 -6
- package/dist/core/message-processing-control.js.map +1 -1
- package/dist/core/openai-direct.d.ts +9 -3
- package/dist/core/openai-direct.d.ts.map +1 -1
- package/dist/core/openai-direct.js +267 -33
- package/dist/core/openai-direct.js.map +1 -1
- package/dist/core/optional-tracers/opik-runtime.d.ts +32 -0
- package/dist/core/optional-tracers/opik-runtime.d.ts.map +1 -0
- package/dist/core/optional-tracers/opik-runtime.js +141 -0
- package/dist/core/optional-tracers/opik-runtime.js.map +1 -0
- package/dist/core/queue-manager.d.ts +84 -0
- package/dist/core/queue-manager.d.ts.map +1 -0
- package/dist/core/queue-manager.js +814 -0
- package/dist/core/queue-manager.js.map +1 -0
- package/dist/core/reasoning-controls.d.ts +30 -0
- package/dist/core/reasoning-controls.d.ts.map +1 -0
- package/dist/core/reasoning-controls.js +118 -0
- package/dist/core/reasoning-controls.js.map +1 -0
- package/dist/core/reliability-config.d.ts +82 -0
- package/dist/core/reliability-config.d.ts.map +1 -0
- package/dist/core/reliability-config.js +106 -0
- package/dist/core/reliability-config.js.map +1 -0
- package/dist/core/reliability-runtime.d.ts +53 -0
- package/dist/core/reliability-runtime.d.ts.map +1 -0
- package/dist/core/reliability-runtime.js +92 -0
- package/dist/core/reliability-runtime.js.map +1 -0
- package/dist/core/security/guardrails.d.ts +21 -0
- package/dist/core/security/guardrails.d.ts.map +1 -0
- package/dist/core/security/guardrails.js +111 -0
- package/dist/core/security/guardrails.js.map +1 -0
- package/dist/core/send-message-tool.d.ts +79 -0
- package/dist/core/send-message-tool.d.ts.map +1 -0
- package/dist/core/send-message-tool.js +222 -0
- package/dist/core/send-message-tool.js.map +1 -0
- package/dist/core/shell-cmd-tool.d.ts +82 -1
- package/dist/core/shell-cmd-tool.d.ts.map +1 -1
- package/dist/core/shell-cmd-tool.js +854 -42
- package/dist/core/shell-cmd-tool.js.map +1 -1
- package/dist/core/skill-registry.d.ts +2 -0
- package/dist/core/skill-registry.d.ts.map +1 -1
- package/dist/core/skill-registry.js +52 -2
- package/dist/core/skill-registry.js.map +1 -1
- package/dist/core/storage/eventStorage/fileEventStorage.d.ts +5 -0
- package/dist/core/storage/eventStorage/fileEventStorage.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/fileEventStorage.js +61 -0
- package/dist/core/storage/eventStorage/fileEventStorage.js.map +1 -1
- package/dist/core/storage/eventStorage/memoryEventStorage.d.ts +5 -0
- package/dist/core/storage/eventStorage/memoryEventStorage.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/memoryEventStorage.js +34 -0
- package/dist/core/storage/eventStorage/memoryEventStorage.js.map +1 -1
- package/dist/core/storage/eventStorage/sqliteEventStorage.d.ts +1 -0
- package/dist/core/storage/eventStorage/sqliteEventStorage.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/sqliteEventStorage.js +19 -2
- package/dist/core/storage/eventStorage/sqliteEventStorage.js.map +1 -1
- package/dist/core/storage/eventStorage/types.d.ts +6 -0
- package/dist/core/storage/eventStorage/types.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/types.js +1 -0
- package/dist/core/storage/eventStorage/types.js.map +1 -1
- package/dist/core/storage/eventStorage/validation.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/validation.js +2 -1
- package/dist/core/storage/eventStorage/validation.js.map +1 -1
- package/dist/core/storage/github-world-import.d.ts +84 -0
- package/dist/core/storage/github-world-import.d.ts.map +1 -0
- package/dist/core/storage/github-world-import.js +365 -0
- package/dist/core/storage/github-world-import.js.map +1 -0
- package/dist/core/storage/memory-storage.d.ts +19 -8
- package/dist/core/storage/memory-storage.d.ts.map +1 -1
- package/dist/core/storage/memory-storage.js +147 -49
- package/dist/core/storage/memory-storage.js.map +1 -1
- package/dist/core/storage/queue-storage.d.ts +1 -0
- package/dist/core/storage/queue-storage.d.ts.map +1 -1
- package/dist/core/storage/queue-storage.js +3 -2
- package/dist/core/storage/queue-storage.js.map +1 -1
- package/dist/core/storage/sqlite-storage.d.ts +14 -9
- package/dist/core/storage/sqlite-storage.d.ts.map +1 -1
- package/dist/core/storage/sqlite-storage.js +131 -154
- package/dist/core/storage/sqlite-storage.js.map +1 -1
- package/dist/core/storage/storage-factory.d.ts +3 -0
- package/dist/core/storage/storage-factory.d.ts.map +1 -1
- package/dist/core/storage/storage-factory.js +175 -89
- package/dist/core/storage/storage-factory.js.map +1 -1
- package/dist/core/storage/world-storage.d.ts +1 -1
- package/dist/core/storage/world-storage.d.ts.map +1 -1
- package/dist/core/storage/world-storage.js +5 -1
- package/dist/core/storage/world-storage.js.map +1 -1
- package/dist/core/storage-init.d.ts +11 -0
- package/dist/core/storage-init.d.ts.map +1 -0
- package/dist/core/storage-init.js +122 -0
- package/dist/core/storage-init.js.map +1 -0
- package/dist/core/subscription.d.ts +8 -1
- package/dist/core/subscription.d.ts.map +1 -1
- package/dist/core/subscription.js +130 -23
- package/dist/core/subscription.js.map +1 -1
- package/dist/core/tool-approval.d.ts +45 -0
- package/dist/core/tool-approval.d.ts.map +1 -0
- package/dist/core/tool-approval.js +223 -0
- package/dist/core/tool-approval.js.map +1 -0
- package/dist/core/tool-execution-envelope.d.ts +87 -0
- package/dist/core/tool-execution-envelope.d.ts.map +1 -0
- package/dist/core/tool-execution-envelope.js +168 -0
- package/dist/core/tool-execution-envelope.js.map +1 -0
- package/dist/core/tool-utils.d.ts +7 -2
- package/dist/core/tool-utils.d.ts.map +1 -1
- package/dist/core/tool-utils.js +81 -17
- package/dist/core/tool-utils.js.map +1 -1
- package/dist/core/types.d.ts +67 -19
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +3 -0
- package/dist/core/types.js.map +1 -1
- package/dist/core/utils.d.ts +7 -0
- package/dist/core/utils.d.ts.map +1 -1
- package/dist/core/utils.js +71 -21
- package/dist/core/utils.js.map +1 -1
- package/dist/core/web-fetch-tool.d.ts +72 -0
- package/dist/core/web-fetch-tool.d.ts.map +1 -0
- package/dist/core/web-fetch-tool.js +491 -0
- package/dist/core/web-fetch-tool.js.map +1 -0
- package/dist/core/world-registry.d.ts +84 -0
- package/dist/core/world-registry.d.ts.map +1 -0
- package/dist/core/world-registry.js +247 -0
- package/dist/core/world-registry.js.map +1 -0
- package/dist/public/assets/index-Be-1xtV-.js +104 -0
- package/dist/public/assets/index-tsDdiXDU.css +1 -0
- package/dist/public/index.html +2 -2
- package/dist/public/mcp-sandbox-proxy.html +148 -0
- package/dist/server/api.js +260 -18
- package/dist/server/error-response.d.ts +27 -0
- package/dist/server/error-response.js +77 -0
- package/dist/server/index.d.ts +2 -1
- package/dist/server/index.js +6 -2
- package/dist/server/sse-handler.d.ts +11 -1
- package/dist/server/sse-handler.js +194 -34
- package/migrations/0015_add_message_queue.sql +36 -0
- package/migrations/0016_add_world_heartbeat.sql +13 -0
- package/migrations/0017_add_title_provenance.sql +7 -0
- package/package.json +31 -10
- package/dist/public/assets/index-BW41BxMy.css +0 -1
- package/dist/public/assets/index-kO6UJFwK.js +0 -96
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-manager.js","sourceRoot":"","sources":["../../core/queue-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reasoning Controls and Stream Normalization
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Normalize turn-level reasoning effort settings across provider adapters.
|
|
6
|
+
* - Extract provider-native reasoning deltas into one internal `reasoningContent` field.
|
|
7
|
+
*
|
|
8
|
+
* Key Features:
|
|
9
|
+
* - Latest-user-turn reasoning effort resolution from agent memory messages.
|
|
10
|
+
* - OpenAI-compatible stream delta normalization (`thinking`, `reasoning_content`, `thought`).
|
|
11
|
+
* - Provider request-option mapping for OpenAI-compatible, Ollama, and Google SDK calls.
|
|
12
|
+
*
|
|
13
|
+
* Implementation Notes:
|
|
14
|
+
* - Mapping is intentionally conservative where provider SDKs differ from OpenAI-compatible shims.
|
|
15
|
+
* - Google models using the official SDK degrade gracefully when exact high/disable controls are unavailable.
|
|
16
|
+
*
|
|
17
|
+
* Recent Changes:
|
|
18
|
+
* - 2026-03-10: Initial implementation for unified reasoning-token streaming and composer effort control.
|
|
19
|
+
*/
|
|
20
|
+
import { AgentMessage, LLMProvider, ReasoningEffort } from './types.js';
|
|
21
|
+
export interface StreamingTextDelta {
|
|
22
|
+
content?: string;
|
|
23
|
+
reasoningContent?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare function normalizeReasoningEffort(value: unknown): ReasoningEffort | null;
|
|
26
|
+
export declare function getLatestTurnReasoningEffort(messages: AgentMessage[]): ReasoningEffort | null;
|
|
27
|
+
export declare function extractOpenAICompatibleReasoningContent(delta: Record<string, unknown> | null | undefined): string;
|
|
28
|
+
export declare function buildOpenAIReasoningRequestOptions(provider: LLMProvider, reasoningEffort: ReasoningEffort | null): Record<string, unknown>;
|
|
29
|
+
export declare function buildGoogleThinkingConfig(model: string, reasoningEffort: ReasoningEffort | null): Record<string, unknown> | undefined;
|
|
30
|
+
//# sourceMappingURL=reasoning-controls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reasoning-controls.d.ts","sourceRoot":"","sources":["../../core/reasoning-controls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAExE,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AA2BD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAM/E;AAED,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,eAAe,GAAG,IAAI,CAU7F;AAED,wBAAgB,uCAAuC,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAOjH;AAED,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,WAAW,EACrB,eAAe,EAAE,eAAe,GAAG,IAAI,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiBzB;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,eAAe,GAAG,IAAI,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAiCrC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reasoning Controls and Stream Normalization
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Normalize turn-level reasoning effort settings across provider adapters.
|
|
6
|
+
* - Extract provider-native reasoning deltas into one internal `reasoningContent` field.
|
|
7
|
+
*
|
|
8
|
+
* Key Features:
|
|
9
|
+
* - Latest-user-turn reasoning effort resolution from agent memory messages.
|
|
10
|
+
* - OpenAI-compatible stream delta normalization (`thinking`, `reasoning_content`, `thought`).
|
|
11
|
+
* - Provider request-option mapping for OpenAI-compatible, Ollama, and Google SDK calls.
|
|
12
|
+
*
|
|
13
|
+
* Implementation Notes:
|
|
14
|
+
* - Mapping is intentionally conservative where provider SDKs differ from OpenAI-compatible shims.
|
|
15
|
+
* - Google models using the official SDK degrade gracefully when exact high/disable controls are unavailable.
|
|
16
|
+
*
|
|
17
|
+
* Recent Changes:
|
|
18
|
+
* - 2026-03-10: Initial implementation for unified reasoning-token streaming and composer effort control.
|
|
19
|
+
*/
|
|
20
|
+
import { LLMProvider } from './types.js';
|
|
21
|
+
function toText(value) {
|
|
22
|
+
if (typeof value === 'string') {
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
if (Array.isArray(value)) {
|
|
26
|
+
return value
|
|
27
|
+
.map((item) => {
|
|
28
|
+
if (typeof item === 'string')
|
|
29
|
+
return item;
|
|
30
|
+
if (item && typeof item === 'object' && typeof item.text === 'string') {
|
|
31
|
+
return item.text;
|
|
32
|
+
}
|
|
33
|
+
return '';
|
|
34
|
+
})
|
|
35
|
+
.join('');
|
|
36
|
+
}
|
|
37
|
+
return '';
|
|
38
|
+
}
|
|
39
|
+
function isUserLikeMessage(message) {
|
|
40
|
+
if (!message)
|
|
41
|
+
return false;
|
|
42
|
+
if (message.role === 'user')
|
|
43
|
+
return true;
|
|
44
|
+
const normalizedSender = String(message.sender || '').trim().toLowerCase();
|
|
45
|
+
return normalizedSender === 'human' || normalizedSender.startsWith('user');
|
|
46
|
+
}
|
|
47
|
+
export function normalizeReasoningEffort(value) {
|
|
48
|
+
const normalized = String(value || '').trim().toLowerCase();
|
|
49
|
+
if (normalized === 'off' || normalized === 'low' || normalized === 'high') {
|
|
50
|
+
return normalized;
|
|
51
|
+
}
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
export function getLatestTurnReasoningEffort(messages) {
|
|
55
|
+
for (let index = messages.length - 1; index >= 0; index -= 1) {
|
|
56
|
+
const message = messages[index];
|
|
57
|
+
if (!isUserLikeMessage(message))
|
|
58
|
+
continue;
|
|
59
|
+
const normalized = normalizeReasoningEffort(message.reasoningEffort);
|
|
60
|
+
if (normalized) {
|
|
61
|
+
return normalized;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
export function extractOpenAICompatibleReasoningContent(delta) {
|
|
67
|
+
if (!delta)
|
|
68
|
+
return '';
|
|
69
|
+
return toText(delta.thinking
|
|
70
|
+
|| delta.reasoning_content
|
|
71
|
+
|| delta.thought);
|
|
72
|
+
}
|
|
73
|
+
export function buildOpenAIReasoningRequestOptions(provider, reasoningEffort) {
|
|
74
|
+
if (!reasoningEffort)
|
|
75
|
+
return {};
|
|
76
|
+
if (provider === LLMProvider.OLLAMA) {
|
|
77
|
+
return {
|
|
78
|
+
think: reasoningEffort !== 'off',
|
|
79
|
+
...(reasoningEffort !== 'off' ? { presence_penalty: 1.5 } : {}),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
if (reasoningEffort === 'off') {
|
|
83
|
+
return {};
|
|
84
|
+
}
|
|
85
|
+
return {
|
|
86
|
+
reasoning_effort: reasoningEffort === 'high' ? 'high' : 'low',
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
export function buildGoogleThinkingConfig(model, reasoningEffort) {
|
|
90
|
+
if (!reasoningEffort) {
|
|
91
|
+
return undefined;
|
|
92
|
+
}
|
|
93
|
+
const normalizedModel = String(model || '').trim().toLowerCase();
|
|
94
|
+
const isGemini3 = normalizedModel.startsWith('gemini-3');
|
|
95
|
+
const isFlash = normalizedModel.includes('flash');
|
|
96
|
+
if (isGemini3) {
|
|
97
|
+
if (reasoningEffort === 'off') {
|
|
98
|
+
return {
|
|
99
|
+
includeThoughts: false,
|
|
100
|
+
thinkingLevel: isFlash ? 'minimal' : 'low',
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
return {
|
|
104
|
+
includeThoughts: true,
|
|
105
|
+
thinkingLevel: reasoningEffort === 'high' ? 'high' : 'low',
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
if (reasoningEffort === 'off') {
|
|
109
|
+
return {
|
|
110
|
+
includeThoughts: false,
|
|
111
|
+
thinkingBudget: 0,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
return {
|
|
115
|
+
includeThoughts: true,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=reasoning-controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reasoning-controls.js","sourceRoot":"","sources":["../../core/reasoning-controls.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reliability Config
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Centralize timeout, retry, and backoff configuration used by runtime reliability boundaries.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Shared defaults for MCP, queue dispatch, shell, web fetch, LLM queue, and storage retries.
|
|
9
|
+
* - Environment-aware parsing helpers with deterministic fallback behavior.
|
|
10
|
+
* - Boundary-specific helpers where runtime reads must remain dynamic (for example shell kill grace).
|
|
11
|
+
*
|
|
12
|
+
* Implementation notes:
|
|
13
|
+
* - Keep parsing semantics aligned with existing boundary behavior to avoid drift.
|
|
14
|
+
* - Export plain objects/functions only (no class/stateful runtime dependencies).
|
|
15
|
+
*
|
|
16
|
+
* Recent changes:
|
|
17
|
+
* - 2026-03-05: Initial extraction of reliability timeout/retry constants and env parsing helpers.
|
|
18
|
+
*/
|
|
19
|
+
type EnvSource = NodeJS.ProcessEnv;
|
|
20
|
+
export declare function getReliabilityConfig(env?: EnvSource): {
|
|
21
|
+
readonly mcp: {
|
|
22
|
+
readonly discoveryTimeoutMs: number;
|
|
23
|
+
readonly executionMaxAttempts: number;
|
|
24
|
+
readonly executionRetryBaseDelayMs: number;
|
|
25
|
+
};
|
|
26
|
+
readonly queue: {
|
|
27
|
+
readonly noResponseFallbackMs: number;
|
|
28
|
+
readonly maxRetryAttempts: 3;
|
|
29
|
+
readonly retryBaseDelayMs: 1000;
|
|
30
|
+
};
|
|
31
|
+
readonly shell: {
|
|
32
|
+
readonly timeoutKillGraceMs: number;
|
|
33
|
+
};
|
|
34
|
+
readonly storage: {
|
|
35
|
+
readonly agentLoadRetries: 2;
|
|
36
|
+
readonly agentLoadRetryDelayMs: 75;
|
|
37
|
+
readonly sqliteBusyTimeoutMs: number;
|
|
38
|
+
};
|
|
39
|
+
readonly llm: {
|
|
40
|
+
readonly processingTimeoutMs: 900000;
|
|
41
|
+
readonly warningThresholdRatio: 0.5;
|
|
42
|
+
readonly minProcessingTimeoutMs: 1000;
|
|
43
|
+
};
|
|
44
|
+
readonly webFetch: {
|
|
45
|
+
readonly defaultTimeoutMs: 12000;
|
|
46
|
+
readonly maxTimeoutMs: 30000;
|
|
47
|
+
readonly minTimeoutMs: 1000;
|
|
48
|
+
readonly defaultMaxChars: 24000;
|
|
49
|
+
readonly maxMaxChars: 120000;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export declare const RELIABILITY_CONFIG: {
|
|
53
|
+
readonly mcp: {
|
|
54
|
+
readonly discoveryTimeoutMs: number;
|
|
55
|
+
readonly executionMaxAttempts: number;
|
|
56
|
+
readonly executionRetryBaseDelayMs: number;
|
|
57
|
+
};
|
|
58
|
+
readonly queue: {
|
|
59
|
+
readonly noResponseFallbackMs: number;
|
|
60
|
+
readonly maxRetryAttempts: 3;
|
|
61
|
+
readonly retryBaseDelayMs: 1000;
|
|
62
|
+
};
|
|
63
|
+
readonly storage: {
|
|
64
|
+
readonly agentLoadRetries: 2;
|
|
65
|
+
readonly agentLoadRetryDelayMs: 75;
|
|
66
|
+
readonly sqliteBusyTimeoutMs: number;
|
|
67
|
+
};
|
|
68
|
+
readonly llm: {
|
|
69
|
+
readonly processingTimeoutMs: 900000;
|
|
70
|
+
readonly warningThresholdRatio: 0.5;
|
|
71
|
+
readonly minProcessingTimeoutMs: 1000;
|
|
72
|
+
};
|
|
73
|
+
readonly webFetch: {
|
|
74
|
+
readonly defaultTimeoutMs: 12000;
|
|
75
|
+
readonly maxTimeoutMs: 30000;
|
|
76
|
+
readonly minTimeoutMs: 1000;
|
|
77
|
+
readonly defaultMaxChars: 24000;
|
|
78
|
+
readonly maxMaxChars: 120000;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
export declare function getShellTimeoutKillGraceMs(): number;
|
|
82
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reliability-config.d.ts","sourceRoot":"","sources":["../../core/reliability-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,KAAK,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC;AA+FnC,wBAAgB,oBAAoB,CAAC,GAAG,GAAE,SAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAShE;AAID,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMrB,CAAC;AAEX,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reliability Config
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Centralize timeout, retry, and backoff configuration used by runtime reliability boundaries.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Shared defaults for MCP, queue dispatch, shell, web fetch, LLM queue, and storage retries.
|
|
9
|
+
* - Environment-aware parsing helpers with deterministic fallback behavior.
|
|
10
|
+
* - Boundary-specific helpers where runtime reads must remain dynamic (for example shell kill grace).
|
|
11
|
+
*
|
|
12
|
+
* Implementation notes:
|
|
13
|
+
* - Keep parsing semantics aligned with existing boundary behavior to avoid drift.
|
|
14
|
+
* - Export plain objects/functions only (no class/stateful runtime dependencies).
|
|
15
|
+
*
|
|
16
|
+
* Recent changes:
|
|
17
|
+
* - 2026-03-05: Initial extraction of reliability timeout/retry constants and env parsing helpers.
|
|
18
|
+
*/
|
|
19
|
+
function parseInteger(value) {
|
|
20
|
+
const parsed = Number.parseInt(String(value ?? ''), 10);
|
|
21
|
+
return Number.isFinite(parsed) ? parsed : null;
|
|
22
|
+
}
|
|
23
|
+
function parsePositiveIntOrDefault(value, fallback) {
|
|
24
|
+
const parsed = parseInteger(value);
|
|
25
|
+
if (parsed == null || parsed <= 0)
|
|
26
|
+
return fallback;
|
|
27
|
+
return parsed;
|
|
28
|
+
}
|
|
29
|
+
function parseMinIntOrDefault(value, fallback, minInclusive) {
|
|
30
|
+
const parsed = parseInteger(value);
|
|
31
|
+
if (parsed == null || parsed < minInclusive)
|
|
32
|
+
return fallback;
|
|
33
|
+
return parsed;
|
|
34
|
+
}
|
|
35
|
+
function resolveMCPConfig(env) {
|
|
36
|
+
const discoveryTimeoutMs = parsePositiveIntOrDefault(env.AGENT_WORLD_MCP_DISCOVERY_TIMEOUT_MS, 5000);
|
|
37
|
+
const executionMaxAttempts = parseMinIntOrDefault(env.AGENT_WORLD_MCP_EXECUTION_MAX_ATTEMPTS, 2, 1);
|
|
38
|
+
const executionRetryBaseDelayMs = parseMinIntOrDefault(env.AGENT_WORLD_MCP_EXECUTION_RETRY_BASE_DELAY_MS, 1000, 0);
|
|
39
|
+
return {
|
|
40
|
+
discoveryTimeoutMs,
|
|
41
|
+
executionMaxAttempts,
|
|
42
|
+
executionRetryBaseDelayMs,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function resolveQueueConfig(env) {
|
|
46
|
+
const configured = parseInteger(env.AGENT_WORLD_QUEUE_NO_RESPONSE_FALLBACK_MS);
|
|
47
|
+
const noResponseFallbackMs = configured == null || configured <= 0
|
|
48
|
+
? 5000
|
|
49
|
+
: Math.max(configured, 1000);
|
|
50
|
+
return {
|
|
51
|
+
noResponseFallbackMs,
|
|
52
|
+
maxRetryAttempts: 3,
|
|
53
|
+
retryBaseDelayMs: 1000,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
function resolveShellConfig(env) {
|
|
57
|
+
const timeoutKillGraceMs = parseMinIntOrDefault(env.AGENT_WORLD_SHELL_TIMEOUT_KILL_GRACE_MS, 2000, 0);
|
|
58
|
+
return {
|
|
59
|
+
timeoutKillGraceMs,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
function resolveStorageConfig(env) {
|
|
63
|
+
const sqliteBusyTimeoutMs = parseInteger(env.AGENT_WORLD_SQLITE_TIMEOUT) ?? 30000;
|
|
64
|
+
return {
|
|
65
|
+
agentLoadRetries: 2,
|
|
66
|
+
agentLoadRetryDelayMs: 75,
|
|
67
|
+
sqliteBusyTimeoutMs,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function resolveLLMConfig() {
|
|
71
|
+
return {
|
|
72
|
+
processingTimeoutMs: 900000,
|
|
73
|
+
warningThresholdRatio: 0.5,
|
|
74
|
+
minProcessingTimeoutMs: 1000,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function resolveWebFetchConfig() {
|
|
78
|
+
return {
|
|
79
|
+
defaultTimeoutMs: 12000,
|
|
80
|
+
maxTimeoutMs: 30000,
|
|
81
|
+
minTimeoutMs: 1000,
|
|
82
|
+
defaultMaxChars: 24000,
|
|
83
|
+
maxMaxChars: 120000,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
export function getReliabilityConfig(env = process.env) {
|
|
87
|
+
return {
|
|
88
|
+
mcp: resolveMCPConfig(env),
|
|
89
|
+
queue: resolveQueueConfig(env),
|
|
90
|
+
shell: resolveShellConfig(env),
|
|
91
|
+
storage: resolveStorageConfig(env),
|
|
92
|
+
llm: resolveLLMConfig(),
|
|
93
|
+
webFetch: resolveWebFetchConfig(),
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
const DEFAULT_CONFIG = getReliabilityConfig();
|
|
97
|
+
export const RELIABILITY_CONFIG = {
|
|
98
|
+
mcp: DEFAULT_CONFIG.mcp,
|
|
99
|
+
queue: DEFAULT_CONFIG.queue,
|
|
100
|
+
storage: DEFAULT_CONFIG.storage,
|
|
101
|
+
llm: DEFAULT_CONFIG.llm,
|
|
102
|
+
webFetch: DEFAULT_CONFIG.webFetch,
|
|
103
|
+
};
|
|
104
|
+
export function getShellTimeoutKillGraceMs() {
|
|
105
|
+
return resolveShellConfig(process.env).timeoutKillGraceMs;
|
|
106
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reliability-config.js","sourceRoot":"","sources":["../../core/reliability-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,SAAS,YAAY,CAAC,KAAyB;IAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAyB,EAAE,QAAgB;IAC5E,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IACnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAyB,EAAE,QAAgB,EAAE,YAAoB;IAC7F,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,GAAG,YAAY;QAAE,OAAO,QAAQ,CAAC;IAC7D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAc;IACtC,MAAM,kBAAkB,GAAG,yBAAyB,CAClD,GAAG,CAAC,oCAAoC,EACxC,IAAI,CACL,CAAC;IACF,MAAM,oBAAoB,GAAG,oBAAoB,CAC/C,GAAG,CAAC,sCAAsC,EAC1C,CAAC,EACD,CAAC,CACF,CAAC;IACF,MAAM,yBAAyB,GAAG,oBAAoB,CACpD,GAAG,CAAC,6CAA6C,EACjD,IAAI,EACJ,CAAC,CACF,CAAC;IAEF,OAAO;QACL,kBAAkB;QAClB,oBAAoB;QACpB,yBAAyB;KACjB,CAAC;AACb,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAc;IACxC,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IAC/E,MAAM,oBAAoB,GAAG,UAAU,IAAI,IAAI,IAAI,UAAU,IAAI,CAAC;QAChE,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAE/B,OAAO;QACL,oBAAoB;QACpB,gBAAgB,EAAE,CAAC;QACnB,gBAAgB,EAAE,IAAI;KACd,CAAC;AACb,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAc;IACxC,MAAM,kBAAkB,GAAG,oBAAoB,CAC7C,GAAG,CAAC,uCAAuC,EAC3C,IAAI,EACJ,CAAC,CACF,CAAC;IAEF,OAAO;QACL,kBAAkB;KACV,CAAC;AACb,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAc;IAC1C,MAAM,mBAAmB,GAAG,YAAY,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,KAAK,CAAC;IAElF,OAAO;QACL,gBAAgB,EAAE,CAAC;QACnB,qBAAqB,EAAE,EAAE;QACzB,mBAAmB;KACX,CAAC;AACb,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO;QACL,mBAAmB,EAAE,MAAM;QAC3B,qBAAqB,EAAE,GAAG;QAC1B,sBAAsB,EAAE,IAAI;KACpB,CAAC;AACb,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO;QACL,gBAAgB,EAAE,KAAK;QACvB,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,WAAW,EAAE,MAAM;KACX,CAAC;AACb,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAiB,OAAO,CAAC,GAAG;IAC/D,OAAO;QACL,GAAG,EAAE,gBAAgB,CAAC,GAAG,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC;QAC9B,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC;QAC9B,OAAO,EAAE,oBAAoB,CAAC,GAAG,CAAC;QAClC,GAAG,EAAE,gBAAgB,EAAE;QACvB,QAAQ,EAAE,qBAAqB,EAAE;KACzB,CAAC;AACb,CAAC;AAED,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,EAAE,cAAc,CAAC,GAAG;IACvB,KAAK,EAAE,cAAc,CAAC,KAAK;IAC3B,OAAO,EAAE,cAAc,CAAC,OAAO;IAC/B,GAAG,EAAE,cAAc,CAAC,GAAG;IACvB,QAAQ,EAAE,cAAc,CAAC,QAAQ;CACzB,CAAC;AAEX,MAAM,UAAU,0BAA0B;IACxC,OAAO,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC;AAC5D,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reliability Runtime Helpers
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Provide shared timeout/retry policy contracts and chat-scoped wait-status emission helpers.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Canonical reliability policy/error-category types.
|
|
9
|
+
* - Chat-scoped per-second system status emitter with immediate first emission.
|
|
10
|
+
* - Automatic elapsed/remaining second computation for bounded waits.
|
|
11
|
+
* - No-op behavior when world/chat context is unavailable.
|
|
12
|
+
*
|
|
13
|
+
* Implementation notes:
|
|
14
|
+
* - Keep helpers dependency-light so runtime boundaries (MCP/queue/LLM/etc.) can reuse them.
|
|
15
|
+
* - Emitter lifecycle is explicit; caller must call `stop()` on completion/error/abort paths.
|
|
16
|
+
*
|
|
17
|
+
* Recent changes:
|
|
18
|
+
* - 2026-03-05: Initial shared reliability contract + wait-status emitter implementation.
|
|
19
|
+
*/
|
|
20
|
+
import type { World } from './types.js';
|
|
21
|
+
export type ReliabilityErrorCategory = 'timeout' | 'retry_exhausted' | 'transport_error';
|
|
22
|
+
export type RetryDelayStrategy = (attempt: number) => number;
|
|
23
|
+
export interface ReliabilityPolicy {
|
|
24
|
+
timeoutMs?: number;
|
|
25
|
+
maxAttempts: number;
|
|
26
|
+
retryDelayMs: RetryDelayStrategy;
|
|
27
|
+
terminalErrorCategory: ReliabilityErrorCategory;
|
|
28
|
+
}
|
|
29
|
+
export interface WaitStatusSnapshot {
|
|
30
|
+
phase: string;
|
|
31
|
+
reason?: string;
|
|
32
|
+
elapsedSeconds: number;
|
|
33
|
+
remainingSeconds: number | null;
|
|
34
|
+
attempt?: number;
|
|
35
|
+
maxAttempts?: number;
|
|
36
|
+
attemptsRemaining?: number;
|
|
37
|
+
}
|
|
38
|
+
type WaitStatusEmitterOptions = {
|
|
39
|
+
world?: World | null;
|
|
40
|
+
chatId?: string | null;
|
|
41
|
+
phase: string;
|
|
42
|
+
reason?: string;
|
|
43
|
+
durationMs?: number | null;
|
|
44
|
+
attempt?: number;
|
|
45
|
+
maxAttempts?: number;
|
|
46
|
+
contentBuilder?: (snapshot: WaitStatusSnapshot) => string;
|
|
47
|
+
};
|
|
48
|
+
export type WaitStatusEmitterHandle = {
|
|
49
|
+
stop: () => void;
|
|
50
|
+
emitNow: () => void;
|
|
51
|
+
};
|
|
52
|
+
export declare function startChatScopedWaitStatusEmitter(options: WaitStatusEmitterOptions): WaitStatusEmitterHandle;
|
|
53
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reliability-runtime.d.ts","sourceRoot":"","sources":["../../core/reliability-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAEzF,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,kBAAkB,CAAC;IACjC,qBAAqB,EAAE,wBAAwB,CAAC;CACjD;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,KAAK,wBAAwB,GAAG;IAC9B,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,MAAM,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAmBF,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,wBAAwB,GAAG,uBAAuB,CAgE3G"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reliability Runtime Helpers
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Provide shared timeout/retry policy contracts and chat-scoped wait-status emission helpers.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Canonical reliability policy/error-category types.
|
|
9
|
+
* - Chat-scoped per-second system status emitter with immediate first emission.
|
|
10
|
+
* - Automatic elapsed/remaining second computation for bounded waits.
|
|
11
|
+
* - No-op behavior when world/chat context is unavailable.
|
|
12
|
+
*
|
|
13
|
+
* Implementation notes:
|
|
14
|
+
* - Keep helpers dependency-light so runtime boundaries (MCP/queue/LLM/etc.) can reuse them.
|
|
15
|
+
* - Emitter lifecycle is explicit; caller must call `stop()` on completion/error/abort paths.
|
|
16
|
+
*
|
|
17
|
+
* Recent changes:
|
|
18
|
+
* - 2026-03-05: Initial shared reliability contract + wait-status emitter implementation.
|
|
19
|
+
*/
|
|
20
|
+
function buildStatusMessageId() {
|
|
21
|
+
return `status-${Date.now()}-${Math.random().toString(36).slice(2, 10)}`;
|
|
22
|
+
}
|
|
23
|
+
function defaultContentBuilder(snapshot) {
|
|
24
|
+
const phaseLabel = snapshot.phase || 'wait';
|
|
25
|
+
const reasonLabel = snapshot.reason ? ` (${snapshot.reason})` : '';
|
|
26
|
+
const attemptLabel = typeof snapshot.attempt === 'number' && typeof snapshot.maxAttempts === 'number'
|
|
27
|
+
? ` attempt ${snapshot.attempt}/${snapshot.maxAttempts}, remaining attempts ${snapshot.attemptsRemaining ?? 0},`
|
|
28
|
+
: '';
|
|
29
|
+
const remainingLabel = snapshot.remainingSeconds == null
|
|
30
|
+
? 'remaining unknown'
|
|
31
|
+
: `remaining ${snapshot.remainingSeconds}s`;
|
|
32
|
+
return `${phaseLabel}${reasonLabel}:` +
|
|
33
|
+
`${attemptLabel} elapsed ${snapshot.elapsedSeconds}s, ${remainingLabel}.`;
|
|
34
|
+
}
|
|
35
|
+
export function startChatScopedWaitStatusEmitter(options) {
|
|
36
|
+
const world = options.world ?? null;
|
|
37
|
+
const scopedChatId = typeof options.chatId === 'string' ? options.chatId.trim() : '';
|
|
38
|
+
if (!world || !scopedChatId) {
|
|
39
|
+
return {
|
|
40
|
+
stop: () => { },
|
|
41
|
+
emitNow: () => { },
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
const startedAt = Date.now();
|
|
45
|
+
const totalMs = typeof options.durationMs === 'number' && options.durationMs >= 0
|
|
46
|
+
? options.durationMs
|
|
47
|
+
: null;
|
|
48
|
+
const maxAttempts = typeof options.maxAttempts === 'number' ? options.maxAttempts : undefined;
|
|
49
|
+
const attempt = typeof options.attempt === 'number' ? options.attempt : undefined;
|
|
50
|
+
const attemptsRemaining = typeof maxAttempts === 'number' && typeof attempt === 'number'
|
|
51
|
+
? Math.max(0, maxAttempts - attempt)
|
|
52
|
+
: undefined;
|
|
53
|
+
let intervalId = null;
|
|
54
|
+
let stopped = false;
|
|
55
|
+
const contentBuilder = options.contentBuilder || defaultContentBuilder;
|
|
56
|
+
const stop = () => {
|
|
57
|
+
if (stopped)
|
|
58
|
+
return;
|
|
59
|
+
stopped = true;
|
|
60
|
+
if (intervalId) {
|
|
61
|
+
clearInterval(intervalId);
|
|
62
|
+
intervalId = null;
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
const emitNow = () => {
|
|
66
|
+
if (stopped)
|
|
67
|
+
return;
|
|
68
|
+
const elapsedMs = Math.max(0, Date.now() - startedAt);
|
|
69
|
+
const elapsedSeconds = Math.floor(elapsedMs / 1000);
|
|
70
|
+
const remainingSeconds = totalMs == null ? null : Math.max(0, Math.ceil((totalMs - elapsedMs) / 1000));
|
|
71
|
+
world.eventEmitter.emit('system', {
|
|
72
|
+
content: contentBuilder({
|
|
73
|
+
phase: options.phase,
|
|
74
|
+
reason: options.reason,
|
|
75
|
+
elapsedSeconds,
|
|
76
|
+
remainingSeconds,
|
|
77
|
+
attempt,
|
|
78
|
+
maxAttempts,
|
|
79
|
+
attemptsRemaining,
|
|
80
|
+
}),
|
|
81
|
+
timestamp: new Date(),
|
|
82
|
+
messageId: buildStatusMessageId(),
|
|
83
|
+
chatId: scopedChatId,
|
|
84
|
+
});
|
|
85
|
+
if (remainingSeconds != null && remainingSeconds <= 0) {
|
|
86
|
+
stop();
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
intervalId = setInterval(emitNow, 1000);
|
|
90
|
+
emitNow();
|
|
91
|
+
return { stop, emitNow };
|
|
92
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reliability-runtime.js","sourceRoot":"","sources":["../../core/reliability-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type GuardrailSeverity = 'low' | 'medium' | 'high';
|
|
2
|
+
export type GuardrailFinding = {
|
|
3
|
+
type: 'pii' | 'jailbreak' | 'restricted-topic';
|
|
4
|
+
reason: string;
|
|
5
|
+
severity: GuardrailSeverity;
|
|
6
|
+
};
|
|
7
|
+
export type GuardrailResult = {
|
|
8
|
+
flagged: boolean;
|
|
9
|
+
blocked: boolean;
|
|
10
|
+
severity: GuardrailSeverity;
|
|
11
|
+
reasons: string[];
|
|
12
|
+
findings: GuardrailFinding[];
|
|
13
|
+
redactedText: string;
|
|
14
|
+
};
|
|
15
|
+
export type GuardrailPolicy = {
|
|
16
|
+
redact: boolean;
|
|
17
|
+
blockOnHighSeverity: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare function checkPII(content: string): GuardrailFinding[];
|
|
20
|
+
export declare function checkJailbreak(content: string, inputs: string): GuardrailFinding[];
|
|
21
|
+
export declare function runGuardrails(content: string, inputs: string, policy?: GuardrailPolicy): GuardrailResult;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guardrails.d.ts","sourceRoot":"","sources":["../../../core/security/guardrails.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAG1D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,KAAK,GAAG,WAAW,GAAG,kBAAkB,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,OAAO,CAAC;IAChB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AAiDF,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAqB5D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAmBlF;AAyBD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,eAA6D,GACpE,eAAe,CAmBjB"}
|