@fabric-harness/sdk 1.12.2 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/dist/agent-definition.d.ts +6 -0
  2. package/dist/agent-definition.d.ts.map +1 -1
  3. package/dist/agent-definition.js +5 -4
  4. package/dist/agent-definition.js.map +1 -1
  5. package/dist/agent.d.ts +6 -0
  6. package/dist/agent.d.ts.map +1 -1
  7. package/dist/agent.js +45 -1
  8. package/dist/agent.js.map +1 -1
  9. package/dist/channel.d.ts +77 -0
  10. package/dist/channel.d.ts.map +1 -0
  11. package/dist/channel.js +115 -0
  12. package/dist/channel.js.map +1 -0
  13. package/dist/context-budget.d.ts +16 -0
  14. package/dist/context-budget.d.ts.map +1 -1
  15. package/dist/context-budget.js +38 -3
  16. package/dist/context-budget.js.map +1 -1
  17. package/dist/cost-budget.d.ts +106 -1
  18. package/dist/cost-budget.d.ts.map +1 -1
  19. package/dist/cost-budget.js +48 -2
  20. package/dist/cost-budget.js.map +1 -1
  21. package/dist/dispatch.d.ts +95 -0
  22. package/dist/dispatch.d.ts.map +1 -0
  23. package/dist/dispatch.js +175 -0
  24. package/dist/dispatch.js.map +1 -0
  25. package/dist/error.d.ts +1 -1
  26. package/dist/error.d.ts.map +1 -1
  27. package/dist/error.js.map +1 -1
  28. package/dist/filesystem.d.ts +52 -0
  29. package/dist/filesystem.d.ts.map +1 -0
  30. package/dist/filesystem.js +24 -0
  31. package/dist/filesystem.js.map +1 -0
  32. package/dist/history.d.ts +22 -2
  33. package/dist/history.d.ts.map +1 -1
  34. package/dist/history.js +69 -0
  35. package/dist/history.js.map +1 -1
  36. package/dist/index.d.ts +31 -12
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +17 -6
  39. package/dist/index.js.map +1 -1
  40. package/dist/loop.d.ts +29 -3
  41. package/dist/loop.d.ts.map +1 -1
  42. package/dist/loop.js +167 -24
  43. package/dist/loop.js.map +1 -1
  44. package/dist/model.d.ts +47 -0
  45. package/dist/model.d.ts.map +1 -1
  46. package/dist/model.js +250 -79
  47. package/dist/model.js.map +1 -1
  48. package/dist/otel-observer.d.ts +44 -0
  49. package/dist/otel-observer.d.ts.map +1 -0
  50. package/dist/otel-observer.js +165 -0
  51. package/dist/otel-observer.js.map +1 -0
  52. package/dist/persistence.d.ts +70 -0
  53. package/dist/persistence.d.ts.map +1 -0
  54. package/dist/persistence.js +17 -0
  55. package/dist/persistence.js.map +1 -0
  56. package/dist/persistent-agent.d.ts +80 -0
  57. package/dist/persistent-agent.d.ts.map +1 -0
  58. package/dist/persistent-agent.js +69 -0
  59. package/dist/persistent-agent.js.map +1 -0
  60. package/dist/pi-loop-runtime.d.ts.map +1 -1
  61. package/dist/pi-loop-runtime.js +9 -3
  62. package/dist/pi-loop-runtime.js.map +1 -1
  63. package/dist/profile.d.ts +33 -0
  64. package/dist/profile.d.ts.map +1 -0
  65. package/dist/profile.js +10 -0
  66. package/dist/profile.js.map +1 -0
  67. package/dist/providers.d.ts +14 -0
  68. package/dist/providers.d.ts.map +1 -1
  69. package/dist/providers.js +18 -1
  70. package/dist/providers.js.map +1 -1
  71. package/dist/result.d.ts +12 -0
  72. package/dist/result.d.ts.map +1 -1
  73. package/dist/result.js +26 -0
  74. package/dist/result.js.map +1 -1
  75. package/dist/retrieval.d.ts +61 -0
  76. package/dist/retrieval.d.ts.map +1 -0
  77. package/dist/retrieval.js +26 -0
  78. package/dist/retrieval.js.map +1 -0
  79. package/dist/runtime-mode.d.ts +1 -1
  80. package/dist/runtime-mode.d.ts.map +1 -1
  81. package/dist/runtime-mode.js +2 -1
  82. package/dist/runtime-mode.js.map +1 -1
  83. package/dist/scope-key.d.ts +25 -0
  84. package/dist/scope-key.d.ts.map +1 -0
  85. package/dist/scope-key.js +34 -0
  86. package/dist/scope-key.js.map +1 -0
  87. package/dist/session.d.ts +40 -1
  88. package/dist/session.d.ts.map +1 -1
  89. package/dist/session.js +308 -34
  90. package/dist/session.js.map +1 -1
  91. package/dist/skills.d.ts +33 -0
  92. package/dist/skills.d.ts.map +1 -0
  93. package/dist/skills.js +65 -0
  94. package/dist/skills.js.map +1 -0
  95. package/dist/store.d.ts +36 -1
  96. package/dist/store.d.ts.map +1 -1
  97. package/dist/store.js +83 -0
  98. package/dist/store.js.map +1 -1
  99. package/dist/stream-chunks.d.ts +42 -0
  100. package/dist/stream-chunks.d.ts.map +1 -0
  101. package/dist/stream-chunks.js +138 -0
  102. package/dist/stream-chunks.js.map +1 -0
  103. package/dist/strict.d.ts +21 -11
  104. package/dist/strict.d.ts.map +1 -1
  105. package/dist/strict.js +11 -6
  106. package/dist/strict.js.map +1 -1
  107. package/dist/tools.d.ts +32 -4
  108. package/dist/tools.d.ts.map +1 -1
  109. package/dist/tools.js +132 -6
  110. package/dist/tools.js.map +1 -1
  111. package/dist/types.d.ts +110 -3
  112. package/dist/types.d.ts.map +1 -1
  113. package/dist/types.js.map +1 -1
  114. package/package.json +14 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retrieval.js","sourceRoot":"","sources":["../src/retrieval.ts"],"names":[],"mappings":"AA6DA;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAoB,EAAE,UAA6B,EAAE;IACpF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IACvC,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,QAAQ;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,2DAA2D;QAC/F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACvC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE;aAClC;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;QACD,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE;QACzD,KAAK,CAAC,OAAO,CAAC,KAAK;YACjB,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;YAClF,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -20,7 +20,7 @@ export interface RuntimeModeResolution {
20
20
  * `'stateless'`.
21
21
  * - Unknown runtime values fall through to `'inline'` with a warning.
22
22
  */
23
- export declare function resolveRuntimeMode(options: Pick<AgentInit, 'runtime' | 'store'>, env?: Record<string, string | undefined>): RuntimeModeResolution;
23
+ export declare function resolveRuntimeMode(options: Pick<AgentInit, 'runtime' | 'store' | 'persistence'>, env?: Record<string, string | undefined>): RuntimeModeResolution;
24
24
  export declare function isStatelessRuntime(runtime: FabricRuntime | undefined): boolean;
25
25
  /**
26
26
  * Returns true when `store` is the in-memory default (no `appendEntry`
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-mode.d.ts","sourceRoot":"","sources":["../src/runtime-mode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,EAC7C,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACpD,qBAAqB,CAsBvB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,OAAO,CAE9E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,CAGxE"}
1
+ {"version":3,"file":"runtime-mode.d.ts","sourceRoot":"","sources":["../src/runtime-mode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,GAAG,aAAa,CAAC,EAC7D,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACpD,qBAAqB,CAuBvB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,OAAO,CAE9E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,CAGxE"}
@@ -20,7 +20,8 @@ export function resolveRuntimeMode(options, env = process.env) {
20
20
  warnings.push(`Unknown runtime "${String(runtime)}"; defaulting to "inline".`);
21
21
  runtime = 'inline';
22
22
  }
23
- const ephemeral = runtime === 'stateless' || (runtime === 'inline' && options.store === undefined);
23
+ const hasStore = options.store !== undefined || options.persistence !== undefined;
24
+ const ephemeral = runtime === 'stateless' || (runtime === 'inline' && !hasStore);
24
25
  if (production && ephemeral && runtime === 'inline' && !allowEphemeral) {
25
26
  warnings.push('Inline runtime in production without an explicit SessionStore — session history is in-memory only and will not survive restarts. ' +
26
27
  'Configure a SessionStore (SQLite/Postgres/file), set runtime: "stateless" to opt in explicitly, or set FABRIC_ALLOW_EPHEMERAL_STATE=1.');
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-mode.js","sourceRoot":"","sources":["../src/runtime-mode.ts"],"names":[],"mappings":"AAYA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAA6C,EAC7C,MAA0C,OAAO,CAAC,GAAG;IAErD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAClC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,KAAK,YAAY,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;IACpF,MAAM,cAAc,GAAG,GAAG,CAAC,4BAA4B,KAAK,GAAG,IAAI,GAAG,CAAC,4BAA4B,KAAK,MAAM,CAAC;IAE/G,IAAI,OAAO,GAAkB,SAAS,IAAI,QAAQ,CAAC;IACnD,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC9E,QAAQ,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAC/E,OAAO,GAAG,QAAQ,CAAC;IACrB,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,KAAK,WAAW,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IAEnG,IAAI,UAAU,IAAI,SAAS,IAAI,OAAO,KAAK,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;QACvE,QAAQ,CAAC,IAAI,CACX,mIAAmI;YACjI,wIAAwI,CAC3I,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAkC;IACnE,OAAO,OAAO,KAAK,WAAW,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAA+B;IAC7D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAQ,KAAkC,CAAC,UAAU,KAAK,IAAI,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"runtime-mode.js","sourceRoot":"","sources":["../src/runtime-mode.ts"],"names":[],"mappings":"AAYA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAA6D,EAC7D,MAA0C,OAAO,CAAC,GAAG;IAErD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAClC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,KAAK,YAAY,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;IACpF,MAAM,cAAc,GAAG,GAAG,CAAC,4BAA4B,KAAK,GAAG,IAAI,GAAG,CAAC,4BAA4B,KAAK,MAAM,CAAC;IAE/G,IAAI,OAAO,GAAkB,SAAS,IAAI,QAAQ,CAAC;IACnD,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC9E,QAAQ,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAC/E,OAAO,GAAG,QAAQ,CAAC;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC;IAClF,MAAM,SAAS,GAAG,OAAO,KAAK,WAAW,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEjF,IAAI,UAAU,IAAI,SAAS,IAAI,OAAO,KAAK,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;QACvE,QAAQ,CAAC,IAAI,CACX,mIAAmI;YACjI,wIAAwI,CAC3I,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAkC;IACnE,OAAO,OAAO,KAAK,WAAW,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAA+B;IAC7D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAQ,KAAkC,CAAC,UAAU,KAAK,IAAI,CAAC;AACjE,CAAC"}
@@ -0,0 +1,25 @@
1
+ export interface ParsedScopeKey {
2
+ kind: 'tenant' | 'agent' | 'user' | 'custom';
3
+ id?: string;
4
+ period?: string;
5
+ raw: string;
6
+ }
7
+ /**
8
+ * Parse a scope key into its structured components.
9
+ *
10
+ * Recognized patterns:
11
+ * tenant:<id>:day:YYYY-MM-DD
12
+ * tenant:<id>:hour:YYYY-MM-DDTHH:00Z
13
+ * tenant:<id>:month:YYYY-MM
14
+ * agent:<id>:day:YYYY-MM-DD
15
+ * agent:<id>:hour:YYYY-MM-DDTHH:00Z
16
+ * agent:<id>:month:YYYY-MM
17
+ * user:<id>:day:YYYY-MM-DD
18
+ * user:<id>:hour:YYYY-MM-DDTHH:00Z
19
+ * user:<id>:month:YYYY-MM
20
+ *
21
+ * Unknown prefixes fall back to `kind: 'custom'` with `raw: scopeKey`.
22
+ * Returns `undefined` for empty strings.
23
+ */
24
+ export declare function parseScopeKey(scopeKey: string): ParsedScopeKey | undefined;
25
+ //# sourceMappingURL=scope-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-key.d.ts","sourceRoot":"","sources":["../src/scope-key.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC7C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAiB1E"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Parse a scope key into its structured components.
3
+ *
4
+ * Recognized patterns:
5
+ * tenant:<id>:day:YYYY-MM-DD
6
+ * tenant:<id>:hour:YYYY-MM-DDTHH:00Z
7
+ * tenant:<id>:month:YYYY-MM
8
+ * agent:<id>:day:YYYY-MM-DD
9
+ * agent:<id>:hour:YYYY-MM-DDTHH:00Z
10
+ * agent:<id>:month:YYYY-MM
11
+ * user:<id>:day:YYYY-MM-DD
12
+ * user:<id>:hour:YYYY-MM-DDTHH:00Z
13
+ * user:<id>:month:YYYY-MM
14
+ *
15
+ * Unknown prefixes fall back to `kind: 'custom'` with `raw: scopeKey`.
16
+ * Returns `undefined` for empty strings.
17
+ */
18
+ export function parseScopeKey(scopeKey) {
19
+ if (!scopeKey || scopeKey.trim().length === 0)
20
+ return undefined;
21
+ const parts = scopeKey.split(':');
22
+ const kind = parts[0];
23
+ if (kind === 'tenant' || kind === 'agent' || kind === 'user') {
24
+ // Expected: <kind>:<id>:<period>:<value>
25
+ // period is everything from parts[2] onward (e.g. "day:2026-06-23")
26
+ if (parts.length >= 4) {
27
+ const id = parts[1];
28
+ const period = parts.slice(2).join(':');
29
+ return { kind, ...(id ? { id } : {}), period, raw: scopeKey };
30
+ }
31
+ }
32
+ return { kind: 'custom', raw: scopeKey };
33
+ }
34
+ //# sourceMappingURL=scope-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope-key.js","sourceRoot":"","sources":["../src/scope-key.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEhE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAA2B,CAAC;IAEhD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC7D,yCAAyC;QACzC,oEAAoE;QACpE,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;QAChE,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3C,CAAC"}
package/dist/session.d.ts CHANGED
@@ -1,11 +1,22 @@
1
1
  import type { SandboxEnv } from './sandbox.js';
2
+ import type { FabricFs } from './filesystem.js';
2
3
  import type { SandboxRef, SerializedSandboxRef } from './sandbox-ref.js';
3
4
  import type { FilesystemSource } from './filesystem-source.js';
4
- import type { ApprovalCallback, ArtifactCreateOptions, ArtifactRef, CheckpointCreateOptions, CheckpointRestoreOptions, CheckpointResult, CompactionOptions, CompactionResult, FabricAgent, FabricEvent, PromptOptions, SessionData, SessionOptions, ShellOptions, ShellResult, SkillOptions, TaskOptions } from './types.js';
5
+ import type { ApprovalCallback, ArtifactCreateOptions, ArtifactRef, CheckpointCreateOptions, CheckpointRestoreOptions, CheckpointResult, CompactionOptions, CompactionResult, FabricAgent, FabricEvent, PromptOptions, SessionData, SessionEntry, SessionOptions, ShellOptions, ShellResult, SignalEntryData, SkillOptions, TaskOptions } from './types.js';
6
+ /**
7
+ * Generate a deterministic `aff_\u003cULID\u003e` affinity key from an
8
+ * `(agentId, sessionId)` pair. The same pair always produces the same key,
9
+ * which is stable across restarts. Different pairs produce different keys
10
+ * with overwhelming probability.
11
+ */
12
+ export declare function generateAffinityKey(agentId: string, sessionId: string): string;
13
+ export declare function isValidAffinityKey(key: string): boolean;
5
14
  export interface FabricSession {
6
15
  readonly id: string;
7
16
  readonly agent: FabricAgent;
8
17
  readonly sandbox: Promise<SandboxEnv>;
18
+ /** Out-of-band filesystem helper for host-side staging/artifact plumbing. */
19
+ readonly fs: FabricFs;
9
20
  prompt<TResult = string>(text: string, options?: PromptOptions<TResult>): Promise<TResult>;
10
21
  stream<TResult = string>(text: string, options?: PromptOptions<TResult>): AsyncGenerator<FabricEvent, TResult, void>;
11
22
  skill<TResult = string>(name: string, options?: SkillOptions<TResult>): Promise<TResult>;
@@ -39,6 +50,11 @@ export interface FabricSession {
39
50
  list(filter?: import('./session-memory.js').SessionMemoryFilter): Promise<import('./session-memory.js').SessionMemoryEntry[]>;
40
51
  };
41
52
  history(): Promise<SessionData>;
53
+ /**
54
+ * Append a typed signal entry to the session history. Signals are rendered
55
+ * as XML tags in model context so the model sees them as structured context.
56
+ */
57
+ createSignalEntry(data: SignalEntryData): Promise<SessionEntry>;
42
58
  checkpoint: {
43
59
  create(options: CheckpointCreateOptions | string): Promise<CheckpointResult>;
44
60
  restore(options: CheckpointRestoreOptions | string): Promise<CheckpointResult>;
@@ -103,6 +119,13 @@ export interface MountResult {
103
119
  /** Effective mode (defaults to 'read'). */
104
120
  mode: 'read' | 'write';
105
121
  }
122
+ interface CompactionPreparation {
123
+ firstKeptIndex: number;
124
+ messagesToSummarize: SessionEntry[];
125
+ turnPrefixMessages: SessionEntry[];
126
+ isSplitTurn: boolean;
127
+ fileRefs: FileReferences;
128
+ }
106
129
  export interface ApprovalRequestInput {
107
130
  /** Human-readable reason shown to the approver. */
108
131
  reason: string;
@@ -123,6 +146,7 @@ export declare class StubFabricSession implements FabricSession {
123
146
  create: (options: CheckpointCreateOptions | string) => Promise<CheckpointResult>;
124
147
  restore: (options: CheckpointRestoreOptions | string) => Promise<CheckpointResult>;
125
148
  };
149
+ readonly fs: FabricFs;
126
150
  readonly approval: {
127
151
  request: (input: ApprovalRequestInput) => Promise<boolean>;
128
152
  };
@@ -150,6 +174,7 @@ export declare class StubFabricSession implements FabricSession {
150
174
  /** Set when this session has registered its sandbox in the in-process ref registry. */
151
175
  private ownedSandboxRefId;
152
176
  private readonly costBudget;
177
+ private readonly skillCache;
153
178
  constructor(agent: FabricAgent, id: string, options?: SessionOptions);
154
179
  private getDurableRuntime;
155
180
  prompt<TResult = string>(text: string, options?: PromptOptions<TResult>): Promise<TResult>;
@@ -161,6 +186,7 @@ export declare class StubFabricSession implements FabricSession {
161
186
  mount(mountAt: string, source: FilesystemSource, options?: MountOptions): Promise<MountResult>;
162
187
  private checkMountWriteAccess;
163
188
  history(): Promise<SessionData>;
189
+ createSignalEntry(data: SignalEntryData): Promise<SessionEntry>;
164
190
  sandboxRef(options?: {
165
191
  portable?: false;
166
192
  }): Promise<SandboxRef>;
@@ -171,7 +197,10 @@ export declare class StubFabricSession implements FabricSession {
171
197
  artifact(name: string, content: string | Uint8Array, options?: ArtifactCreateOptions): Promise<ArtifactRef>;
172
198
  compact(options?: CompactionOptions): Promise<CompactionResult>;
173
199
  private autoCompactIfNeeded;
200
+ private resolveModelContextWindow;
201
+ private readProviderModelMetadata;
174
202
  private generateCompactionSummary;
203
+ private summarizeEntrySet;
175
204
  private requestCustomApproval;
176
205
  private createCheckpoint;
177
206
  private restoreCheckpoint;
@@ -185,6 +214,7 @@ export declare class StubFabricSession implements FabricSession {
185
214
  private commandTextForApproval;
186
215
  private clampBashToolInput;
187
216
  private resolveTools;
217
+ private activateSkillForTool;
188
218
  private resolveSkill;
189
219
  private resolveRole;
190
220
  private memoryFallback;
@@ -194,4 +224,13 @@ export declare class StubFabricSession implements FabricSession {
194
224
  private recordEntry;
195
225
  private emit;
196
226
  }
227
+ interface FileReferences {
228
+ readFiles: string[];
229
+ modifiedFiles: string[];
230
+ }
231
+ /** Pure function — no I/O. Finds the token-based cut point, extracts messages to summarize, and tracks file ops. */
232
+ export declare function prepareCompaction(entries: SessionEntry[], keepRecentTokens: number, previousCompaction?: {
233
+ firstKeptIndex: number;
234
+ }): CompactionPreparation | undefined;
235
+ export {};
197
236
  //# sourceMappingURL=session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}