omp-fabric 1.25.6 → 1.25.8
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/CHANGELOG.md +22 -0
- package/README.md +19 -21
- package/dist/audit/projection.d.ts.map +1 -1
- package/dist/chunks/{chunk-HAH64YUG.js → chunk-2C5YN36Y.js} +2 -2
- package/dist/chunks/chunk-2C5YN36Y.js.map +7 -0
- package/dist/chunks/{chunk-3BS4RMF4.js → chunk-AZBJNZS4.js} +2 -2
- package/dist/chunks/{chunk-EZRC24CX.js → chunk-BMSAIMFB.js} +2 -2
- package/dist/chunks/{chunk-63VIZJGS.js → chunk-BWLZ6VDQ.js} +2 -2
- package/dist/chunks/{chunk-BQG4LFAC.js → chunk-D55BFSFK.js} +2 -2
- package/dist/chunks/{chunk-WUPYPFAC.js → chunk-E3KTE736.js} +3 -3
- package/dist/chunks/{chunk-JBKYNJFN.js → chunk-FL4A542C.js} +2 -1
- package/dist/chunks/chunk-FL4A542C.js.map +7 -0
- package/dist/chunks/{chunk-REHGQCXU.js → chunk-J2BDKPO4.js} +4 -4
- package/dist/chunks/{chunk-3KORI7FQ.js → chunk-KLWNXXEI.js} +2 -2
- package/dist/chunks/{chunk-XLINRLLP.js → chunk-PIW2DEO2.js} +4 -4
- package/dist/chunks/{chunk-H3KRHDDF.js → chunk-QJKOPPW2.js} +2 -2
- package/dist/chunks/{chunk-6G25AUGA.js → chunk-UKB5RJDP.js} +4 -4
- package/dist/chunks/chunk-UKB5RJDP.js.map +7 -0
- package/dist/chunks/{chunk-GPJV2FSP.js → chunk-WX6C7N3W.js} +2 -2
- package/dist/chunks/{chunk-ABBGHQVX.js → chunk-YAI5SCIE.js} +2 -2
- package/dist/chunks/{chunk-G3ELO3QC.js → chunk-Z6TTRT6Q.js} +2 -2
- package/dist/compaction/hook.js +3 -3
- package/dist/compaction/lcm-runtime.js +4 -4
- package/dist/core/action-registry.js +2 -2
- package/dist/core/system-guidance.d.ts.map +1 -1
- package/dist/entropy/index.js +5 -5
- package/dist/fabric-runtime-state.js +72 -26
- package/dist/fabric-runtime-state.js.map +2 -2
- package/dist/host-compatibility.d.ts +1 -1
- package/dist/index.js +19 -15
- package/dist/index.js.map +2 -2
- package/dist/memory/discovery.js +4 -4
- package/dist/memory/normalize.js +3 -3
- package/dist/memory/search.js +4 -4
- package/dist/providers/memory-provider.js +6 -6
- package/dist/providers/omp-tools-provider.d.ts.map +1 -1
- package/dist/residency/host.js +6 -6
- package/dist/residency/omp-entry.js +6 -6
- package/dist/runtime/core-override-guest-types.js +1 -1
- package/dist/runtime/guest-types.d.ts +2 -2
- package/dist/runtime/guest-types.d.ts.map +1 -1
- package/dist/runtime/guest-types.js +1 -1
- package/dist/runtime/node-process-runtime.js +1 -1
- package/dist/runtime/quickjs-runtime.d.ts +1 -1
- package/dist/runtime/quickjs-runtime.d.ts.map +1 -1
- package/dist/runtime/quickjs-runtime.js +1 -1
- package/dist/speculation/guest-args.d.ts.map +1 -1
- package/dist/speculation/scanner.js +2 -1
- package/dist/speculation/scanner.js.map +2 -2
- package/dist/type-error-guidance.d.ts.map +1 -1
- package/docs/audit-trace.md +1 -1
- package/docs/certification.md +1 -1
- package/docs/codemap.md +7 -8
- package/docs/configuration.md +1 -1
- package/docs/judgment.md +3 -3
- package/package.json +11 -11
- package/skills/fabric-exec/SKILL.md +4 -4
- package/dist/chunks/chunk-6G25AUGA.js.map +0 -7
- package/dist/chunks/chunk-HAH64YUG.js.map +0 -7
- package/dist/chunks/chunk-JBKYNJFN.js.map +0 -7
- /package/dist/chunks/{chunk-3BS4RMF4.js.map → chunk-AZBJNZS4.js.map} +0 -0
- /package/dist/chunks/{chunk-EZRC24CX.js.map → chunk-BMSAIMFB.js.map} +0 -0
- /package/dist/chunks/{chunk-63VIZJGS.js.map → chunk-BWLZ6VDQ.js.map} +0 -0
- /package/dist/chunks/{chunk-BQG4LFAC.js.map → chunk-D55BFSFK.js.map} +0 -0
- /package/dist/chunks/{chunk-WUPYPFAC.js.map → chunk-E3KTE736.js.map} +0 -0
- /package/dist/chunks/{chunk-REHGQCXU.js.map → chunk-J2BDKPO4.js.map} +0 -0
- /package/dist/chunks/{chunk-3KORI7FQ.js.map → chunk-KLWNXXEI.js.map} +0 -0
- /package/dist/chunks/{chunk-XLINRLLP.js.map → chunk-PIW2DEO2.js.map} +0 -0
- /package/dist/chunks/{chunk-H3KRHDDF.js.map → chunk-QJKOPPW2.js.map} +0 -0
- /package/dist/chunks/{chunk-GPJV2FSP.js.map → chunk-WX6C7N3W.js.map} +0 -0
- /package/dist/chunks/{chunk-ABBGHQVX.js.map → chunk-YAI5SCIE.js.map} +0 -0
- /package/dist/chunks/{chunk-G3ELO3QC.js.map → chunk-Z6TTRT6Q.js.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/audit/projection.ts", "../../src/audit/trace.ts"],
|
|
4
|
+
"sourcesContent": ["import type { FabricTraceJsonValue } from \"./trace.js\";\n\nexport interface FabricAuditProjection {\n value: { [key: string]: FabricTraceJsonValue };\n droppedValues: number;\n}\n\nconst emptyProjection = (args: Record<string, unknown>): FabricAuditProjection => ({\n value: {},\n droppedValues: topLevelKeyCount(args),\n});\n\nconst topLevelKeyCount = (value: Record<string, unknown>): number => {\n try {\n return Object.keys(value).length;\n } catch {\n return 1;\n }\n};\n\nconst finiteNumber = (value: unknown): number | undefined =>\n typeof value === \"number\" && Number.isFinite(value) ? value : undefined;\n\nconst stringValue = (value: unknown): string | undefined =>\n typeof value === \"string\" ? value : undefined;\n\nconst isWindowsDrivePath = (value: string): boolean => {\n if (value.length < 3 || value[1] !== \":\" || (value[2] !== \"\\\\\" && value[2] !== \"/\")) {\n return false;\n }\n const drive = value.charCodeAt(0);\n return (drive >= 65 && drive <= 90) || (drive >= 97 && drive <= 122);\n};\n\nconst localPath = (value: unknown): string | undefined => {\n if (typeof value !== \"string\" || value.includes(\"\\0\")) return undefined;\n if (!isWindowsDrivePath(value)) {\n try {\n // Absolute and network-path URLs are not local file addresses. In\n // particular, never retain URL userinfo or query credentials as a path.\n const absolute = new URL(value);\n if (absolute.protocol) return undefined;\n } catch {\n // Plain relative and absolute filesystem paths are expected to fail URL\n // construction without a base.\n }\n try {\n const based = new URL(value, \"https://fabric.invalid/\");\n if (based.hostname !== \"fabric.invalid\") return undefined;\n } catch {\n return undefined;\n }\n }\n const query = value.indexOf(\"?\");\n const fragment = value.indexOf(\"#\");\n const end = Math.min(\n query < 0 ? value.length : query,\n fragment < 0 ? value.length : fragment,\n );\n return value.slice(0, end) || undefined;\n};\n\nconst copyString = (\n output: Record<string, FabricTraceJsonValue>,\n args: Record<string, unknown>,\n key: string,\n): void => {\n const value = stringValue(args[key]);\n if (value !== undefined) output[key] = value;\n};\n\nconst copyNumber = (\n output: Record<string, FabricTraceJsonValue>,\n args: Record<string, unknown>,\n key: string,\n): void => {\n const value = finiteNumber(args[key]);\n if (value !== undefined) output[key] = value;\n};\n\nconst structuralIdentifier = (value: unknown): string | undefined => {\n if (typeof value !== \"string\" || value.length === 0) return undefined;\n for (let index = 0; index < value.length; index++) {\n const code = value.charCodeAt(index);\n const alphanumeric =\n (code >= 48 && code <= 57) ||\n (code >= 65 && code <= 90) ||\n (code >= 97 && code <= 122);\n if (alphanumeric) continue;\n if (index > 0 && (code === 45 || code === 46 || code === 47 || code === 58 || code === 95)) {\n continue;\n }\n return undefined;\n }\n return value;\n};\n\nconst copyIdentifier = (\n output: Record<string, FabricTraceJsonValue>,\n args: Record<string, unknown>,\n key: string,\n): void => {\n const value = structuralIdentifier(args[key]);\n if (value !== undefined) output[key] = value;\n};\n\nconst copyPath = (\n output: Record<string, FabricTraceJsonValue>,\n args: Record<string, unknown>,\n): void => {\n const value = localPath(args.path);\n if (value !== undefined) output.path = value;\n};\n\nconst projected = (\n args: Record<string, unknown>,\n build: (output: Record<string, FabricTraceJsonValue>) => void,\n): FabricAuditProjection => {\n const value: Record<string, FabricTraceJsonValue> = {};\n try {\n build(value);\n } catch {\n return emptyProjection(args);\n }\n return {\n value,\n droppedValues: Math.max(0, topLevelKeyCount(args) - Object.keys(value).length),\n };\n};\n\nconst idOnlyAgentActions = new Set([\n \"agents.wait\",\n \"agents.status\",\n \"agents.stop\",\n \"agents.cleanup\",\n \"agents.ask\",\n \"agents.tell\",\n \"agents.steer\",\n \"agents.followUp\",\n \"agents.setSteeringMode\",\n \"agents.setFollowUpMode\",\n \"agents.compact\",\n \"agents.actorStatus\",\n \"agents.setModel\",\n \"agents.setThinking\",\n \"agents.setTools\",\n \"agents.setEvents\",\n \"agents.setDeliveryPolicy\",\n \"agents.clearMessages\",\n \"agents.setInstructions\",\n \"agents.messages\",\n \"agents.remove\",\n \"agents.import\",\n \"agents.export\",\n \"agents.log\",\n]);\n\n/**\n * Projects invocation arguments by exact built-in reference. Unknown,\n * extension, MCP, schema, state, compact, and generic provider calls retain no\n * arguments. This allowlist, rather than secret-looking string matching, is\n * the durable trace's primary confidentiality boundary.\n */\nexport const projectFabricAuditArgs = (\n ref: string,\n args: Record<string, unknown>,\n): FabricAuditProjection => {\n switch (ref) {\n case \"fabric.discovery.providers\":\n case \"fabric.discovery.models\":\n case \"fabric.workflow.progress\":\n return emptyProjection(args);\n case \"fabric.approval.auto\":\n return projected(args, (output) => {\n copyIdentifier(output, args, \"action\");\n copyIdentifier(output, args, \"risk\");\n });\n case \"fabric.discovery.catalog\":\n return projected(args, (output) => {\n copyIdentifier(output, args, \"provider\");\n copyNumber(output, args, \"limit\");\n });\n case \"fabric.discovery.list\":\n return projected(args, (output) => {\n copyIdentifier(output, args, \"provider\");\n copyIdentifier(output, args, \"namespace\");\n copyNumber(output, args, \"limit\");\n });\n case \"fabric.discovery.search\":\n return projected(args, (output) => copyNumber(output, args, \"limit\"));\n case \"fabric.discovery.describe\":\n return projected(args, (output) => copyIdentifier(output, args, \"ref\"));\n case \"fabric.workflow.configure\":\n return projected(args, (output) => copyString(output, args, \"name\"));\n case \"agents.switchModel\":\n return projected(args, (output) => {\n copyIdentifier(output, args, \"model\");\n copyIdentifier(output, args, \"provider\");\n });\n case \"fabric.workflow.phase\":\n return projected(args, (output) => {\n copyString(output, args, \"name\");\n copyIdentifier(output, args, \"id\");\n copyNumber(output, args, \"total\");\n });\n case \"fabric.workflow.item\":\n return projected(args, (output) => {\n copyIdentifier(output, args, \"id\");\n copyIdentifier(output, args, \"status\");\n copyIdentifier(output, args, \"phase\");\n copyIdentifier(output, args, \"kind\");\n copyNumber(output, args, \"total\");\n copyNumber(output, args, \"completed\");\n });\n case \"fabric.workflow.event\":\n return projected(args, (output) => copyIdentifier(output, args, \"level\"));\n case \"fabric.workflow.parallel\":\n case \"fabric.workflow.pipeline\":\n return projected(args, (output) => {\n copyIdentifier(output, args, \"kind\");\n copyNumber(output, args, \"itemCount\");\n copyNumber(output, args, \"stageCount\");\n copyNumber(output, args, \"concurrency\");\n });\n case \"omp.read\":\n return projected(args, (output) => {\n copyPath(output, args);\n copyNumber(output, args, \"offset\");\n copyNumber(output, args, \"limit\");\n });\n case \"omp.grep\":\n return projected(args, (output) => {\n copyPath(output, args);\n copyNumber(output, args, \"context\");\n copyNumber(output, args, \"skip\");\n copyNumber(output, args, \"limit\");\n });\n case \"omp.find\":\n case \"omp.ls\":\n return projected(args, (output) => {\n copyPath(output, args);\n copyNumber(output, args, \"limit\");\n });\n case \"omp.edit\":\n case \"omp.write\":\n return projected(args, (output) => copyPath(output, args));\n case \"omp.bash\":\n return projected(args, (output) => copyString(output, args, \"command\"));\n case \"mesh.publish\":\n return projected(args, (output) => {\n copyString(output, args, \"topic\");\n copyString(output, args, \"to\");\n });\n case \"mesh.read\":\n return projected(args, (output) => {\n copyString(output, args, \"topic\");\n copyString(output, args, \"to\");\n copyNumber(output, args, \"after\");\n copyNumber(output, args, \"limit\");\n });\n case \"mesh.get\":\n case \"mesh.put\":\n case \"mesh.delete\":\n return projected(args, (output) => copyString(output, args, \"key\"));\n case \"mesh.list\":\n return projected(args, (output) => {\n copyString(output, args, \"prefix\");\n copyNumber(output, args, \"limit\");\n });\n default:\n if (idOnlyAgentActions.has(ref)) {\n return projected(args, (output) => copyString(output, args, \"id\"));\n }\n return emptyProjection(args);\n }\n};\n\n/**\n * Results are omitted except for the exact boolean creation outcome emitted by\n * omp.write. No provider details or output text accompany that flag.\n */\nexport const projectFabricAuditResult = (\n ref: string,\n result: unknown,\n): FabricAuditProjection | undefined => {\n if (typeof result !== \"object\" || result === null || Array.isArray(result)) {\n return undefined;\n }\n const record = result as Record<string, unknown>;\n if (ref === \"fabric.approval.auto\") {\n return projected(record, (output) => {\n copyIdentifier(output, record, \"action\");\n copyIdentifier(output, record, \"risk\");\n copyIdentifier(output, record, \"decision\");\n copyIdentifier(output, record, \"model\");\n copyNumber(output, record, \"at\");\n });\n }\n if (ref !== \"omp.write\") return undefined;\n const details =\n typeof record.details === \"object\" && record.details !== null && !Array.isArray(record.details)\n ? (record.details as Record<string, unknown>)\n : undefined;\n if (record.created !== true && details?.created !== true) return undefined;\n return {\n value: { created: true },\n droppedValues: Math.max(0, topLevelKeyCount(record) - 1),\n };\n};\n", "import { isOmpShellRef } from \"../core/omp-tools.js\";\nimport { projectFabricAuditArgs, projectFabricAuditResult } from \"./projection.js\";\n\nexport const FABRIC_EXECUTION_TRACE_KIND = \"omp-fabric.execution\" as const;\nexport const FABRIC_EXECUTION_TRACE_VERSION = 1 as const;\nexport const FABRIC_EXECUTION_TRACE_MAX_BYTES = 512 * 1024;\n\nconst MAX_IDENTIFIER_BYTES = 1_024;\nconst MAX_PHASE_BYTES = 1_024;\nconst MAX_STRING_BYTES = 16 * 1024;\nconst MAX_ERROR_BYTES = 8 * 1024;\nconst MAX_ARGS_BYTES = 64 * 1024;\nconst MAX_RESULT_BYTES = 64 * 1024;\nconst MAX_DEPTH = 12;\nconst MAX_KEYS = 128;\nconst MAX_ARRAY_ITEMS = 128;\nconst MAX_NODES = 8_192;\nconst MAX_RECORDED_OPERATIONS = 2_048;\nconst MAX_PHASES = 512;\nexport type FabricTraceJsonPrimitive = string | number | boolean | null;\nexport type FabricTraceJsonValue =\n | FabricTraceJsonPrimitive\n | FabricTraceJsonValue[]\n | { [key: string]: FabricTraceJsonValue };\n\nexport type FabricExecutionOutcomeV1 = \"succeeded\" | \"failed\" | \"aborted\" | \"timed_out\";\nexport type FabricExecutionFailureStageV1 =\n | \"resolve\"\n | \"prepare\"\n | \"validate\"\n | \"approve\"\n | \"invoke\"\n | \"guard\";\n\nexport interface FabricExecutionTraceOperationV1 {\n type: \"call\";\n sequence: number;\n ref: string;\n provider?: string;\n action?: string;\n args: { [key: string]: FabricTraceJsonValue };\n outcome: FabricExecutionOutcomeV1;\n failureStage?: FabricExecutionFailureStageV1;\n error?: string;\n result?: FabricTraceJsonValue;\n resultTruncated?: boolean;\n}\n\nexport interface FabricExecutionTraceCountsV1 {\n droppedValues: number;\n truncatedValues: number;\n redactedValues: number;\n droppedOperations: number;\n}\n\nexport interface FabricExecutionTraceV1 {\n kind: typeof FABRIC_EXECUTION_TRACE_KIND;\n version: typeof FABRIC_EXECUTION_TRACE_VERSION;\n outcome: FabricExecutionOutcomeV1;\n phases: string[];\n operations: FabricExecutionTraceOperationV1[];\n counts: FabricExecutionTraceCountsV1;\n error?: string;\n}\n\ninterface MutableCounts {\n droppedValues: number;\n truncatedValues: number;\n redactedValues: number;\n}\n\ninterface TraceResultMeta {\n resultTruncated?: boolean;\n}\n\ninterface Sanitized<T extends FabricTraceJsonValue> {\n value: T;\n counts: MutableCounts;\n}\n\ninterface MutableOperation {\n type: \"call\";\n sequence: number;\n ref: string;\n projectionRef: string;\n provider?: string;\n action?: string;\n causeSafe?: boolean;\n args: Sanitized<{ [key: string]: FabricTraceJsonValue }>;\n outcome?: FabricExecutionOutcomeV1;\n failureStage?: FabricExecutionFailureStageV1;\n error?: Sanitized<string>;\n result?: Sanitized<FabricTraceJsonValue>;\n resultTruncated?: boolean;\n droppedResultValues: number;\n}\n\nconst DROP = Symbol(\"drop\");\ntype SanitizedNode = FabricTraceJsonValue | typeof DROP;\n\nconst emptyCounts = (): MutableCounts => ({\n droppedValues: 0,\n truncatedValues: 0,\n redactedValues: 0,\n});\n\nconst byteLength = (value: string): number => Buffer.byteLength(value, \"utf8\");\nconst serializedBytes = (value: unknown): number => byteLength(JSON.stringify(value));\n\nconst truncateUtf8 = (value: string, maxBytes: number): string => {\n if (byteLength(value) <= maxBytes) return value;\n const suffix = \"\u2026[truncated]\";\n const available = Math.max(0, maxBytes - byteLength(suffix));\n let low = 0;\n let high = value.length;\n while (low < high) {\n const middle = Math.ceil((low + high) / 2);\n if (byteLength(value.slice(0, middle)) <= available) low = middle;\n else high = middle - 1;\n }\n return `${value.slice(0, low)}${suffix}`;\n};\n\nconst truncateUtf8Middle = (value: string, maxBytes: number): string => {\n if (byteLength(value) <= maxBytes) return value;\n const marker = \"\\n\u2026[truncated]\\n\";\n const available = Math.max(0, maxBytes - byteLength(marker));\n const headBytes = Math.floor(available / 2);\n const tailBytes = available - headBytes;\n const head = truncateUtf8(value, headBytes + byteLength(\"\u2026[truncated]\"))\n .replace(/\u2026\\[truncated\\]$/, \"\");\n let tailStart = value.length;\n while (tailStart > 0 && byteLength(value.slice(tailStart - 1)) <= tailBytes) tailStart--;\n return `${head}${marker}${value.slice(tailStart)}`;\n};\n\nconst boundedIdentifier = (value: string, maxBytes = MAX_IDENTIFIER_BYTES): string =>\n truncateUtf8(value, maxBytes);\n\nconst normalizedKey = (key: string): string => key.toLowerCase().replaceAll(/[^a-z0-9]/g, \"\");\n\nconst isSensitiveKey = (key: string): boolean => {\n const normalized = normalizedKey(key);\n return [\n \"password\",\n \"passwd\",\n \"secret\",\n \"token\",\n \"accesstoken\",\n \"refreshtoken\",\n \"authorization\",\n \"cookie\",\n \"credential\",\n \"credentials\",\n \"apikey\",\n \"privatekey\",\n \"clientsecret\",\n ].some((sensitive) => normalized === sensitive || normalized.endsWith(sensitive));\n};\n\nconst isMediaKey = (key: string): boolean =>\n [\"media\", \"image\", \"images\", \"audio\", \"video\", \"base64\"].includes(normalizedKey(key));\n\nconst isMediaObject = (value: Record<string, unknown>): boolean => {\n if (value.type === \"image\" || value.type === \"audio\" || value.type === \"video\") return true;\n const mimeType = value.mimeType ?? value.mime_type;\n return (\n typeof mimeType === \"string\" &&\n (mimeType.startsWith(\"image/\") || mimeType.startsWith(\"audio/\") || mimeType.startsWith(\"video/\"))\n );\n};\n\nconst looksLikeBase64 = (value: string): boolean => {\n if (value.startsWith(\"data:\") && value.includes(\";base64,\")) return true;\n if (value.length < 1_024 || value.length % 4 !== 0) return false;\n for (let index = 0; index < value.length; index++) {\n const code = value.charCodeAt(index);\n const valid =\n (code >= 65 && code <= 90) ||\n (code >= 97 && code <= 122) ||\n (code >= 48 && code <= 57) ||\n code === 43 ||\n code === 47 ||\n code === 61 ||\n code === 10 ||\n code === 13;\n if (!valid) return false;\n }\n return true;\n};\n\nconst sanitize = (input: unknown, maxBytes: number): Sanitized<FabricTraceJsonValue> => {\n const counts = emptyCounts();\n const ancestors = new Set<object>();\n let nodes = 0;\n\n const visit = (value: unknown, depth: number, key?: string): SanitizedNode => {\n nodes++;\n if (nodes > MAX_NODES) {\n counts.droppedValues++;\n return DROP;\n }\n if (key !== undefined && isSensitiveKey(key)) {\n counts.redactedValues++;\n return \"[REDACTED]\";\n }\n if (key !== undefined && isMediaKey(key)) {\n counts.droppedValues++;\n return DROP;\n }\n if (value === null || typeof value === \"boolean\") return value;\n if (typeof value === \"number\") {\n if (Number.isFinite(value)) return value;\n counts.truncatedValues++;\n return `[non-finite:${String(value)}]`;\n }\n if (typeof value === \"string\") {\n if (looksLikeBase64(value)) {\n counts.droppedValues++;\n return \"[OMITTED_BASE64]\";\n }\n const bounded = truncateUtf8(value, MAX_STRING_BYTES);\n if (bounded !== value) counts.truncatedValues++;\n return bounded;\n }\n if (typeof value === \"bigint\") {\n counts.truncatedValues++;\n return `${String(value)}n`;\n }\n if (typeof value === \"undefined\" || typeof value === \"function\" || typeof value === \"symbol\") {\n counts.droppedValues++;\n return DROP;\n }\n if (typeof value !== \"object\") {\n counts.droppedValues++;\n return DROP;\n }\n if (depth >= MAX_DEPTH) {\n counts.truncatedValues++;\n return \"[MAX_DEPTH]\";\n }\n if (ancestors.has(value)) {\n counts.droppedValues++;\n return \"[CIRCULAR]\";\n }\n const record = value as Record<string, unknown>;\n if (!Array.isArray(value) && isMediaObject(record)) {\n counts.droppedValues++;\n return \"[OMITTED_MEDIA]\";\n }\n ancestors.add(value);\n if (Array.isArray(value)) {\n const output: FabricTraceJsonValue[] = [];\n const limit = Math.min(value.length, MAX_ARRAY_ITEMS);\n for (let index = 0; index < limit; index++) {\n const item = visit(value[index], depth + 1);\n output.push(item === DROP ? \"[DROPPED]\" : item);\n }\n if (value.length > limit) {\n counts.droppedValues += value.length - limit;\n counts.truncatedValues++;\n }\n ancestors.delete(value);\n return output;\n }\n const output: { [key: string]: FabricTraceJsonValue } = {};\n const keys = Object.keys(record).sort();\n const limit = Math.min(keys.length, MAX_KEYS);\n for (let index = 0; index < limit; index++) {\n const childKey = keys[index]!;\n const child = visit(record[childKey], depth + 1, childKey);\n if (child !== DROP) output[childKey] = child;\n }\n if (keys.length > limit) {\n counts.droppedValues += keys.length - limit;\n counts.truncatedValues++;\n }\n ancestors.delete(value);\n return output;\n };\n\n let value = visit(input, 0);\n if (value === DROP) value = \"[DROPPED]\";\n const originalBytes = serializedBytes(value);\n if (originalBytes > maxBytes) {\n counts.truncatedValues++;\n if (Array.isArray(value)) {\n const output: FabricTraceJsonValue[] = [];\n for (const item of value) {\n const next = [...output, item];\n if (serializedBytes(next) > maxBytes - 128) break;\n output.push(item);\n }\n counts.droppedValues += value.length - output.length;\n value = output;\n } else if (typeof value === \"object\" && value !== null) {\n const output: { [key: string]: FabricTraceJsonValue } = {};\n const entries = Object.entries(value);\n let included = 0;\n for (const [childKey, child] of entries) {\n const next = { ...output, [childKey]: child };\n if (serializedBytes(next) > maxBytes - 128) break;\n output[childKey] = child;\n included++;\n }\n counts.droppedValues += entries.length - included;\n value = output;\n }\n }\n return { value, counts };\n};\n\nconst sanitizeObject = (\n value: Record<string, unknown>,\n droppedValues = 0,\n): Sanitized<{ [key: string]: FabricTraceJsonValue }> => {\n const sanitized = sanitize(value, MAX_ARGS_BYTES);\n sanitized.counts.droppedValues += droppedValues;\n if (typeof sanitized.value === \"object\" && sanitized.value !== null && !Array.isArray(sanitized.value)) {\n return sanitized as Sanitized<{ [key: string]: FabricTraceJsonValue }>;\n }\n sanitized.counts.droppedValues++;\n return { value: {}, counts: sanitized.counts };\n};\n\nconst projectedArgs = (\n ref: string,\n args: Record<string, unknown>,\n): Sanitized<{ [key: string]: FabricTraceJsonValue }> => {\n const projection = projectFabricAuditArgs(ref, args);\n return sanitizeObject(projection.value, projection.droppedValues);\n};\n\nconst sanitizeString = (value: string, maxBytes: number): Sanitized<string> => {\n const bounded = truncateUtf8(value, maxBytes);\n return {\n value: bounded,\n counts: {\n ...emptyCounts(),\n truncatedValues: bounded === value ? 0 : 1,\n },\n };\n};\n\nconst addCounts = (target: FabricExecutionTraceCountsV1, source: MutableCounts): void => {\n target.droppedValues += source.droppedValues;\n target.truncatedValues += source.truncatedValues;\n target.redactedValues += source.redactedValues;\n};\n\nconst lexicalIdentity = (ref: string): { provider?: string; action?: string } => {\n const separator = ref.indexOf(\".\");\n if (separator <= 0 || separator === ref.length - 1) return {};\n return {\n provider: ref.slice(0, separator),\n action: ref.slice(separator + 1),\n };\n};\n\n// Errors whose messages contain no tool output, argument payloads, or\n// user/source text and are safe to quote verbatim in durable traces: registry\n// resolution failures, policy denials, and Fabric-generated guard messages.\nexport class FabricTraceSafeError extends Error {}\n\n// Thrown by the registry when a provider or action cannot be resolved.\nexport class FabricResolutionError extends FabricTraceSafeError {}\n\nconst errorCause = (error: unknown): string | undefined => {\n const message = error instanceof Error ? error.message : typeof error === \"string\" ? error : undefined;\n const trimmed = message?.trim();\n return trimmed ? truncateUtf8Middle(trimmed, MAX_ERROR_BYTES - 256) : undefined;\n};\n\nconst failureMessage = (\n stage: FabricExecutionFailureStageV1,\n outcome: FabricExecutionOutcomeV1,\n cause?: string,\n): string => {\n if (outcome === \"timed_out\") return \"Call timed out\";\n if (outcome === \"aborted\") return \"Call aborted\";\n const summary = `Call failed during ${stage}`;\n return cause ? `${summary}: ${cause}` : summary;\n};\n\nconst executionErrorMessage = (outcome: FabricExecutionOutcomeV1): string | undefined => {\n if (outcome === \"succeeded\") return undefined;\n if (outcome === \"timed_out\") return \"Execution timed out\";\n if (outcome === \"aborted\") return \"Execution aborted\";\n return \"Execution failed\";\n};\n\nexport class FabricExecutionTraceOperationHandle {\n constructor(\n private readonly recorder: FabricExecutionTraceRecorder,\n private readonly operation: MutableOperation | undefined,\n ) {}\n\n resolved(provider: string, action: string): void {\n if (!this.operation || this.recorder.sealed) return;\n const boundedProvider = boundedIdentifier(provider);\n const boundedAction = boundedIdentifier(action);\n if (this.operation.provider !== boundedProvider) {\n this.operation.provider = this.recorder.snapshotIdentifier(provider);\n }\n if (this.operation.action !== boundedAction) {\n this.operation.action = this.recorder.snapshotIdentifier(action);\n }\n }\n\n prepared(args: Record<string, unknown>): void {\n if (!this.operation || this.recorder.sealed) return;\n this.operation.args = projectedArgs(this.operation.projectionRef, args);\n }\n\n succeed(result: unknown, meta?: TraceResultMeta): void {\n if (!this.operation || this.recorder.sealed) return;\n const projected = projectFabricAuditResult(this.operation.projectionRef, result);\n if (projected !== undefined) {\n this.operation.result = sanitize(projected.value, MAX_RESULT_BYTES);\n this.operation.result.counts.droppedValues += projected.droppedValues;\n } else if (result !== undefined) {\n this.operation.droppedResultValues++;\n }\n this.operation.outcome = \"succeeded\";\n if (meta?.resultTruncated === true) this.operation.resultTruncated = true;\n }\n\n fail(\n stage: FabricExecutionFailureStageV1,\n error: unknown,\n outcome: FabricExecutionOutcomeV1 = \"failed\",\n result?: unknown,\n meta?: TraceResultMeta,\n ): void {\n if (!this.operation || this.recorder.sealed) return;\n this.operation.failureStage = stage;\n if (error instanceof FabricTraceSafeError) this.operation.causeSafe = true;\n const cause =\n outcome === \"failed\" &&\n (this.operation.causeSafe === true ||\n (isOmpShellRef(this.operation.projectionRef) && stage === \"invoke\"))\n ? errorCause(error)\n : undefined;\n this.operation.error = sanitizeString(\n failureMessage(stage, outcome, cause),\n MAX_ERROR_BYTES,\n );\n this.operation.outcome = outcome;\n if (meta?.resultTruncated === true) this.operation.resultTruncated = true;\n const projected = projectFabricAuditResult(this.operation.projectionRef, result);\n if (projected !== undefined) {\n this.operation.result = sanitize(projected.value, MAX_RESULT_BYTES);\n this.operation.result.counts.droppedValues += projected.droppedValues;\n } else if (result !== undefined) {\n this.operation.droppedResultValues++;\n }\n }\n}\n\nexport class FabricExecutionTraceRecorder {\n readonly #operations: MutableOperation[] = [];\n #nextSequence = 0;\n #droppedOperations = 0;\n #truncatedIdentifiers = 0;\n sealed = false;\n\n snapshotIdentifier(value: string, maxBytes = MAX_IDENTIFIER_BYTES): string {\n const bounded = boundedIdentifier(value, maxBytes);\n if (bounded !== value) this.#truncatedIdentifiers++;\n return bounded;\n }\n\n issueCall(ref: string, args: Record<string, unknown>): FabricExecutionTraceOperationHandle {\n const sequence = this.#nextSequence++;\n if (this.sealed || this.#operations.length >= MAX_RECORDED_OPERATIONS) {\n this.#droppedOperations++;\n return new FabricExecutionTraceOperationHandle(this, undefined);\n }\n const identity = lexicalIdentity(ref);\n const operation: MutableOperation = {\n type: \"call\",\n sequence,\n ref: this.snapshotIdentifier(ref),\n projectionRef: ref,\n ...(identity.provider ? { provider: this.snapshotIdentifier(identity.provider) } : {}),\n ...(identity.action ? { action: this.snapshotIdentifier(identity.action) } : {}),\n args: projectedArgs(ref, args),\n droppedResultValues: 0,\n };\n this.#operations.push(operation);\n return new FabricExecutionTraceOperationHandle(this, operation);\n }\n\n // safeError must contain no guest source text, tool output, or argument\n // payloads \u2014 callers pass it only for Fabric-generated failure summaries\n // (for example the type-check stage). Guest and provider error text is\n // deliberately not persisted here.\n seal(\n outcome: FabricExecutionOutcomeV1,\n phases: readonly string[],\n safeError?: string,\n ): FabricExecutionTraceV1 {\n this.sealed = true;\n for (const operation of this.#operations) {\n if (!operation.outcome) {\n operation.outcome = outcome === \"timed_out\" ? \"timed_out\" : outcome === \"aborted\" ? \"aborted\" : \"failed\";\n operation.failureStage ??= \"invoke\";\n } else if (operation.outcome === \"aborted\" && outcome === \"timed_out\") {\n // Host calls observe an aborted bridge signal for both cancellation and\n // deadline expiry. The runtime's typed final termination is\n // authoritative when sealing the durable operation.\n operation.outcome = \"timed_out\";\n }\n if (operation.outcome !== \"succeeded\") {\n const preserveCause =\n operation.error !== undefined &&\n (operation.causeSafe === true ||\n (isOmpShellRef(operation.projectionRef) && operation.outcome === \"failed\"));\n if (!preserveCause) {\n operation.error = sanitizeString(\n failureMessage(operation.failureStage ?? \"invoke\", operation.outcome),\n MAX_ERROR_BYTES,\n );\n }\n }\n }\n\n const counts: FabricExecutionTraceCountsV1 = {\n droppedValues: 0,\n truncatedValues: this.#truncatedIdentifiers,\n redactedValues: 0,\n droppedOperations: this.#droppedOperations,\n };\n const operations = this.#operations.map((operation): FabricExecutionTraceOperationV1 => {\n addCounts(counts, operation.args.counts);\n counts.droppedValues += operation.droppedResultValues;\n if (operation.error) addCounts(counts, operation.error.counts);\n if (operation.result) addCounts(counts, operation.result.counts);\n return {\n type: \"call\",\n sequence: operation.sequence,\n ref: operation.ref,\n ...(operation.provider ? { provider: operation.provider } : {}),\n ...(operation.action ? { action: operation.action } : {}),\n args: operation.args.value,\n outcome: operation.outcome!,\n ...(operation.failureStage ? { failureStage: operation.failureStage } : {}),\n ...(operation.error ? { error: operation.error.value } : {}),\n ...(operation.result ? { result: operation.result.value } : {}),\n ...(operation.resultTruncated === true ? { resultTruncated: true as const } : {}),\n };\n });\n const boundedPhases = phases.slice(0, MAX_PHASES).map((phase) => {\n const bounded = boundedIdentifier(phase, MAX_PHASE_BYTES);\n if (bounded !== phase) counts.truncatedValues++;\n return bounded;\n });\n if (phases.length > boundedPhases.length) {\n counts.droppedValues += phases.length - boundedPhases.length;\n counts.truncatedValues++;\n }\n const safeRunError = safeError?.trim() || executionErrorMessage(outcome);\n const runError = safeRunError ? sanitizeString(safeRunError, MAX_ERROR_BYTES) : undefined;\n if (runError) addCounts(counts, runError.counts);\n const trace: FabricExecutionTraceV1 = {\n kind: FABRIC_EXECUTION_TRACE_KIND,\n version: FABRIC_EXECUTION_TRACE_VERSION,\n outcome,\n phases: boundedPhases,\n operations,\n counts,\n ...(runError ? { error: runError.value } : {}),\n };\n\n let traceBytes = serializedBytes(trace);\n const adjustMutation = (\n beforeValueBytes: number,\n afterValueBytes: number,\n beforeCountsBytes: number,\n ): void => {\n traceBytes +=\n afterValueBytes -\n beforeValueBytes +\n serializedBytes(trace.counts) -\n beforeCountsBytes;\n };\n for (\n let index = trace.operations.length - 1;\n traceBytes > FABRIC_EXECUTION_TRACE_MAX_BYTES && index >= 0;\n index--\n ) {\n const operation = trace.operations[index]!;\n if (operation.result === undefined) continue;\n const beforeOperationBytes = serializedBytes(operation);\n const beforeCountsBytes = serializedBytes(trace.counts);\n delete operation.result;\n trace.counts.droppedValues++;\n adjustMutation(\n beforeOperationBytes,\n serializedBytes(operation),\n beforeCountsBytes,\n );\n }\n for (\n let index = trace.operations.length - 1;\n traceBytes > FABRIC_EXECUTION_TRACE_MAX_BYTES && index >= 0;\n index--\n ) {\n const operation = trace.operations[index]!;\n if (Object.keys(operation.args).length === 0) continue;\n const beforeOperationBytes = serializedBytes(operation);\n const beforeCountsBytes = serializedBytes(trace.counts);\n operation.args = {};\n trace.counts.droppedValues++;\n trace.counts.truncatedValues++;\n adjustMutation(\n beforeOperationBytes,\n serializedBytes(operation),\n beforeCountsBytes,\n );\n }\n while (traceBytes > FABRIC_EXECUTION_TRACE_MAX_BYTES && trace.operations.length > 0) {\n const beforeCountsBytes = serializedBytes(trace.counts);\n const operation = trace.operations.pop()!;\n traceBytes -= serializedBytes(operation);\n if (trace.operations.length > 0) traceBytes--;\n trace.counts.droppedOperations++;\n traceBytes += serializedBytes(trace.counts) - beforeCountsBytes;\n }\n while (traceBytes > FABRIC_EXECUTION_TRACE_MAX_BYTES && trace.phases.length > 0) {\n const beforeCountsBytes = serializedBytes(trace.counts);\n const phase = trace.phases.pop()!;\n traceBytes -= serializedBytes(phase);\n if (trace.phases.length > 0) traceBytes--;\n trace.counts.droppedValues++;\n traceBytes += serializedBytes(trace.counts) - beforeCountsBytes;\n }\n return trace;\n }\n}\n\nexport const executionOutcomeFromError = (\n error: unknown,\n signal?: AbortSignal,\n): FabricExecutionOutcomeV1 => {\n if (signal?.aborted) return \"aborted\";\n return error === undefined ? \"succeeded\" : \"failed\";\n};\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n typeof value === \"object\" && value !== null && !Array.isArray(value);\n\nconst hasOnlyKeys = (value: Record<string, unknown>, keys: readonly string[]): boolean =>\n Object.keys(value).every((key) => keys.includes(key));\n\nconst outcomes = new Set<FabricExecutionOutcomeV1>([\"succeeded\", \"failed\", \"aborted\", \"timed_out\"]);\nconst stages = new Set<FabricExecutionFailureStageV1>([\"resolve\", \"prepare\", \"validate\", \"approve\", \"invoke\", \"guard\"]);\n\nconst isJsonValue = (value: unknown, ancestors = new Set<object>(), depth = 0): value is FabricTraceJsonValue => {\n if (value === null || typeof value === \"string\" || typeof value === \"boolean\") return true;\n if (typeof value === \"number\") return Number.isFinite(value);\n if (typeof value !== \"object\" || depth > MAX_DEPTH + 2 || ancestors.has(value)) return false;\n ancestors.add(value);\n const valid = Array.isArray(value)\n ? value.every((item) => isJsonValue(item, ancestors, depth + 1))\n : Object.values(value as Record<string, unknown>).every((item) => isJsonValue(item, ancestors, depth + 1));\n ancestors.delete(value);\n return valid;\n};\n\nconst isFabricExecutionTraceOperationV1Unchecked = (\n value: unknown,\n): value is FabricExecutionTraceOperationV1 => {\n if (!isRecord(value)) return false;\n if (!hasOnlyKeys(value, [\"type\", \"sequence\", \"ref\", \"provider\", \"action\", \"args\", \"outcome\", \"failureStage\", \"error\", \"result\", \"resultTruncated\"])) return false;\n if (value.type !== \"call\" || !Number.isSafeInteger(value.sequence) || (value.sequence as number) < 0) return false;\n if (typeof value.ref !== \"string\" || !isRecord(value.args) || !isJsonValue(value.args)) return false;\n if (!outcomes.has(value.outcome as FabricExecutionOutcomeV1)) return false;\n if (value.provider !== undefined && typeof value.provider !== \"string\") return false;\n if (value.action !== undefined && typeof value.action !== \"string\") return false;\n if (value.failureStage !== undefined && !stages.has(value.failureStage as FabricExecutionFailureStageV1)) return false;\n if (value.error !== undefined && typeof value.error !== \"string\") return false;\n if (value.resultTruncated !== undefined && typeof value.resultTruncated !== \"boolean\") return false;\n return value.result === undefined || isJsonValue(value.result);\n};\n\nexport const isFabricExecutionTraceOperationV1 = (\n value: unknown,\n): value is FabricExecutionTraceOperationV1 => {\n try {\n return isFabricExecutionTraceOperationV1Unchecked(value);\n } catch {\n return false;\n }\n};\n\nconst isFabricExecutionTraceV1Unchecked = (value: unknown): value is FabricExecutionTraceV1 => {\n if (!isRecord(value)) return false;\n if (!hasOnlyKeys(value, [\"kind\", \"version\", \"outcome\", \"phases\", \"operations\", \"counts\", \"error\"])) return false;\n if (value.kind !== FABRIC_EXECUTION_TRACE_KIND || value.version !== FABRIC_EXECUTION_TRACE_VERSION) return false;\n if (!outcomes.has(value.outcome as FabricExecutionOutcomeV1)) return false;\n if (!Array.isArray(value.phases) || !value.phases.every((phase) => typeof phase === \"string\")) return false;\n if (!Array.isArray(value.operations) || !value.operations.every(isFabricExecutionTraceOperationV1)) return false;\n if (!isRecord(value.counts) || !hasOnlyKeys(value.counts, [\"droppedValues\", \"truncatedValues\", \"redactedValues\", \"droppedOperations\"])) return false;\n const counts = value.counts;\n if (![\"droppedValues\", \"truncatedValues\", \"redactedValues\", \"droppedOperations\"].every((key) => Number.isSafeInteger(counts[key]) && (counts[key] as number) >= 0)) return false;\n if (value.error !== undefined && typeof value.error !== \"string\") return false;\n for (let index = 1; index < value.operations.length; index++) {\n if (value.operations[index]!.sequence <= value.operations[index - 1]!.sequence) return false;\n }\n return serializedBytes(value) <= FABRIC_EXECUTION_TRACE_MAX_BYTES;\n};\n\nexport const isFabricExecutionTraceV1 = (value: unknown): value is FabricExecutionTraceV1 => {\n try {\n return isFabricExecutionTraceV1Unchecked(value);\n } catch {\n return false;\n }\n};\n\nexport const readFabricExecutionTraceV1 = (value: unknown): FabricExecutionTraceV1 | undefined =>\n isFabricExecutionTraceV1(value) ? value : undefined;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["value", "output", "limit", "projected"]
|
|
7
|
+
}
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
loadTieredIndex,
|
|
9
9
|
reconstructSessionLineage,
|
|
10
10
|
searchMemoryIndex
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-BWLZ6VDQ.js";
|
|
12
12
|
import {
|
|
13
13
|
compareLexical,
|
|
14
14
|
normalizeMemoryPhrase,
|
|
@@ -23,11 +23,11 @@ import {
|
|
|
23
23
|
overrideSessionDir,
|
|
24
24
|
resolveScope,
|
|
25
25
|
resolveSessionTarget
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-WX6C7N3W.js";
|
|
27
27
|
import {
|
|
28
28
|
expandSessionEntriesChecked,
|
|
29
29
|
normalizeSession
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-Z6TTRT6Q.js";
|
|
31
31
|
import {
|
|
32
32
|
hash,
|
|
33
33
|
hashLcmPayload,
|
|
@@ -2569,4 +2569,4 @@ export {
|
|
|
2569
2569
|
normalizeMemoryArgs,
|
|
2570
2570
|
MemoryProvider
|
|
2571
2571
|
};
|
|
2572
|
-
//# sourceMappingURL=chunk-
|
|
2572
|
+
//# sourceMappingURL=chunk-J2BDKPO4.js.map
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
FabricResolutionError,
|
|
21
21
|
FabricTraceSafeError,
|
|
22
22
|
executionOutcomeFromError
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-FL4A542C.js";
|
|
24
24
|
|
|
25
25
|
// src/core/action-registry.ts
|
|
26
26
|
import { randomUUID as randomUUID2 } from "node:crypto";
|
|
@@ -1613,4 +1613,4 @@ export {
|
|
|
1613
1613
|
NESTED_TOOL_CALL_ID_PREFIX,
|
|
1614
1614
|
ActionRegistry
|
|
1615
1615
|
};
|
|
1616
|
-
//# sourceMappingURL=chunk-
|
|
1616
|
+
//# sourceMappingURL=chunk-KLWNXXEI.js.map
|
|
@@ -6,19 +6,19 @@ import {
|
|
|
6
6
|
} from "./chunk-WQUMHDOS.js";
|
|
7
7
|
import {
|
|
8
8
|
NESTED_TOOL_CALL_ID_PREFIX
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-KLWNXXEI.js";
|
|
10
10
|
import {
|
|
11
11
|
THINKING_DIGEST_CUSTOM_TYPE,
|
|
12
12
|
buildThinkingDigest,
|
|
13
13
|
snapshotHandoffSession,
|
|
14
14
|
thinkingTransferPolicy
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-QJKOPPW2.js";
|
|
16
16
|
import {
|
|
17
17
|
isFabricThinking
|
|
18
18
|
} from "./chunk-SKYNDRW5.js";
|
|
19
19
|
import {
|
|
20
20
|
FabricTraceSafeError
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-FL4A542C.js";
|
|
22
22
|
|
|
23
23
|
// src/capture/wrapper.ts
|
|
24
24
|
var wrapToolDefinition = (definition, ctxFactory) => {
|
|
@@ -2810,4 +2810,4 @@ export {
|
|
|
2810
2810
|
resolveFabricIdentity,
|
|
2811
2811
|
MainAgentController
|
|
2812
2812
|
};
|
|
2813
|
-
//# sourceMappingURL=chunk-
|
|
2813
|
+
//# sourceMappingURL=chunk-PIW2DEO2.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-ZHDN5ESL.js";
|
|
7
7
|
import {
|
|
8
8
|
rawContextTokens
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-D55BFSFK.js";
|
|
10
10
|
import {
|
|
11
11
|
compactionRequestBoundsError,
|
|
12
12
|
encodeCompactionRequest
|
|
@@ -463,4 +463,4 @@ export {
|
|
|
463
463
|
buildPeerCards,
|
|
464
464
|
awaitPeerSettle
|
|
465
465
|
};
|
|
466
|
-
//# sourceMappingURL=chunk-
|
|
466
|
+
//# sourceMappingURL=chunk-QJKOPPW2.js.map
|
|
@@ -13,7 +13,7 @@ var OMP_CORE_NUMERIC_FIELDS = {
|
|
|
13
13
|
bash: ["timeout"],
|
|
14
14
|
edit: [],
|
|
15
15
|
write: [],
|
|
16
|
-
grep: ["context", "skip"],
|
|
16
|
+
grep: ["context", "skip", "limit"],
|
|
17
17
|
find: ["limit"],
|
|
18
18
|
ls: ["limit"]
|
|
19
19
|
};
|
|
@@ -458,10 +458,10 @@ type OmpShellOptions = {
|
|
|
458
458
|
timeout?: number; timeoutMs?: number; settle?: boolean;
|
|
459
459
|
async?: boolean;
|
|
460
460
|
cwd?: string; workdir?: string; directory?: string; workingDirectory?: string;
|
|
461
|
-
|
|
461
|
+
pty?: boolean;
|
|
462
462
|
};
|
|
463
463
|
type OmpBashOptions = OmpShellOptions;
|
|
464
|
-
type OmpGrepOptions = { path?: string; glob?: string; globPattern?: string; ignoreCase?: boolean; ic?: boolean; caseInsensitive?: boolean; literal?: boolean; context?: number; ctx?: number; skip?: number; gitignore?: boolean };
|
|
464
|
+
type OmpGrepOptions = { path?: string; glob?: string; globPattern?: string; ignoreCase?: boolean; ic?: boolean; caseInsensitive?: boolean; literal?: boolean; context?: number; ctx?: number; skip?: number; limit?: number; gitignore?: boolean };
|
|
465
465
|
type OmpFindOptions = { path?: string; limit?: number; max?: number; gitignore?: boolean; hidden?: boolean };
|
|
466
466
|
type OmpLsOptions = { limit?: number; max?: number };
|
|
467
467
|
type OmpReadArgument = string | (OmpPathArgument & OmpReadOptions);
|
|
@@ -1555,4 +1555,4 @@ export {
|
|
|
1555
1555
|
GUEST_TYPE_DECLARATIONS,
|
|
1556
1556
|
guestTypeDeclarations
|
|
1557
1557
|
};
|
|
1558
|
-
//# sourceMappingURL=chunk-
|
|
1558
|
+
//# sourceMappingURL=chunk-UKB5RJDP.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/runtime/guest-types.ts"],
|
|
4
|
+
"sourcesContent": ["import type { FabricDynamicGuestDeclarations } from \"../protocol.js\";\n\n// These names and compatibility fields are the single source of truth for\n// generated core-override overloads. Keep them beside OmpToolsApi below so an\n// override extends the same guest contract rather than copying its signatures.\n// Numeric fields widen to `number | string` in generated overloads too,\n// mirroring built-in runtime normalization; a strict override schema still\n// rejects the string form at validation time, and the registry error wins.\nexport const OMP_CORE_COMPATIBILITY_ARGUMENT_TYPE_NAMES = {\n read: \"OmpReadCompatibilityArgument\",\n bash: \"OmpBashCompatibilityArgument\",\n edit: \"OmpEditCompatibilityArgument\",\n write: \"OmpWriteCompatibilityArgument\",\n grep: \"OmpGrepCompatibilityArgument\",\n find: \"OmpFindCompatibilityArgument\",\n ls: \"OmpLsCompatibilityArgument\",\n} as const;\n\nexport const OMP_CORE_NUMERIC_FIELDS = {\n read: [\"offset\", \"limit\"],\n bash: [\"timeout\"],\n edit: [],\n write: [],\n grep: [\"context\", \"skip\", \"limit\"],\n find: [\"limit\"],\n ls: [\"limit\"],\n} as const;\n\nexport const GUEST_TYPE_DECLARATIONS = `\ntype JsonPrimitive = string | number | boolean | null;\ntype JsonValue = JsonPrimitive | JsonValue[] | { [key: string]: JsonValue };\ntype FabricTransport = \"auto\" | \"process\" | \"tmux\" | \"screen\" | \"localterm\" | \"herdr\";\ntype FabricAgentRunner = \"omp\" | \"claude\" | \"veda\";\ntype FabricThinking = \"off\" | \"minimal\" | \"low\" | \"medium\" | \"high\" | \"xhigh\" | \"max\";\ninterface FabricActionEffect {\n kind: \"none\" | \"scoped\" | \"transactional\" | \"emission\";\n resources?: string[];\n ordering?: \"commutative\" | \"ordered\" | \"unknown\";\n}\ninterface FabricAction {\n ref: string;\n provider: string;\n name: string;\n description: string;\n inputSchema: Record<string, unknown>;\n outputSchema?: Record<string, unknown>;\n risk: \"read\" | \"write\" | \"execute\" | \"network\" | \"agent\";\n namespace?: string;\n effect?: FabricActionEffect;\n}\ninterface FabricImageContent {\n type: \"image\";\n data: string;\n mimeType: string;\n}\ninterface FabricAgentRequest {\n task: string;\n images?: FabricImageContent[];\n name?: string;\n runner?: FabricAgentRunner;\n transport?: FabricTransport;\n model?: string;\n persona?: string;\n thinking?: FabricThinking;\n tools?: string[];\n addTools?: string[];\n timeoutMs?: number;\n extensions?: boolean;\n recursive?: boolean;\n /** Filesystem execution directory; relative paths resolve from the parent agent cwd. */\n cwd?: string;\n worktree?: boolean;\n schema?: Record<string, unknown>;\n prompt?: string;\n instructions?: string;\n timeout_ms?: number;\n residency?: FabricParticipantResidency;\n}\ninterface FabricHandoffCall {\n readonly ref: string;\n}\ninterface FabricHandoffFacts {\n readonly calls: readonly FabricHandoffCall[];\n count(ref?: string | readonly string[]): number;\n}\ntype FabricHandoffPredicate = (facts: Readonly<FabricHandoffFacts>) => boolean;\ninterface FabricHandoffRequest {\n model: string;\n task?: string;\n when?: FabricHandoffPredicate;\n name?: string;\n transport?: FabricTransport;\n thinking?: FabricThinking;\n tools?: string[];\n timeoutMs?: number;\n extensions?: boolean;\n recursive?: boolean;\n schema?: Record<string, unknown>;\n prompt?: string;\n instructions?: string;\n timeout_ms?: number;\n}\ninterface FabricHandoffResult {\n scheduled: true;\n status: \"deferred\";\n boundary: \"fabric_exec_end\";\n}\ninterface FabricMainAgentInfo {\n id: string;\n name: \"Main\";\n kind: \"main\";\n status: \"idle\" | \"running\" | \"remote\";\n runner: \"omp\";\n transport: \"host\";\n cwd?: string;\n sessionId?: string;\n model?: string;\n thinking?: string;\n startedAt?: number;\n updatedAt: number;\n pendingMessages: boolean;\n local: boolean;\n}\ninterface FabricPeerInfo {\n id: string;\n name: string;\n kind: \"peer\";\n status: \"idle\" | \"running\";\n runner: \"omp\";\n transport: \"host\";\n cwd: string;\n sessionId: string;\n model?: string;\n thinking?: string;\n startedAt: number;\n updatedAt: number;\n pendingMessages: boolean;\n local: false;\n}\ntype FabricParticipantKind = \"root\" | \"agent\" | \"actor\";\ntype FabricParticipantResidency = \"session\" | \"durable\";\ntype FabricParticipantScope = \"local\" | \"lineage\" | \"project\";\ntype FabricParticipantCapability = \"steer\" | \"followUp\" | \"stop\" | \"ask\" | \"actor-bindings\" | \"attach\" | \"fabric\";\ninterface FabricParticipantInfo {\n format: 1;\n id: string;\n kind: FabricParticipantKind;\n rootId: string;\n ownerHostId: string;\n ownerIdentityId: string;\n parentId?: string;\n name: string;\n status: string;\n runner: FabricAgentRunner;\n transport: FabricTransport | \"host\";\n capabilities: FabricParticipantCapability[];\n cwd?: string;\n sessionId?: string;\n model?: string;\n thinking?: string;\n startedAt: number;\n updatedAt: number;\n finishedAt?: number;\n pendingMessages?: boolean;\n currentTool?: string;\n turns?: number;\n toolCalls?: number;\n usage?: { input: number; output: number; cacheRead: number; cacheWrite: number; cost: number };\n actorQueued?: number;\n actorMessages?: number;\n controlProtocol: \"v1\" | \"legacy\";\n residency: FabricParticipantResidency;\n local: boolean;\n stale: boolean;\n}\ntype FabricLifecycleEventType =\n | \"omp.input\"\n | \"omp.agent_start\"\n | \"omp.agent_end\"\n | \"omp.turn_end\"\n | \"omp.tool_error\"\n | \"omp.session_compact\"\n | \"run.completed\"\n | \"run.failed\"\n | \"run.stopped\"\n | \"run.timed_out\"\n | \"tokens.usage\"\n | \"component.state\";\ntype FabricLifecycleDelivery = \"steer\" | \"followUp\";\ninterface FabricLifecycleSource {\n id: string;\n name: string;\n kind: FabricParticipantKind;\n rootId: string;\n runner: FabricAgentRunner;\n ownerHostId?: string;\n ownerIdentityId?: string;\n}\ninterface FabricLifecycleEvent {\n version: 1;\n id: string;\n sequence: number;\n event: FabricLifecycleEventType;\n source: FabricLifecycleSource;\n occurredAt: number;\n publishedAt: number;\n runId?: string;\n status?: string;\n data?: unknown;\n}\ninterface FabricLifecycleSubscription {\n format: 1;\n id: string;\n from: string;\n events: FabricLifecycleEventType[];\n to: string;\n delivery: FabricLifecycleDelivery;\n triggerTurn: boolean;\n once: boolean;\n afterSequence: number;\n createdAt: number;\n updatedAt: number;\n createdBy: { id: string; name: string; kind: \"main\" | \"agent\" | \"actor\"; sessionId?: string };\n lastDeliveredAt?: number;\n lastEventId?: string;\n lastError?: string;\n}\ninterface FabricAgentHandle {\n id: string;\n name: string;\n status: string;\n runner: FabricAgentRunner;\n transport: FabricTransport;\n cwd: string;\n model?: string;\n thinking?: FabricThinking;\n actorId?: string;\n actorName?: string;\n sessionId?: string;\n runnerSessionId?: string;\n attachCommand?: string;\n branch?: string;\n worktree?: string;\n text?: string;\n value?: unknown;\n error?: string;\n logFile?: string;\n residency?: FabricParticipantResidency;\n}\ninterface FabricRemoteControlResult {\n queued: true;\n messageId: string;\n routed: \"mesh\";\n acknowledged: true;\n}\ninterface FabricAgentResult extends FabricAgentHandle {\n task: string;\n startedAt: number;\n finishedAt?: number;\n turns: number;\n toolCalls: number;\n text: string;\n value?: unknown;\n error?: string;\n usage: { input: number; output: number; cacheRead: number; cacheWrite: number; cost: number };\n pendingMessages?: { steering: string[]; followUp: string[] };\n}\ninterface FabricModelInfo {\n runner?: FabricAgentRunner;\n provider: string;\n id: string;\n name: string;\n key: string;\n value?: string;\n resolvedModel?: string;\n displayName?: string;\n description?: string;\n supportsEffort?: boolean;\n supportedEffortLevels?: string[];\n supportsAdaptiveThinking?: boolean;\n supportsFastMode?: boolean;\n supportsAutoMode?: boolean;\n}\ninterface FabricLogLine {\n index?: number;\n offset: number;\n raw: string;\n parsed?: unknown;\n}\ninterface FabricAgentLog {\n id: string;\n runDirectory: string;\n logFile: string;\n status?: FabricAgentResult;\n events: FabricLogLine[];\n hasMore: boolean;\n before?: number;\n}\ninterface FabricActorLog {\n actorId: string;\n actorName: string;\n sessionFile: string;\n logDir: string;\n session: FabricLogLine[];\n sessionHasMore: boolean;\n sessionBefore?: number;\n run?: {\n runId: string;\n eventsFile: string;\n status?: FabricAgentResult;\n events: FabricLogLine[];\n hasMore: boolean;\n before?: number;\n };\n retainedRuns: string[];\n}\ninterface FabricCapabilityActionHead {\n key: string;\n parentKey: string;\n ref: string;\n name: string;\n description: string;\n descriptorHash: string;\n risk: \"read\" | \"write\" | \"execute\" | \"network\" | \"agent\";\n namespace?: string;\n effect?: FabricActionEffect;\n}\ninterface FabricCapabilityProviderHead {\n key: string;\n parentKey: string;\n name: string;\n description: string;\n descriptorHash: string;\n actions: FabricCapabilityActionHead[];\n}\ninterface FabricCapabilityCatalog {\n kind: \"omp-fabric.capability-catalog\";\n version: 1;\n root: {\n key: \"capability:fabric\";\n name: \"Fabric capabilities\";\n description: string;\n descriptorHash: string;\n };\n providers: FabricCapabilityProviderHead[];\n totalActions: number;\n indexedActions: number;\n complete: boolean;\n reasons: string[];\n}\ninterface FabricToolsApi {\n providers(): Promise<Array<{ name: string; description: string }>>;\n catalog(args?: { provider?: string; limit?: number }): Promise<FabricCapabilityCatalog>;\n list(args?: { provider?: string; namespace?: string; query?: string; limit?: number }): Promise<FabricAction[]>;\n search(query: string): Promise<FabricAction[]>;\n search(args: { query: string; limit?: number }): Promise<FabricAction[]>;\n describe(args: { ref: string }): Promise<FabricAction>;\n call(args: { ref: string; args?: Record<string, unknown> }): Promise<unknown>;\n progress(args: { message: string }): Promise<void>;\n models(): Promise<FabricModelInfo[]>;\n}\ninterface FabricCapturedToolResult {\n content: Array<{ type: string; text?: string; [key: string]: unknown }>;\n text: string;\n details?: unknown;\n isError: boolean;\n terminate?: boolean;\n source: { path: string; source: string; scope: string; origin: string; baseDir?: string };\n}\ninterface FabricCapturedTool {\n (args?: Record<string, unknown>): Promise<FabricCapturedToolResult>;\n}\ntype FabricExtensionsApi = Record<string, FabricCapturedTool>;\n// String-primary tools (read/bash/grep/find/ls) accept a bare string; the\n// runtime proxy coerces it to { <primaryField>: string }. Lets the model write\n// the natural form (omp.bash(\"ls\")) instead of omp.bash({ command: \"ls\" }).\n// Return shapes differ by tool: read/grep/find/ls return their text as a bare\n// string (e.g. const src: string = await omp.read({ path })); shell/edit/write\n// return { ok, output, details } (e.g. const { output } = await omp.bash(...)).\n// Common alias keys (cmd\u2192command, query\u2192pattern, file\u2192path, dir\u2192path) and a\n// flat edit shape ({ path, oldText, newText }) are also accepted; the runtime\n// proxy normalizes them to the canonical form before the host validates args.\n// Bash timeout is measured in seconds; timeoutMs is converted from milliseconds.\n// Extended near-miss repairs: find's name/filename/glob \u2192 pattern, write's\n// data \u2192 content, ls's folder \u2192 path, bash's script \u2192 command; numeric option\n// fields (limit/offset/context/timeout) also accept numeric strings, coerced\n// at runtime (2322 diagnostics are suppressed by the type-checker by design).\n// String-primary tools also take a two-arg (primary, options) form \u2014\n// omp.read(\"index.ts\", { limit: 120 }) merges to { path, ...options } at\n// runtime, the positional string winning the primary field on conflict.\n// shell/edit/write envelopes are proxy-guarded so string-method access\n// (.trim(), .split(), iteration) fails with an actionable TypeError pointing\n// at .output instead of QuickJS's context-free \"not a function\" \u2014 property-\n// miss (2339) checks are suppressed by design, so the runtime gives the hint.\ntype OmpPathArgument = {\n path?: string;\n file?: string;\n absolutePath?: string;\n file_path?: string;\n filePath?: string;\n filepath?: string;\n pathname?: string;\n target_file?: string;\n targetFile?: string;\n absolute_path?: string;\n fileAbsolutePath?: string;\n};\ntype OmpOptionalPathArgument = {\n path?: string;\n file?: string;\n absolutePath?: string;\n file_path?: string;\n filePath?: string;\n filepath?: string;\n pathname?: string;\n target_file?: string;\n targetFile?: string;\n absolute_path?: string;\n fileAbsolutePath?: string;\n dir?: string;\n folder?: string;\n directory?: string;\n directoryPath?: string;\n};\ntype OmpOldTextArgument = {\n oldText?: string;\n old?: string;\n old_string?: string;\n oldString?: string;\n old_str?: string;\n oldStr?: string;\n from?: string;\n old_value?: string;\n old_text?: string;\n oldContent?: string;\n old_content?: string;\n};\ntype OmpNewTextArgument = {\n newText?: string;\n new?: string;\n replacement?: string;\n new_string?: string;\n newString?: string;\n new_str?: string;\n newStr?: string;\n to?: string;\n new_value?: string;\n new_text?: string;\n newContent?: string;\n new_content?: string;\n};\ntype OmpEditOperation = OmpOldTextArgument & OmpNewTextArgument & { all?: boolean };\ntype OmpCommandArgument = { command?: string; cmd?: string; shell?: string; cmdline?: string; script?: string; commandLine?: string };\ntype OmpContentArgument = { content?: string; contents?: string; body?: string; text?: string; data?: string; fileContent?: string };\ntype OmpGrepPatternArgument = { pattern?: string; query?: string; regex?: string; search?: string; q?: string; expression?: string; text?: string };\ntype OmpFindPatternArgument = { pattern?: string; query?: string; regex?: string; search?: string; name?: string; filename?: string; glob?: string; expression?: string; include?: string };\n// Two-arg (primary, options) bags for the string-primary tools. Only option\n// aliases belong here (max/start/ctx/ic/...), never primary-field aliases \u2014\n// the primary field comes from the positional string.\ntype OmpReadOptions = { offset?: number; limit?: number; start?: number; max?: number };\n// cwd is honored per call by the omp provider, which binds the command to a\n// shell definition rooted there; relative paths resolve from the session cwd.\n// The alias spellings mirror the shell entries in __ompArgAliases: the\n// runtime repairs them, so the checker has to accept the same spellings or a\n// repairable call is rejected before it ever reaches the sandbox.\ntype OmpShellOptions = {\n timeout?: number; timeoutMs?: number; settle?: boolean;\n async?: boolean;\n cwd?: string; workdir?: string; directory?: string; workingDirectory?: string;\n pty?: boolean;\n};\ntype OmpBashOptions = OmpShellOptions;\ntype OmpGrepOptions = { path?: string; glob?: string; globPattern?: string; ignoreCase?: boolean; ic?: boolean; caseInsensitive?: boolean; literal?: boolean; context?: number; ctx?: number; skip?: number; limit?: number; gitignore?: boolean };\ntype OmpFindOptions = { path?: string; limit?: number; max?: number; gitignore?: boolean; hidden?: boolean };\ntype OmpLsOptions = { limit?: number; max?: number };\ntype OmpReadArgument = string | (OmpPathArgument & OmpReadOptions);\ntype OmpBashArgument = string | (OmpCommandArgument & OmpBashOptions);\ntype OmpEditFlatArgument = OmpPathArgument & OmpOldTextArgument & OmpNewTextArgument & { all?: boolean };\ntype OmpEditArgument = OmpPathArgument & ({ edits: OmpEditOperation[]; all?: boolean } | OmpEditFlatArgument);\ntype OmpWriteArgument = string | (OmpPathArgument & OmpContentArgument);\ntype OmpGrepArgument = string | (OmpGrepPatternArgument & OmpGrepOptions);\ntype OmpFindArgument = string | (OmpFindPatternArgument & OmpFindOptions);\ntype OmpLsArgument = string | (OmpOptionalPathArgument & OmpLsOptions);\ntype OmpNumericString<T> = T extends number ? T | string : T;\ntype OmpNumericStringOptions<T> = { [K in keyof T]: OmpNumericString<T[K]> };\ntype OmpReadCompatibilityArgument = string | (OmpPathArgument & OmpNumericStringOptions<OmpReadOptions>);\ntype OmpBashCompatibilityArgument = string | (OmpCommandArgument & OmpNumericStringOptions<OmpBashOptions>);\ntype OmpEditCompatibilityArgument = OmpEditFlatArgument;\ntype OmpWriteCompatibilityArgument = OmpWriteArgument;\ntype OmpGrepCompatibilityArgument = string | (OmpGrepPatternArgument & OmpNumericStringOptions<OmpGrepOptions>);\ntype OmpFindCompatibilityArgument = string | (OmpFindPatternArgument & OmpNumericStringOptions<OmpFindOptions>);\ntype OmpLsCompatibilityArgument = string | (OmpOptionalPathArgument & OmpNumericStringOptions<OmpLsOptions>);\ninterface OmpToolsApi {\n read(args: OmpReadArgument, options?: OmpReadOptions): Promise<string>;\n bash(args: OmpBashArgument, options?: OmpBashOptions): Promise<{ ok: true; output: string; details: unknown } | { ok: false; output: string; details: null; exitCode: number; error: string }>;\n edit(args: OmpEditArgument): Promise<{ ok: true; output: string; details: unknown }>;\n edit(path: string, oldText: string, newText: string): Promise<{ ok: true; output: string; details: unknown }>;\n write(args: OmpWriteArgument): Promise<{ ok: true; output: string; details: unknown }>;\n write(path: string, content: string): Promise<{ ok: true; output: string; details: unknown }>;\n grep(args: OmpGrepArgument): Promise<string>;\n grep(pattern: string, path?: string | OmpGrepOptions, skip?: number): Promise<string>;\n find(args: OmpFindArgument): Promise<string>;\n find(pattern: string, path?: string | OmpFindOptions, limit?: number): Promise<string>;\n ls(args?: OmpLsArgument, options?: OmpLsOptions): Promise<string>;\n wait(): Promise<{ ok: true; output: string; details: unknown } | { ok: false; output: string; details: null; exitCode: number; error: string }>;\n}\ntype FabricActorHostEvent =\n | \"resources_discover\"\n | \"session_start\"\n | \"session_before_switch\"\n | \"session_switch\"\n | \"session_before_branch\"\n | \"session_branch\"\n | \"session_before_compact\"\n | \"session.compacting\"\n | \"session_compact\"\n | \"session_shutdown\"\n | \"session_before_tree\"\n | \"session_tree\"\n | \"goal_updated\"\n | \"input\"\n | \"before_agent_start\"\n | \"agent_start\"\n | \"agent_end\"\n | \"session_stop\"\n | \"turn_start\"\n | \"turn_end\"\n | \"message_start\"\n | \"message_update\"\n | \"message_end\"\n | \"context\"\n | \"before_provider_request\"\n | \"after_provider_response\"\n | \"tool_execution_start\"\n | \"tool_call\"\n | \"tool_execution_update\"\n | \"tool_result\"\n | \"tool_execution_end\"\n | \"user_bash\"\n | \"tool_error\";\ntype FabricActorDelivery = \"mailbox\" | \"steer\" | \"followUp\" | \"nextTurn\";\ninterface FabricActorHostMediaDescriptor {\n readonly type: \"image\";\n readonly mediaIndex: number;\n readonly mimeType: string;\n}\ninterface FabricActorHostSignal {\n readonly payload: unknown;\n readonly media?: readonly FabricActorHostMediaDescriptor[];\n readonly idle: boolean;\n readonly observedAt: number;\n}\ntype FabricActorActivation =\n | { readonly kind: \"hostEvent\"; readonly id: string; readonly source: string; readonly sequence: number; readonly createdAt: number; readonly event: FabricActorHostEvent; readonly mainRevision: number; readonly taskRevision: number; readonly signal?: FabricActorHostSignal }\n | { readonly kind: \"direct\"; readonly id: string; readonly source: string; readonly sequence: number; readonly createdAt: number }\n | { readonly kind: \"mesh\"; readonly id: string; readonly source: string; readonly sequence: number; readonly createdAt: number; readonly topic: string };\ninterface FabricActorValidityFacts {\n readonly activation: Readonly<FabricActorActivation>;\n readonly current: Readonly<{ latestActivationSequence: number; mainRevision: number; taskRevision: number; idle: boolean; now: number }>;\n}\ntype FabricActorValidityDecision = boolean | { valid: boolean; reason?: string };\ntype FabricActorBindingScope = \"session\" | \"project\";\ninterface FabricActorRunBinding { model?: string; thinking?: FabricThinking }\ntype FabricActorValidWhile = (facts: Readonly<FabricActorValidityFacts>) => FabricActorValidityDecision;\ninterface FabricActorRequestBase {\n scope?: \"session\" | \"project\" | \"global\";\n name: string;\n instructions: string;\n events?: FabricActorHostEvent[];\n topics?: string[];\n responseMode?: \"text\" | \"directive\";\n coalesce?: boolean;\n runner?: FabricAgentRunner;\n model?: string;\n thinking?: FabricThinking;\n tools?: string[];\n transport?: FabricTransport;\n cwd?: string;\n timeoutMs?: number;\n timeout_ms?: number;\n extensions?: boolean;\n requires?: Array<string | { ref: string; optional?: boolean }>;\n validWhile?: FabricActorValidWhile;\n residency?: FabricParticipantResidency;\n}\ntype FabricActorRequest = FabricActorRequestBase & (\n | { delivery?: \"mailbox\"; triggerTurn?: false }\n | { delivery: \"nextTurn\"; triggerTurn?: false }\n | { delivery: \"steer\" | \"followUp\"; triggerTurn: boolean }\n);\ninterface FabricActorInfo {\n id: string;\n scope: \"session\" | \"project\";\n name: string;\n status: \"idle\" | \"queued\" | \"running\" | \"stopped\";\n runner: FabricAgentRunner;\n events: FabricActorHostEvent[];\n topics: string[];\n delivery: FabricActorDelivery;\n responseMode: \"text\" | \"directive\";\n triggerTurn: boolean;\n coalesce: boolean;\n model?: string;\n thinking?: FabricThinking;\n binding?: FabricActorRunBinding & { scope: \"session\"; sessionId: string; updatedAt?: number };\n projectDefaults?: FabricActorRunBinding & { scope: \"project\" };\n tools?: string[];\n timeoutMs?: number;\n extensions?: boolean;\n requirements?: Array<{ ref: string; optional?: boolean }>;\n capabilityDigest?: string;\n missingCapabilities?: string[];\n validWhile?: { version: 1; source: string };\n residency: FabricParticipantResidency;\n queued: number;\n messages: number;\n createdAt: number;\n updatedAt: number;\n lastRunId?: string;\n lastError?: string;\n sessionFile?: string;\n logDir?: string;\n}\ninterface FabricModelSwitchRequest {\n /** provider/id, a models.aliases name, or a search term; resolution tries aliases first, then exact matches, then the closest fuzzy match (recency from pi-model-sort breaks ties) against authenticated models. */\n model: string;\n /** Optional provider filter applied before matching (e.g. \"anthropic\"). */\n provider?: string;\n}\ninterface FabricModelSwitchResult {\n switched: boolean;\n /** Active model as provider/id after the call (unchanged when reason is \"already-active\"). */\n model: string;\n name?: string;\n /** Previously active provider/id when known. Absent for already-active results. */\n previous?: string;\n /** Set when the selector resolved through a configured models.aliases name. */\n alias?: string;\n /** How the selector resolved: the alias name, or one of closest/recent/latest for inexact picks. Absent for exact provider/id or bare-id matches. */\n via?: string;\n reason?: \"already-active\";\n}\ninterface FabricActorMessage {\n id: string;\n actorId: string;\n actorName: string;\n direction: \"in\" | \"out\";\n source: string;\n createdAt: number;\n text?: string;\n data?: unknown;\n action?: \"silent\" | \"message\" | \"stop\";\n runId?: string;\n error?: string;\n stale?: boolean;\n reason?: string;\n}\n// agentId/agent_id spellings repair to id during agent arg normalization.\ntype FabricAgentTargetArgs = { id: string; agentId?: string; agent_id?: string };\ninterface FabricAgentsApi {\n run(args: FabricAgentRequest): Promise<FabricAgentResult>;\n handoff(args: FabricHandoffRequest): Promise<FabricHandoffResult>;\n spawn(args: FabricAgentRequest): Promise<FabricAgentHandle>;\n wait(args: FabricAgentTargetArgs): Promise<FabricAgentResult>;\n status(args: FabricAgentTargetArgs): Promise<FabricAgentResult | FabricAgentHandle | FabricMainAgentInfo | FabricActorInfo | FabricParticipantInfo>;\n list(args?: { scope?: FabricParticipantScope }): Promise<Array<FabricAgentResult | FabricAgentHandle | FabricParticipantInfo>>;\n members(args?: { scope?: FabricParticipantScope; kinds?: FabricParticipantKind[]; includeStale?: boolean }): Promise<FabricParticipantInfo[]>;\n self(): Promise<FabricParticipantInfo>;\n main(): Promise<FabricMainAgentInfo>;\n sessions(): Promise<FabricParticipantInfo[]>;\n peers(): Promise<FabricPeerInfo[]>;\n subscribe(args: {\n from: string;\n events: FabricLifecycleEventType[];\n to?: string;\n delivery: FabricLifecycleDelivery;\n triggerTurn: boolean;\n once?: boolean;\n }): Promise<FabricLifecycleSubscription>;\n subscriptions(args?: { from?: string; to?: string }): Promise<FabricLifecycleSubscription[]>;\n unsubscribe(args: FabricAgentTargetArgs): Promise<{ removed: boolean }>;\n models(args?: { runner?: FabricAgentRunner; refresh?: boolean }): Promise<FabricModelInfo[]>;\n stop(args: FabricAgentTargetArgs): Promise<FabricAgentResult | FabricActorInfo | FabricRemoteControlResult>;\n cleanup(args: FabricAgentTargetArgs & { deleteBranch?: boolean; delete_branch?: boolean }): Promise<{ cleaned: boolean }>;\n create(args: FabricActorRequest): Promise<FabricActorInfo>;\n setModel(args: { id: string; model?: string; scope?: FabricActorBindingScope }): Promise<FabricActorInfo>;\n switchModel(args: FabricModelSwitchRequest): Promise<FabricModelSwitchResult>;\n setThinking(args: { id: string; thinking?: FabricThinking; scope?: FabricActorBindingScope }): Promise<FabricActorInfo>;\n setTools(args: { id: string; tools: string[]; scope?: \"project\" | \"global\" }): Promise<FabricActorInfo>;\n setEvents(args: { id: string; events: FabricActorHostEvent[] }): Promise<FabricActorInfo>;\n setDeliveryPolicy(args: {\n id: string;\n delivery: FabricActorDelivery;\n triggerTurn: boolean;\n scope?: \"project\" | \"global\";\n }): Promise<FabricActorInfo>;\n setInstructions(args: {\n id: string;\n instructions: string;\n scope?: \"project\" | \"global\";\n }): Promise<FabricActorInfo>;\n ask(args: { id: string; message: string; data?: unknown; model?: string; thinking?: FabricThinking }): Promise<FabricActorMessage>;\n tell(args: { id: string; message: string; data?: unknown; model?: string; thinking?: FabricThinking }): Promise<{ queued: true; messageId: string }>;\n steer(args: { id: string; message: string; data?: unknown }): Promise<{ queued: true; messageId: string; routed?: \"local\" | \"main\" | \"mesh\"; acknowledged?: boolean }>;\n followUp(args: { id: string; message: string; data?: unknown }): Promise<{ queued: true; messageId: string; routed?: \"local\" | \"main\" | \"mesh\"; acknowledged?: boolean }>;\n setSteeringMode(args: { id: string; mode: \"all\" | \"one-at-a-time\" }): Promise<{ queued: true; messageId: string }>;\n setFollowUpMode(args: { id: string; mode: \"all\" | \"one-at-a-time\" }): Promise<{ queued: true; messageId: string }>;\n actorStatus(args: FabricAgentTargetArgs): Promise<FabricActorInfo>;\n actors(): Promise<FabricActorInfo[]>;\n messages(args: { id: string; limit?: number }): Promise<FabricActorMessage[]>;\n remove(args: { id: string }): Promise<{ removed: boolean }>;\n log(args: {\n id: string;\n type?: \"session\" | \"run\" | \"all\";\n lines?: number;\n before?: number;\n runId?: string;\n }): Promise<FabricActorLog | FabricAgentLog>;\n}\ninterface FabricMcpResult {\n text: string;\n content: unknown[];\n structuredContent: unknown;\n}\ninterface FabricMcpTool {\n (args?: Record<string, unknown>): Promise<FabricMcpResult | unknown>;\n}\ninterface FabricMcpServer {\n [tool: string]: FabricMcpTool;\n}\n// Management verbs stay members of mcp even when the declare line below is\n// replaced by generated per-server declarations (see the dynamic option on\n// guestTypeDeclarations), so generated surfaces intersect with this type\n// rather than re-declaring them.\ninterface FabricMcpManagement {\n servers(): Promise<Array<{ name: string; description: string | null; transport: \"http\" | \"stdio\" }>>;\n reload(): Promise<{ servers: string[] }>;\n register(args: {\n name: string;\n description?: string;\n command?: string;\n args?: string[];\n cwd?: string;\n baseUrl?: string;\n headers?: Record<string, string>;\n env?: Record<string, string>;\n overwrite?: boolean;\n }): Promise<{ registered: string }>;\n call(args: { server: string; tool: string; args?: Record<string, unknown>; timeoutMs?: number }): Promise<unknown>;\n}\n// Loose static surface: any server/tool name compiles and argument shapes are\n// enforced at dispatch by the registry. With descriptor data available the\n// execution service replaces the declare-const-mcp line below with a\n// schema-typed rendering of the live cache (runtime/dynamic-guest-types.ts).\ntype FabricMcpApi = Record<string, FabricMcpServer> & FabricMcpManagement;\ninterface FabricCouncilRunOptions {\n task: string;\n roles: string[];\n runner?: FabricAgentRunner;\n transport?: FabricTransport;\n model?: string;\n thinking?: FabricThinking;\n tools?: string[];\n timeoutMs?: number;\n /** Filesystem execution directory; relative paths resolve from the parent agent cwd. */\n cwd?: string;\n worktree?: boolean;\n}\ninterface FabricCouncilApi {\n run(args: FabricCouncilRunOptions & { synthesize?: true }): Promise<FabricAgentResult>;\n run(args: FabricCouncilRunOptions & { synthesize: false }): Promise<FabricAgentResult[]>;\n}\ninterface FabricMeshIdentity {\n id: string;\n name: string;\n kind: \"main\" | \"actor\" | \"agent\";\n sessionId?: string;\n}\ninterface FabricMeshEvent {\n id: string;\n sequence: number;\n topic: string;\n kind: string;\n from: FabricMeshIdentity;\n to?: string;\n text?: string;\n data?: unknown;\n createdAt: number;\n}\ninterface FabricMeshStateEntry<T = unknown> {\n key: string;\n value: T;\n version: number;\n updatedAt: number;\n updatedBy: FabricMeshIdentity;\n}\ninterface FabricMeshApi {\n self(): Promise<FabricMeshIdentity>;\n publish(args: { topic: string; kind?: string; to?: string; text?: string; data?: unknown; message?: string; body?: string }): Promise<FabricMeshEvent>;\n read(args?: { after?: number; topic?: string; to?: string; limit?: number; max?: number }): Promise<FabricMeshEvent[]>;\n members(args: { scope?: FabricParticipantScope; kinds?: FabricParticipantKind[]; includeStale?: boolean; limit?: number; max?: number; include_stale?: boolean; withTotal: true }): Promise<{ members: FabricParticipantInfo[]; total: number; truncated: boolean }>;\n members(args?: { scope?: FabricParticipantScope; kinds?: FabricParticipantKind[]; includeStale?: boolean; limit?: number; max?: number; include_stale?: boolean; withTotal?: false }): Promise<FabricParticipantInfo[]>;\n get<T = unknown>(args: { key: string }): Promise<FabricMeshStateEntry<T> | null>;\n list<T = unknown>(args: { prefix?: string; limit?: number; max?: number; withTotal: true }): Promise<{ entries: Array<FabricMeshStateEntry<T>>; total: number; truncated: boolean }>;\n list<T = unknown>(args?: { prefix?: string; limit?: number; max?: number; withTotal?: false }): Promise<Array<FabricMeshStateEntry<T>>>;\n put<T = unknown>(args: { key: string; value: T; ifVersion?: number; if_version?: number; version?: number }): Promise<FabricMeshStateEntry<T>>;\n delete(args: { key: string; ifVersion?: number; if_version?: number; version?: number }): Promise<{ deleted: boolean; version?: number }>;\n}\n// Stable-provider argument bags declare the canonical keys plus the\n// near-miss spellings repaired during argument normalization\n// (providers/arg-normalization.ts and each provider's per-action table). The\n// registry's prepare stage repairs aliases before schema validation, so a\n// call spelled with an alias typechecks instead of tripping the\n// excess-property check; the canonical key wins on conflict, and anything\n// else fails additionalProperties:false validation with the offending\n// property path named. Keep these spillover fields in sync with the provider\n// normalization tables.\ntype FabricMemoryBranches = \"active\" | \"all\";\ntype FabricMemoryQueryMode = \"literal\" | \"phrase\" | \"regex\";\ntype FabricMemoryQueryMatch = \"all\" | \"any\";\ninterface FabricMemoryEntryRange {\n first: number;\n last: number;\n}\ninterface FabricMemoryRecallArgs {\n query?: string;\n queryMode?: FabricMemoryQueryMode;\n queryMatch?: FabricMemoryQueryMatch;\n expectedSourceHash?: string;\n expectedLineageFingerprint?: string;\n branches?: FabricMemoryBranches;\n scope?: string;\n offset?: number;\n pageSize?: number;\n snippetChars?: number;\n role?: string;\n tool?: string;\n ref?: string;\n provider?: string;\n action?: string;\n outcome?: \"succeeded\" | \"failed\" | \"aborted\" | \"timed_out\";\n since?: number;\n until?: number;\n entryRange?: FabricMemoryEntryRange;\n q?: string;\n limit?: number;\n max?: number;\n page_size?: number;\n snippet_chars?: number;\n query_mode?: FabricMemoryQueryMode;\n query_match?: FabricMemoryQueryMatch;\n entry_range?: FabricMemoryEntryRange;\n}\ninterface FabricMemoryExpandArgs {\n session: string;\n expectedSourceHash?: string;\n expectedLineageFingerprint?: string;\n branches?: FabricMemoryBranches;\n indices?: number[];\n entryIds?: string[];\n operationAddresses?: string[];\n entryRange?: FabricMemoryEntryRange;\n before?: number;\n after?: number;\n entryOffset?: number;\n textOffset?: number;\n maxChars?: number;\n maxEntries?: number;\n id?: string;\n file?: string;\n path?: string;\n session_id?: string;\n index?: number;\n entry_ids?: string[];\n operation_addresses?: string[];\n entry_range?: FabricMemoryEntryRange;\n entry_offset?: number;\n text_offset?: number;\n max_chars?: number;\n max_entries?: number;\n}\ninterface FabricMemoryCall<Ref extends string, Args> {\n ref: Ref;\n args: Args;\n}\ninterface FabricMemoryRecallEntryHit {\n kind: \"entry\";\n sessionId: string;\n tier: \"hot\" | \"cold\";\n index: number;\n entryId: string | null;\n parentId: string | null;\n operationAddress: string | null;\n type: string;\n role: string | null;\n tool: string | null;\n ref: string | null;\n provider: string | null;\n action: string | null;\n timestamp: number | null;\n isError: boolean;\n outcome?: \"succeeded\" | \"failed\" | \"aborted\" | \"timed_out\";\n score: number;\n snippet: string;\n truncated: boolean;\n follow: FabricMemoryCall<\"memory.expand\", FabricMemoryExpandArgs>;\n}\ninterface FabricMemoryRecallSessionHit {\n kind: \"session\";\n sessionId: string;\n tier: \"cold\";\n cwd: string;\n lastTimestamp: number | null;\n score: number;\n matchedTerms: number;\n matchedStructuralEntries: number;\n follow: FabricMemoryCall<\"memory.recall\", FabricMemoryRecallArgs>;\n}\ninterface FabricLcmMemoryHit {\n kind: \"lcm.raw\" | \"lcm.summary\";\n sessionId: string;\n score: number;\n snippet: string;\n truncated: boolean;\n source: { kind: \"raw\" | \"summary\"; projectKey: string; sessionId: string; entryId?: string; revision?: number; contentHash?: string; nodeId?: string; sourceHash: string };\n follow: FabricMemoryCall<\"memory.expand\", FabricMemoryExpandArgs>;\n}\ntype FabricMemoryRecallHit = FabricMemoryRecallEntryHit | FabricMemoryRecallSessionHit | FabricLcmMemoryHit;\ninterface FabricMemoryError {\n code: string;\n message: string;\n [key: string]: unknown;\n}\ninterface FabricMemoryCoverage {\n complete: boolean;\n indexedSessions: number;\n eligibleSessions: number;\n staleSessions: number;\n incompleteSessions: number;\n reasons: string[];\n error?: FabricMemoryError;\n}\ninterface FabricMemoryRecallResult {\n total: number;\n hits: FabricMemoryRecallHit[];\n next: FabricMemoryCall<\"memory.recall\", FabricMemoryRecallArgs> | null;\n coverage: FabricMemoryCoverage;\n error?: FabricMemoryError;\n}\ninterface FabricMemoryExpandedEntry {\n index: number;\n entryId: string | null;\n parentId: string | null;\n type: string | null;\n role: string | null;\n timestamp: number | null;\n isError: boolean;\n anchor?: boolean;\n text: string;\n textRange: { start: number; end: number; total: number; complete: boolean };\n parentEntryId?: string | null;\n operationAddress?: string | null;\n tool?: string | null;\n ref?: string | null;\n provider?: string | null;\n action?: string | null;\n outcome?: \"succeeded\" | \"failed\" | \"aborted\" | \"timed_out\";\n filesTouched?: Array<string | null>;\n operation?: unknown;\n branchFact?: unknown;\n structuredContent?: unknown;\n structuredTruncated?: boolean;\n factAddress?: string | null;\n carrierEntryId?: string | null;\n carrierParentId?: string | null;\n carrierFromId?: string | null;\n}\ninterface FabricMemoryExpandResult {\n session?: string;\n sourceHash?: string;\n branches?: FabricMemoryBranches;\n lineageFingerprint?: string;\n entryCount?: number;\n entries: FabricMemoryExpandedEntry[];\n next?: FabricMemoryCall<\"memory.expand\", FabricMemoryExpandArgs> | null;\n error?: FabricMemoryError;\n}\ninterface FabricMemoryWalkResult {\n visited: number;\n stopped: boolean;\n error?: FabricMemoryError;\n}\ninterface FabricMemorySessionInfo {\n id: string;\n file: string;\n cwd: string;\n mtime: number;\n entryCount: number;\n tier: \"hot\" | \"cold\";\n branches: FabricMemoryBranches;\n lineageFingerprint: string | null;\n}\ninterface FabricMemoryApi {\n recall(args?: FabricMemoryRecallArgs): Promise<FabricMemoryRecallResult>;\n expand(args: FabricMemoryExpandArgs): Promise<FabricMemoryExpandResult>;\n walk(\n args: FabricMemoryExpandArgs,\n visitor: (\n entry: FabricMemoryExpandedEntry,\n index: number,\n ) => boolean | void | Promise<boolean | void>,\n ): Promise<FabricMemoryWalkResult>;\n sessions(args?: {\n scope?: string;\n branches?: FabricMemoryBranches;\n limit?: number;\n max?: number;\n offset?: number;\n }): Promise<{\n scope?: string;\n branches?: FabricMemoryBranches;\n offset?: number;\n total?: number;\n truncated?: boolean;\n sessions?: FabricMemorySessionInfo[];\n error?: FabricMemoryError;\n }>;\n}\ninterface FabricStateTransitionArgs {\n label: string;\n from?: string;\n to: string;\n summary: string;\n evidence?: string[];\n tags?: string[];\n kind?: \"state\" | \"representation\";\n complexity?: { files: string[] };\n force?: boolean;\n name?: string;\n description?: string;\n}\ninterface FabricStateComplexityFile {\n file: string;\n supported: boolean;\n language?: string;\n current?: number;\n recorded?: number;\n delta?: number;\n recordedDelta?: number;\n}\ninterface FabricStateVerificationResult {\n certified: boolean;\n violated: boolean;\n certificationStatus: \"certified\" | \"failed\";\n results: unknown[];\n failures: unknown[];\n certificate?: unknown;\n reportingError?: string;\n evidenceDigest: string;\n resultDigest: string;\n}\ninterface FabricStateApi {\n transition(args: FabricStateTransitionArgs): Promise<{ event: FabricMeshEvent; head: unknown }>;\n get(): Promise<{\n head: unknown | null;\n goal: { check: string; description?: string } | null;\n complexity: { files: number; decisionPoints: number; lastNetDelta: number };\n certification: { current: unknown | null; recent: unknown[] };\n recentLabels: string[];\n }>;\n history(args?: { label?: string; limit?: number; includeArchived?: boolean; name?: string; max?: number }): Promise<{\n transitions: unknown[];\n labels: string[];\n certifications: unknown[];\n }>;\n complexity(args?: { files?: string[]; paths?: string[] }): Promise<{ files: FabricStateComplexityFile[]; netDelta: number }>;\n verify(args?: { labels?: string[]; includeArchived?: boolean; timeoutMs?: number; label?: string }): Promise<FabricStateVerificationResult>;\n goal(args: { check: string; description?: string; command?: string; cmd?: string; predicate?: string }): Promise<FabricMeshStateEntry<{ check: string; description?: string }>>;\n checkGoal(args?: { timeoutMs?: number }): Promise<{\n passed: boolean;\n output: string;\n exitCode: number | null;\n error?: string;\n }>;\n}\ntype FabricSchemaEvidence =\n | { kind: \"file_exists\"; path: string }\n | { kind: \"file_absent\"; path: string }\n | { kind: \"file_contains\"; path: string; literal: string }\n | { kind: \"file_sha256\"; path: string; sha256: string }\n | { kind: \"trusted_command\"; name: string };\ntype FabricSchemaFileOperation =\n | { kind: \"write\"; path: string; content: string; expected: { absent: true } | { sha256: string } }\n | { kind: \"edit\"; path: string; oldText: string; newText: string; expectedSha256: string }\n | { kind: \"delete\"; path: string; expectedSha256: string };\ninterface FabricSchemaEvidenceResult {\n evidence: FabricSchemaEvidence;\n status: \"confirmed\" | \"nonconfirmed\" | \"error\";\n detail: string;\n exitCode?: number | null;\n output?: string;\n observedSha256?: string;\n}\ninterface FabricSchemaStatus {\n mode: \"off\" | \"audit\" | \"enforce\";\n certificateTtlMs: number;\n maxFiles: number;\n maxBytes: number;\n trustedCommands: string[];\n generation: number;\n lastOutcome: \"committed\" | \"rolled_back\" | \"quarantined\" | null;\n hypotheses: Array<{\n id: string;\n label: string;\n status: string;\n generation: number;\n updatedAt: number;\n }>;\n}\ninterface FabricSchemaVerificationResult {\n verified: boolean;\n hypothesisId: string;\n certificate?: string;\n issuedAt?: number;\n expiresAt?: number;\n reason?: string;\n results: FabricSchemaEvidenceResult[];\n}\ninterface FabricSchemaCommitResult {\n outcome: \"committed\" | \"rolled_back\" | \"quarantined\";\n transactionId: string;\n generation?: number;\n paths?: string[];\n postconditions?: FabricSchemaEvidenceResult[];\n complexityReductionCertified?: boolean;\n stateTransition?: unknown;\n error?: string;\n rollbackError?: string;\n}\ninterface FabricSchemaApi {\n status(): Promise<FabricSchemaStatus>;\n hypothesize(args: {\n label: string;\n summary: string;\n evidence: FabricSchemaEvidence[];\n complexityReduction?: boolean;\n name?: string;\n description?: string;\n complexity_reduction?: boolean;\n }): Promise<{\n hypothesisId: string;\n status: string;\n state: unknown;\n fingerprint: string;\n generation: number;\n }>;\n verify(args: { hypothesisId: string; id?: string; hypothesis_id?: string }): Promise<FabricSchemaVerificationResult>;\n commit(args: {\n hypothesisId: string;\n certificate: string;\n operations: FabricSchemaFileOperation[];\n postconditions: FabricSchemaEvidence[];\n id?: string;\n hypothesis_id?: string;\n }): Promise<FabricSchemaCommitResult>;\n abort(args: { hypothesisId: string; certificate?: string; id?: string; hypothesis_id?: string }): Promise<{\n aborted: true;\n hypothesisId: string;\n }>;\n}\ninterface FabricCompactPendingIntent {\n reason?: string;\n instructions?: string;\n preserve?: string[];\n requestedBy: string;\n requestedAt: number;\n}\ninterface FabricCompactLastCommit {\n at: number;\n requestedBy: string;\n status: \"committed\" | \"skipped\" | \"cancelled\" | \"failed\";\n summary?: string;\n tokensBefore?: number;\n estimatedTokensAfter?: number;\n error?: string;\n persisted?: boolean;\n}\ninterface FabricCompactContextUsage {\n known: boolean;\n tokens: number | null;\n contextWindow: number | null;\n percent: number | null;\n remainingTokens: number | null;\n}\ninterface FabricCompactStatus {\n pending?: FabricCompactPendingIntent;\n last?: FabricCompactLastCommit;\n context?: FabricCompactContextUsage;\n engine?: string;\n targetContextRatio?: number;\n model?: string;\n sessionId?: string;\n}\ntype FabricComponentState = \"waiting\" | \"loading\" | \"active\" | \"unloading\" | \"failed\" | \"quarantined\" | \"disposed\";\ninterface FabricComponentEffectInfo {\n label: string;\n kind: \"none\" | \"scoped\" | \"transactional\" | \"emission\";\n resources: string[];\n ordering: \"commutative\" | \"ordered\" | \"unknown\";\n}\ninterface FabricComponentEffectConflict {\n withComponent: string;\n resources: string[];\n reason: \"shared_resource\" | \"unknown_resource\";\n}\ninterface FabricComponentInfo {\n id: string;\n component: string;\n parentId?: string;\n state: FabricComponentState;\n guarantee: \"managed\" | \"revertible\";\n requirements: string[];\n provisions: string[];\n missing: string[];\n optionalMissing: string[];\n effects?: FabricComponentEffectInfo[];\n effectConflicts?: FabricComponentEffectConflict[];\n targetDigest?: string;\n error?: string;\n cleanupErrors?: string[];\n revision: number;\n createdAt: number;\n updatedAt: number;\n}\ninterface FabricComponentsApi {\n list(): Promise<{\n definitions: Array<{ name: string; description?: string; revision: number; requirements: string[]; provisions: string[] }>;\n components: FabricComponentInfo[];\n }>;\n status(args: { id: string }): Promise<FabricComponentInfo>;\n graph(): Promise<{\n components: FabricComponentInfo[];\n edges: Array<{ from: string; to: string; ref: string; kind?: \"dependency\" | \"ownership\" }>;\n cycles: string[][];\n }>;\n reload(args?: { id?: string }): Promise<{ components: FabricComponentInfo[] }>;\n}\n\ninterface FabricCompactApi {\n request(args?: {\n reason?: string;\n instructions?: string;\n preserve?: string[];\n requestedBy?: string;\n instruction?: string;\n requested_by?: string;\n }): Promise<{ requested: true; intent: FabricCompactPendingIntent }>;\n status(): Promise<FabricCompactStatus>;\n cancel(): Promise<{ cancelled: true }>;\n}\n\ninterface FabricCodemapSymbolCounts {\n files: number;\n symbols: number;\n languages: Record<string, number>;\n fallbackFiles: number;\n truncated: boolean;\n elapsedMs: number;\n}\ninterface FabricCodemapCascadeEdge {\n file: string;\n score: number;\n commits: number;\n}\ninterface FabricCodemapCascade {\n seeds: string[];\n edges: FabricCodemapCascadeEdge[];\n commitsScanned: number;\n truncated: boolean;\n unavailable?: string;\n}\ninterface FabricCodemapApi {\n map(args?: {\n path?: string;\n maxTokens?: number;\n glob?: string;\n focus?: string;\n seeds?: string[];\n refresh?: boolean;\n }): Promise<{\n text: string;\n root: string;\n tokensEstimated: number;\n filesShown: number;\n symbolsShown: number;\n omittedFiles: number;\n omittedSymbols: number;\n truncated: boolean;\n indexed: FabricCodemapSymbolCounts;\n cascade?: FabricCodemapCascade;\n }>;\n cascade(args: {\n path?: string;\n seeds: string[];\n limit?: number;\n maxCommits?: number;\n }): Promise<FabricCodemapCascade>;\n}\n\ninterface FabricWorkflowAgentOptions extends Omit<FabricAgentRequest, \"task\"> {\n label?: string;\n}\ntype FabricActivityStatus = \"pending\" | \"running\" | \"completed\" | \"failed\" | \"blocked\" | \"stopped\";\ntype FabricActivityKind = \"agent\" | \"actor\" | \"tool\" | \"extension\" | \"mcp\" | \"mesh\" | \"task\" | \"custom\";\ninterface FabricWorkflowDisplay {\n name?: string;\n description?: string;\n}\ninterface FabricWorkflowPhaseOptions {\n id?: string;\n description?: string;\n total?: number;\n}\ninterface FabricWorkflowPhaseInput extends FabricWorkflowPhaseOptions {\n name: string;\n}\ninterface FabricWorkflowItem {\n id: string;\n label: string;\n status?: FabricActivityStatus;\n phase?: string;\n detail?: string;\n kind?: FabricActivityKind;\n current?: string;\n total?: number;\n completed?: number;\n data?: unknown;\n}\ninterface FabricWorkflowApi {\n agent<T = string>(prompt: string, options?: FabricWorkflowAgentOptions): Promise<T>;\n parallel<T, R>(items: T[], mapper: (item: T, index: number) => Promise<R> | R, concurrency?: number | { concurrency?: number }): Promise<R[]>;\n parallel<T>(thunks: Array<() => Promise<T> | T>, concurrency?: number | { concurrency?: number }): Promise<T[]>;\n pipeline<T>(items: T[], ...stages: Array<(value: unknown, original: T, index: number) => Promise<unknown> | unknown>): Promise<unknown[]>;\n configure(display: FabricWorkflowDisplay): Promise<FabricWorkflowDisplay>;\n phase(name: string, options?: FabricWorkflowPhaseOptions): Promise<{ name: string; index: number; id?: string }>;\n phase(input: FabricWorkflowPhaseInput): Promise<{ name: string; index: number; id?: string }>;\n item(item: FabricWorkflowItem): Promise<FabricWorkflowItem>;\n event(event: { message: string; level?: \"info\" | \"success\" | \"warning\" | \"error\"; data?: unknown }): Promise<void>;\n log(...values: unknown[]): void;\n budget: { total: number; spent(): number; remaining(): number };\n}\ninterface FabricJudgmentChoiceQuestion {\n type: \"choice\";\n instructions: string;\n criteria: Record<string, string | null>;\n}\ninterface FabricJudgmentBoolQuestion {\n type: \"bool\";\n instructions: string;\n criteria?: { true?: string; false?: string };\n}\ninterface FabricJudgmentScoreQuestion {\n type: \"score\";\n instructions: string;\n criteria: [string, string, ...string[]];\n}\ntype FabricJudgmentQuestion =\n | FabricJudgmentChoiceQuestion\n | FabricJudgmentBoolQuestion\n | FabricJudgmentScoreQuestion;\ninterface FabricJudgmentChoiceAnswer {\n type: \"choice\";\n choice: string;\n probabilities: Record<string, number>;\n confidence: number;\n}\ninterface FabricJudgmentBoolAnswer {\n type: \"bool\";\n bool: number;\n}\ninterface FabricJudgmentScoreAnswer {\n type: \"score\";\n score: number;\n probabilities: Record<string, number>;\n confidence: number;\n}\ntype FabricJudgmentAnswer =\n | FabricJudgmentChoiceAnswer\n | FabricJudgmentBoolAnswer\n | FabricJudgmentScoreAnswer;\ninterface FabricJudgmentApi {\n ask(args: {\n state: unknown;\n questions: Record<string, FabricJudgmentQuestion>;\n }): Promise<\n | { ok: true; backend: string; answers: Record<string, FabricJudgmentAnswer> }\n | {\n ok: false;\n reason: \"disabled\" | \"unsupported\" | \"refused\" | \"failed\" | \"timeout\" | \"aborted\";\n detail?: string;\n }\n >;\n stats(): Promise<{\n enabled: boolean;\n requests: number;\n batched: number;\n questions: number;\n merged: number;\n failures: number;\n refusals: number;\n timeouts: number;\n lastBackend?: string;\n lastError?: string;\n }>;\n}\ninterface FabricJudgeFilterOptions {\n threshold?: number;\n onFail?: \"keep-all\" | \"empty\" | \"throw\";\n maxItems?: number;\n maxBytes?: number;\n}\ninterface FabricJudgeClassifyOptions {\n onFail?: \"keep-all\" | \"empty\" | \"throw\";\n fallbackCategory?: string;\n maxItems?: number;\n maxBytes?: number;\n}\ninterface FabricJudgeBoolOptions {\n fallback?: number;\n}\ninterface FabricJudgeChoiceOptions {\n fallback?: string;\n}\ninterface FabricJudgeScoreOptions {\n fallback?: number;\n}\ninterface FabricJudgeApi {\n ask(args: {\n state: unknown;\n questions: Record<string, FabricJudgmentQuestion>;\n }): Promise<\n | { ok: true; backend: string; answers: Record<string, FabricJudgmentAnswer> }\n | {\n ok: false;\n reason: \"disabled\" | \"unsupported\" | \"refused\" | \"failed\" | \"timeout\" | \"aborted\";\n detail?: string;\n }\n >;\n ask(\n state: unknown,\n questions: Record<string, FabricJudgmentQuestion>,\n ): Promise<\n | { ok: true; backend: string; answers: Record<string, FabricJudgmentAnswer> }\n | {\n ok: false;\n reason: \"disabled\" | \"unsupported\" | \"refused\" | \"failed\" | \"timeout\" | \"aborted\";\n detail?: string;\n }\n >;\n bool(state: unknown, instructions: string, options?: FabricJudgeBoolOptions): Promise<number | undefined>;\n choice(\n state: unknown,\n options: readonly string[] | Record<string, string | null>,\n instructions: string,\n config?: FabricJudgeChoiceOptions,\n ): Promise<string | undefined>;\n score(\n state: unknown,\n criteria: readonly string[],\n instructions: string,\n config?: FabricJudgeScoreOptions,\n ): Promise<number | undefined>;\n filter<T>(items: T[], instructions: string, options?: FabricJudgeFilterOptions): Promise<T[]>;\n classify<T, C extends string>(\n items: T[],\n categories: readonly C[],\n instructions: string,\n options?: FabricJudgeClassifyOptions,\n ): Promise<Array<{ item: T; category?: C; confidence?: number }>>;\n}\ndeclare const tools: FabricToolsApi;\ndeclare const omp: OmpToolsApi;\ndeclare const extensions: FabricExtensionsApi;\ndeclare const agents: FabricAgentsApi;\ndeclare const mesh: FabricMeshApi;\ndeclare const mcp: FabricMcpApi;\ndeclare const memory: FabricMemoryApi;\ndeclare const state: FabricStateApi;\ndeclare const schema: FabricSchemaApi;\ndeclare const components: FabricComponentsApi;\ndeclare const compact: FabricCompactApi;\ndeclare const codemap: FabricCodemapApi;\ndeclare const judgment: FabricJudgmentApi;\ndeclare const judge: FabricJudgeApi;\ndeclare const council: FabricCouncilApi;\ndeclare const workflow: FabricWorkflowApi;\ndeclare function agent<T = string>(prompt: string, options?: FabricWorkflowAgentOptions): Promise<T>;\ndeclare function parallel<T, R>(items: T[], mapper: (item: T, index: number) => Promise<R> | R, concurrency?: number | { concurrency?: number }): Promise<R[]>;\ndeclare function parallel<T>(thunks: Array<() => Promise<T> | T>, concurrency?: number | { concurrency?: number }): Promise<T[]>;\ndeclare function pipeline<T>(items: T[], ...stages: Array<(value: unknown, original: T, index: number) => Promise<unknown> | unknown>): Promise<unknown[]>;\ndeclare function phase(name: string, options?: FabricWorkflowPhaseOptions): Promise<{ name: string; index: number; id?: string }>;\ndeclare function phase(input: FabricWorkflowPhaseInput): Promise<{ name: string; index: number; id?: string }>;\ndeclare function log(...values: unknown[]): void;\ndeclare const budget: FabricWorkflowApi[\"budget\"];\ntype FabricRlmRequest = Omit<FabricAgentRequest, \"runner\" | \"recursive\" | \"cwd\"> & { runner?: \"omp\" };\ndeclare const rlm: { query(args: FabricRlmRequest): Promise<FabricAgentResult> };\ninterface FabricConsole {\n log(...args: unknown[]): void;\n info(...args: unknown[]): void;\n warn(...args: unknown[]): void;\n error(...args: unknown[]): void;\n}\ndeclare const console: FabricConsole;\ndeclare const payloads: Readonly<Record<string, string>>;\ndeclare function print(...args: unknown[]): void;\ndeclare function setTimeout(handler: (...args: any[]) => void, timeout?: number): number;\ndeclare function clearTimeout(handle: number): void;\ndeclare function setInterval(handler: (...args: any[]) => void, timeout?: number): number;\ndeclare function clearInterval(handle: number): void;\n`;\n\nconst FULL_CODE_GLOBAL_DECLARATIONS = [\n \"declare const omp: OmpToolsApi;\\n\",\n \"declare const extensions: FabricExtensionsApi;\\n\",\n];\n\nconst OMP_LOOSE_DECLARATION = \"declare const omp: OmpToolsApi;\\n\";\nconst MCP_LOOSE_DECLARATION = \"declare const mcp: FabricMcpApi;\\n\";\nconst EXTENSIONS_LOOSE_DECLARATION = \"declare const extensions: FabricExtensionsApi;\\n\";\n\nexport interface FabricGuestDeclarationOptions {\n /** Global names to omit (for example providers disabled by configuration). */\n excludeGlobals?: readonly string[];\n /**\n * Pre-rendered replacement blocks from buildDynamicGuestDeclarations().\n * Applied only when the loose anchor line is still present \u2014 excluded\n * globals (or orchestration-only mode, for extensions) keep nothing to\n * replace, and missing/undefined sections keep the loose surface.\n */\n dynamic?: FabricDynamicGuestDeclarations;\n /** Add captured core overloads to the full-code OMP declaration. */\n coreOverrides?: string;\n}\n\nconst globalDeclarationLine = (name: string): RegExp =>\n new RegExp(`^declare const ${name}: [^\\\\n]*;\\\\n`, \"m\");\n\nconst terminatedDeclaration = (block: string): string =>\n block.endsWith(\"\\n\") ? block : `${block}\\n`;\n\nexport const guestTypeDeclarations = (\n fullCodeMode: boolean,\n options: FabricGuestDeclarationOptions = {},\n): string => {\n const base = fullCodeMode\n ? GUEST_TYPE_DECLARATIONS\n : FULL_CODE_GLOBAL_DECLARATIONS.reduce(\n (declarations, declaration) => declarations.replace(declaration, \"\"),\n GUEST_TYPE_DECLARATIONS,\n );\n let result = (options.excludeGlobals ?? []).reduce(\n (declarations, name) => declarations.replace(globalDeclarationLine(name), \"\"),\n base,\n );\n if (fullCodeMode && options.coreOverrides && result.includes(OMP_LOOSE_DECLARATION)) {\n result = result.replace(\n OMP_LOOSE_DECLARATION,\n terminatedDeclaration(options.coreOverrides),\n );\n }\n if (options.dynamic?.mcp && result.includes(MCP_LOOSE_DECLARATION)) {\n result = result.replace(\n MCP_LOOSE_DECLARATION,\n terminatedDeclaration(options.dynamic.mcp),\n );\n }\n if (options.dynamic?.extensions && result.includes(EXTENSIONS_LOOSE_DECLARATION)) {\n result = result.replace(\n EXTENSIONS_LOOSE_DECLARATION,\n terminatedDeclaration(options.dynamic.extensions),\n );\n }\n return result;\n};\n"],
|
|
5
|
+
"mappings": ";AAQO,IAAM,6CAA6C;AAAA,EACxD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,IAAI;AACN;AAEO,IAAM,0BAA0B;AAAA,EACrC,MAAM,CAAC,UAAU,OAAO;AAAA,EACxB,MAAM,CAAC,SAAS;AAAA,EAChB,MAAM,CAAC;AAAA,EACP,OAAO,CAAC;AAAA,EACR,MAAM,CAAC,WAAW,QAAQ,OAAO;AAAA,EACjC,MAAM,CAAC,OAAO;AAAA,EACd,IAAI,CAAC,OAAO;AACd;AAEO,IAAM,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAq9CvC,IAAM,gCAAgC;AAAA,EACpC;AAAA,EACA;AACF;AAEA,IAAM,wBAAwB;AAC9B,IAAM,wBAAwB;AAC9B,IAAM,+BAA+B;AAgBrC,IAAM,wBAAwB,CAAC,SAC7B,IAAI,OAAO,kBAAkB,IAAI,iBAAiB,GAAG;AAEvD,IAAM,wBAAwB,CAAC,UAC7B,MAAM,SAAS,IAAI,IAAI,QAAQ,GAAG,KAAK;AAAA;AAElC,IAAM,wBAAwB,CACnC,cACA,UAAyC,CAAC,MAC/B;AACX,QAAM,OAAO,eACT,0BACA,8BAA8B;AAAA,IAC5B,CAAC,cAAc,gBAAgB,aAAa,QAAQ,aAAa,EAAE;AAAA,IACnE;AAAA,EACF;AACJ,MAAI,UAAU,QAAQ,kBAAkB,CAAC,GAAG;AAAA,IAC1C,CAAC,cAAc,SAAS,aAAa,QAAQ,sBAAsB,IAAI,GAAG,EAAE;AAAA,IAC5E;AAAA,EACF;AACA,MAAI,gBAAgB,QAAQ,iBAAiB,OAAO,SAAS,qBAAqB,GAAG;AACnF,aAAS,OAAO;AAAA,MACd;AAAA,MACA,sBAAsB,QAAQ,aAAa;AAAA,IAC7C;AAAA,EACF;AACA,MAAI,QAAQ,SAAS,OAAO,OAAO,SAAS,qBAAqB,GAAG;AAClE,aAAS,OAAO;AAAA,MACd;AAAA,MACA,sBAAsB,QAAQ,QAAQ,GAAG;AAAA,IAC3C;AAAA,EACF;AACA,MAAI,QAAQ,SAAS,cAAc,OAAO,SAAS,4BAA4B,GAAG;AAChF,aAAS,OAAO;AAAA,MACd;AAAA,MACA,sBAAsB,QAAQ,QAAQ,UAAU;AAAA,IAClD;AAAA,EACF;AACA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
readSessionHeader
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-Z6TTRT6Q.js";
|
|
4
4
|
|
|
5
5
|
// src/memory/discovery.ts
|
|
6
6
|
import crypto from "node:crypto";
|
|
@@ -252,4 +252,4 @@ export {
|
|
|
252
252
|
InvalidProjectScopeError,
|
|
253
253
|
resolveScope
|
|
254
254
|
};
|
|
255
|
-
//# sourceMappingURL=chunk-
|
|
255
|
+
//# sourceMappingURL=chunk-WX6C7N3W.js.map
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
peerLabelPrefix,
|
|
23
23
|
writeHandoffSession
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-QJKOPPW2.js";
|
|
25
25
|
import {
|
|
26
26
|
DEFAULT_FABRIC_CONFIG,
|
|
27
27
|
MAX_AGENT_TIMEOUT_MS,
|
|
@@ -6784,4 +6784,4 @@ export {
|
|
|
6784
6784
|
agentParticipantRecords,
|
|
6785
6785
|
actorParticipantRecord
|
|
6786
6786
|
};
|
|
6787
|
-
//# sourceMappingURL=chunk-
|
|
6787
|
+
//# sourceMappingURL=chunk-YAI5SCIE.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
readFabricBranchSummaryDetails,
|
|
3
3
|
readFabricProjectionTrace
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-AZBJNZS4.js";
|
|
5
5
|
|
|
6
6
|
// src/memory/normalize.ts
|
|
7
7
|
import fs from "node:fs";
|
|
@@ -644,4 +644,4 @@ export {
|
|
|
644
644
|
expandSessionEntries,
|
|
645
645
|
expandSessionEntriesChecked
|
|
646
646
|
};
|
|
647
|
-
//# sourceMappingURL=chunk-
|
|
647
|
+
//# sourceMappingURL=chunk-Z6TTRT6Q.js.map
|
package/dist/compaction/hook.js
CHANGED
|
@@ -4,12 +4,12 @@ import {
|
|
|
4
4
|
fabricCompactionVersion,
|
|
5
5
|
rawContextTokens,
|
|
6
6
|
registerCompactionHook
|
|
7
|
-
} from "../chunks/chunk-
|
|
7
|
+
} from "../chunks/chunk-D55BFSFK.js";
|
|
8
8
|
import "../chunks/chunk-3J7BKUNG.js";
|
|
9
9
|
import "../chunks/chunk-QSRTEINF.js";
|
|
10
10
|
import "../chunks/chunk-UAP6IQIR.js";
|
|
11
|
-
import "../chunks/chunk-
|
|
12
|
-
import "../chunks/chunk-
|
|
11
|
+
import "../chunks/chunk-AZBJNZS4.js";
|
|
12
|
+
import "../chunks/chunk-FL4A542C.js";
|
|
13
13
|
import "../chunks/chunk-ATTYOQSI.js";
|
|
14
14
|
export {
|
|
15
15
|
compileFabricSummary,
|
|
@@ -10,8 +10,8 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
sessionDirNamesForCwd,
|
|
12
12
|
sessionsDirRoot
|
|
13
|
-
} from "../chunks/chunk-
|
|
14
|
-
import "../chunks/chunk-
|
|
13
|
+
} from "../chunks/chunk-WX6C7N3W.js";
|
|
14
|
+
import "../chunks/chunk-Z6TTRT6Q.js";
|
|
15
15
|
import {
|
|
16
16
|
DEFAULT_LCM_MAX_INPUT_CHARS,
|
|
17
17
|
LcmModelAdapter,
|
|
@@ -45,8 +45,8 @@ import {
|
|
|
45
45
|
clipUtf8,
|
|
46
46
|
utf8Bytes
|
|
47
47
|
} from "../chunks/chunk-UAP6IQIR.js";
|
|
48
|
-
import "../chunks/chunk-
|
|
49
|
-
import "../chunks/chunk-
|
|
48
|
+
import "../chunks/chunk-AZBJNZS4.js";
|
|
49
|
+
import "../chunks/chunk-FL4A542C.js";
|
|
50
50
|
import "../chunks/chunk-ATTYOQSI.js";
|
|
51
51
|
|
|
52
52
|
// src/compaction/lcm-runtime.ts
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ActionRegistry,
|
|
3
3
|
NESTED_TOOL_CALL_ID_PREFIX
|
|
4
|
-
} from "../chunks/chunk-
|
|
4
|
+
} from "../chunks/chunk-KLWNXXEI.js";
|
|
5
5
|
import "../chunks/chunk-LMAVZN7J.js";
|
|
6
6
|
import "../chunks/chunk-7TB7NXSL.js";
|
|
7
7
|
import "../chunks/chunk-4A4MVZQW.js";
|
|
8
8
|
import "../chunks/chunk-X2SKPWJA.js";
|
|
9
9
|
import "../chunks/chunk-77FQHHZD.js";
|
|
10
10
|
import "../chunks/chunk-7363CD5A.js";
|
|
11
|
-
import "../chunks/chunk-
|
|
11
|
+
import "../chunks/chunk-FL4A542C.js";
|
|
12
12
|
import "../chunks/chunk-ATTYOQSI.js";
|
|
13
13
|
export {
|
|
14
14
|
ActionRegistry,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-guidance.d.ts","sourceRoot":"","sources":["../../src/core/system-guidance.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,6BAA6B,GACxC,cAAc,OAAO,EACrB,kBAAiB,SAAS,MAAM,EAAO,KACtC,MAqBU,CAAC;AAEd,eAAO,MAAM,8BAA8B,GACzC,cAAc,OAAO,EACrB,kBAAiB,SAAS,MAAM,EAAO,KACtC,MAKmW,CAAC;AAGvW,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;
|
|
1
|
+
{"version":3,"file":"system-guidance.d.ts","sourceRoot":"","sources":["../../src/core/system-guidance.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,6BAA6B,GACxC,cAAc,OAAO,EACrB,kBAAiB,SAAS,MAAM,EAAO,KACtC,MAqBU,CAAC;AAEd,eAAO,MAAM,8BAA8B,GACzC,cAAc,OAAO,EACrB,kBAAiB,SAAS,MAAM,EAAO,KACtC,MAKmW,CAAC;AAGvW,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACjD;AAwCD,eAAO,MAAM,2BAA2B,GACtC,OAAO,aAAa,CAAC,yBAAyB,CAAC,EAC/C,eAAe,WAAW,CAAC,MAAM,CAAC,KACjC,MAAM,GAAG,SAgCX,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM,KAAK,GAAG,OAAO,GAAG,SAAS,KAAG,MAAM,GAAG,SAQjF,CAAC"}
|
package/dist/entropy/index.js
CHANGED
|
@@ -60,7 +60,7 @@ import {
|
|
|
60
60
|
staticFreedomFromSchema,
|
|
61
61
|
surfaceFreedomReport,
|
|
62
62
|
trendFromScores
|
|
63
|
-
} from "../chunks/chunk-
|
|
63
|
+
} from "../chunks/chunk-E3KTE736.js";
|
|
64
64
|
import {
|
|
65
65
|
compiledSurfaceDirectory,
|
|
66
66
|
loadCompiledSurface,
|
|
@@ -82,12 +82,12 @@ import {
|
|
|
82
82
|
replaySuccessfulCallsAsync,
|
|
83
83
|
schemaDigest
|
|
84
84
|
} from "../chunks/chunk-4A4MVZQW.js";
|
|
85
|
-
import "../chunks/chunk-
|
|
86
|
-
import "../chunks/chunk-
|
|
85
|
+
import "../chunks/chunk-WX6C7N3W.js";
|
|
86
|
+
import "../chunks/chunk-Z6TTRT6Q.js";
|
|
87
87
|
import "../chunks/chunk-7363CD5A.js";
|
|
88
88
|
import "../chunks/chunk-KAD7UWT2.js";
|
|
89
|
-
import "../chunks/chunk-
|
|
90
|
-
import "../chunks/chunk-
|
|
89
|
+
import "../chunks/chunk-AZBJNZS4.js";
|
|
90
|
+
import "../chunks/chunk-FL4A542C.js";
|
|
91
91
|
import "../chunks/chunk-ATTYOQSI.js";
|
|
92
92
|
export {
|
|
93
93
|
AUTO_APPLY_PROPOSAL_KINDS,
|