@agimon-ai/doompi-cache 0.0.1-alpha.37 → 0.0.1-alpha.39

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 (167) hide show
  1. package/dist/api-contracts.cjs +7 -1
  2. package/dist/api-contracts.d.cts +1 -1
  3. package/dist/api-contracts.d.mts +1 -1
  4. package/dist/api-contracts.mjs +2 -1
  5. package/dist/env.cjs +7 -1
  6. package/dist/env.d.cts +1 -1
  7. package/dist/env.d.mts +1 -1
  8. package/dist/env.mjs +2 -1
  9. package/dist/extensions/pi.cjs +458 -1
  10. package/dist/extensions/pi.cjs.map +1 -1
  11. package/dist/extensions/pi.d.cts +3 -4
  12. package/dist/extensions/pi.d.cts.map +1 -1
  13. package/dist/extensions/pi.d.mts +3 -4
  14. package/dist/extensions/pi.d.mts.map +1 -1
  15. package/dist/extensions/pi.mjs +453 -1
  16. package/dist/extensions/pi.mjs.map +1 -1
  17. package/dist/extensions/server.cjs +23 -1
  18. package/dist/extensions/server.cjs.map +1 -1
  19. package/dist/extensions/server.d.cts +3 -3
  20. package/dist/extensions/server.d.cts.map +1 -1
  21. package/dist/extensions/server.d.mts +3 -3
  22. package/dist/extensions/server.d.mts.map +1 -1
  23. package/dist/extensions/server.mjs +18 -1
  24. package/dist/extensions/server.mjs.map +1 -1
  25. package/dist/index.cjs +22 -1
  26. package/dist/index.d.cts +7 -7
  27. package/dist/index.d.mts +7 -7
  28. package/dist/index.mjs +7 -1
  29. package/dist/pi-cache-optimizer-D5NlAlHL.cjs +7915 -0
  30. package/dist/pi-cache-optimizer-D5NlAlHL.cjs.map +1 -0
  31. package/dist/pi-cache-optimizer-D8Cz8JHJ.mjs +7914 -0
  32. package/dist/pi-cache-optimizer-D8Cz8JHJ.mjs.map +1 -0
  33. package/dist/src/constants/environment.cjs +14 -0
  34. package/dist/src/constants/environment.cjs.map +1 -0
  35. package/dist/src/constants/environment.d.cts.map +1 -0
  36. package/dist/src/constants/environment.d.mts.map +1 -0
  37. package/dist/src/constants/environment.mjs +10 -0
  38. package/dist/src/constants/environment.mjs.map +1 -0
  39. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.cjs +47 -0
  40. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.cjs.map +1 -0
  41. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.mjs +47 -0
  42. package/dist/src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.mjs.map +1 -0
  43. package/dist/src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.cjs +7 -0
  44. package/dist/src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.cjs.map +1 -0
  45. package/dist/src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.mjs +8 -0
  46. package/dist/src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.mjs.map +1 -0
  47. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.cjs +7 -0
  48. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.cjs.map +1 -0
  49. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.mjs +8 -0
  50. package/dist/src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.mjs.map +1 -0
  51. package/dist/src/models/promptCacheTelemetry.cjs +45 -0
  52. package/dist/src/models/promptCacheTelemetry.cjs.map +1 -0
  53. package/dist/src/models/promptCacheTelemetry.d.cts.map +1 -0
  54. package/dist/src/models/promptCacheTelemetry.d.mts.map +1 -0
  55. package/dist/src/models/promptCacheTelemetry.mjs +45 -0
  56. package/dist/src/models/promptCacheTelemetry.mjs.map +1 -0
  57. package/dist/src/schemas/apiContracts.cjs +13 -0
  58. package/dist/src/schemas/apiContracts.cjs.map +1 -0
  59. package/dist/{schemas → src/schemas}/apiContracts.d.cts.map +1 -1
  60. package/dist/{schemas → src/schemas}/apiContracts.d.mts.map +1 -1
  61. package/dist/src/schemas/apiContracts.mjs +13 -0
  62. package/dist/src/schemas/apiContracts.mjs.map +1 -0
  63. package/dist/src/services/canonical/index.cjs +28 -0
  64. package/dist/src/services/canonical/index.cjs.map +1 -0
  65. package/dist/src/services/canonical/index.d.cts.map +1 -0
  66. package/dist/src/services/canonical/index.d.mts.map +1 -0
  67. package/dist/src/services/canonical/index.mjs +27 -0
  68. package/dist/src/services/canonical/index.mjs.map +1 -0
  69. package/dist/src/services/digest/index.cjs +9 -0
  70. package/dist/src/services/digest/index.cjs.map +1 -0
  71. package/dist/{services → src/services}/digest/index.d.cts.map +1 -1
  72. package/dist/{services → src/services}/digest/index.d.mts.map +1 -1
  73. package/dist/src/services/digest/index.mjs +9 -0
  74. package/dist/src/services/digest/index.mjs.map +1 -0
  75. package/dist/src/services/namespace/index.cjs +78 -0
  76. package/dist/src/services/namespace/index.cjs.map +1 -0
  77. package/dist/src/services/namespace/index.d.cts.map +1 -0
  78. package/dist/src/services/namespace/index.d.mts.map +1 -0
  79. package/dist/src/services/namespace/index.mjs +74 -0
  80. package/dist/src/services/namespace/index.mjs.map +1 -0
  81. package/dist/src/services/promptCacheTelemetry/index.cjs +22 -0
  82. package/dist/src/services/promptCacheTelemetry/index.cjs.map +1 -0
  83. package/dist/src/services/promptCacheTelemetry/index.d.cts.map +1 -0
  84. package/dist/src/services/promptCacheTelemetry/index.d.mts.map +1 -0
  85. package/dist/src/services/promptCacheTelemetry/index.mjs +20 -0
  86. package/dist/src/services/promptCacheTelemetry/index.mjs.map +1 -0
  87. package/dist/src/services/providerPolicy/index.cjs +43 -0
  88. package/dist/src/services/providerPolicy/index.cjs.map +1 -0
  89. package/dist/src/services/providerPolicy/index.d.cts.map +1 -0
  90. package/dist/src/services/providerPolicy/index.d.mts.map +1 -0
  91. package/dist/src/services/providerPolicy/index.mjs +41 -0
  92. package/dist/src/services/providerPolicy/index.mjs.map +1 -0
  93. package/dist/src/types/cache.d.cts.map +1 -0
  94. package/dist/src/types/cache.d.mts.map +1 -0
  95. package/package.json +11 -10
  96. package/dist/constants/environment.cjs +0 -2
  97. package/dist/constants/environment.cjs.map +0 -1
  98. package/dist/constants/environment.d.cts.map +0 -1
  99. package/dist/constants/environment.d.mts.map +0 -1
  100. package/dist/constants/environment.mjs +0 -2
  101. package/dist/constants/environment.mjs.map +0 -1
  102. package/dist/controllers/cacheHooks.cjs +0 -2
  103. package/dist/controllers/cacheHooks.cjs.map +0 -1
  104. package/dist/controllers/cacheHooks.mjs +0 -2
  105. package/dist/controllers/cacheHooks.mjs.map +0 -1
  106. package/dist/models/promptCacheTelemetry.cjs +0 -2
  107. package/dist/models/promptCacheTelemetry.cjs.map +0 -1
  108. package/dist/models/promptCacheTelemetry.d.cts.map +0 -1
  109. package/dist/models/promptCacheTelemetry.d.mts.map +0 -1
  110. package/dist/models/promptCacheTelemetry.mjs +0 -2
  111. package/dist/models/promptCacheTelemetry.mjs.map +0 -1
  112. package/dist/pi-cache-optimizer-CHS6R_1P.mjs +0 -59
  113. package/dist/pi-cache-optimizer-CHS6R_1P.mjs.map +0 -1
  114. package/dist/pi-cache-optimizer-CTaHKnUK.cjs +0 -59
  115. package/dist/pi-cache-optimizer-CTaHKnUK.cjs.map +0 -1
  116. package/dist/schemas/apiContracts.cjs +0 -2
  117. package/dist/schemas/apiContracts.cjs.map +0 -1
  118. package/dist/schemas/apiContracts.mjs +0 -2
  119. package/dist/schemas/apiContracts.mjs.map +0 -1
  120. package/dist/services/canonical/index.cjs +0 -2
  121. package/dist/services/canonical/index.cjs.map +0 -1
  122. package/dist/services/canonical/index.d.cts.map +0 -1
  123. package/dist/services/canonical/index.d.mts.map +0 -1
  124. package/dist/services/canonical/index.mjs +0 -2
  125. package/dist/services/canonical/index.mjs.map +0 -1
  126. package/dist/services/digest/index.cjs +0 -2
  127. package/dist/services/digest/index.cjs.map +0 -1
  128. package/dist/services/digest/index.mjs +0 -2
  129. package/dist/services/digest/index.mjs.map +0 -1
  130. package/dist/services/namespace/index.cjs +0 -2
  131. package/dist/services/namespace/index.cjs.map +0 -1
  132. package/dist/services/namespace/index.d.cts.map +0 -1
  133. package/dist/services/namespace/index.d.mts.map +0 -1
  134. package/dist/services/namespace/index.mjs +0 -2
  135. package/dist/services/namespace/index.mjs.map +0 -1
  136. package/dist/services/promptCacheTelemetry/index.cjs +0 -2
  137. package/dist/services/promptCacheTelemetry/index.cjs.map +0 -1
  138. package/dist/services/promptCacheTelemetry/index.d.cts.map +0 -1
  139. package/dist/services/promptCacheTelemetry/index.d.mts.map +0 -1
  140. package/dist/services/promptCacheTelemetry/index.mjs +0 -2
  141. package/dist/services/promptCacheTelemetry/index.mjs.map +0 -1
  142. package/dist/services/providerPolicy/index.cjs +0 -2
  143. package/dist/services/providerPolicy/index.cjs.map +0 -1
  144. package/dist/services/providerPolicy/index.d.cts.map +0 -1
  145. package/dist/services/providerPolicy/index.d.mts.map +0 -1
  146. package/dist/services/providerPolicy/index.mjs +0 -2
  147. package/dist/services/providerPolicy/index.mjs.map +0 -1
  148. package/dist/types/cache.d.cts.map +0 -1
  149. package/dist/types/cache.d.mts.map +0 -1
  150. /package/dist/{constants → src/constants}/environment.d.cts +0 -0
  151. /package/dist/{constants → src/constants}/environment.d.mts +0 -0
  152. /package/dist/{models → src/models}/promptCacheTelemetry.d.cts +0 -0
  153. /package/dist/{models → src/models}/promptCacheTelemetry.d.mts +0 -0
  154. /package/dist/{schemas → src/schemas}/apiContracts.d.cts +0 -0
  155. /package/dist/{schemas → src/schemas}/apiContracts.d.mts +0 -0
  156. /package/dist/{services → src/services}/canonical/index.d.cts +0 -0
  157. /package/dist/{services → src/services}/canonical/index.d.mts +0 -0
  158. /package/dist/{services → src/services}/digest/index.d.cts +0 -0
  159. /package/dist/{services → src/services}/digest/index.d.mts +0 -0
  160. /package/dist/{services → src/services}/namespace/index.d.cts +0 -0
  161. /package/dist/{services → src/services}/namespace/index.d.mts +0 -0
  162. /package/dist/{services → src/services}/promptCacheTelemetry/index.d.cts +0 -0
  163. /package/dist/{services → src/services}/promptCacheTelemetry/index.d.mts +0 -0
  164. /package/dist/{services → src/services}/providerPolicy/index.d.cts +0 -0
  165. /package/dist/{services → src/services}/providerPolicy/index.d.mts +0 -0
  166. /package/dist/{types → src/types}/cache.d.cts +0 -0
  167. /package/dist/{types → src/types}/cache.d.mts +0 -0
@@ -0,0 +1,14 @@
1
+ //#region src/constants/environment.ts
2
+ const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = "DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE";
3
+ const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = "DOOMPI_PROMPT_CACHE_ROOT_SESSION";
4
+ const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = "DOOMPI_PROMPT_CACHE_CHILD_PROJECTION";
5
+ const PI_CACHE_RETENTION_ENV = "PI_CACHE_RETENTION";
6
+ const PI_CACHE_RETENTION_LONG = "long";
7
+ //#endregion
8
+ exports.DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV;
9
+ exports.DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV;
10
+ exports.DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV;
11
+ exports.PI_CACHE_RETENTION_ENV = PI_CACHE_RETENTION_ENV;
12
+ exports.PI_CACHE_RETENTION_LONG = PI_CACHE_RETENTION_LONG;
13
+
14
+ //# sourceMappingURL=environment.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.cjs","names":[],"sources":["../../../src/constants/environment.ts"],"sourcesContent":["export const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = 'DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE';\nexport const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = 'DOOMPI_PROMPT_CACHE_ROOT_SESSION';\nexport const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = 'DOOMPI_PROMPT_CACHE_CHILD_PROJECTION';\nexport const PI_CACHE_RETENTION_ENV = 'PI_CACHE_RETENTION';\nexport const PI_CACHE_RETENTION_LONG = 'long';\n"],"mappings":";AAAA,MAAa,2CAA2C;AACxD,MAAa,uCAAuC;AACpD,MAAa,2CAA2C;AACxD,MAAa,yBAAyB;AACtC,MAAa,0BAA0B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.d.cts","names":[],"sources":["../../../src/constants/environment.ts"],"mappings":";qBAAa;qBACA;qBACA;qBACA;qBACA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.d.mts","names":[],"sources":["../../../src/constants/environment.ts"],"mappings":";qBAAa;qBACA;qBACA;qBACA;qBACA"}
@@ -0,0 +1,10 @@
1
+ //#region src/constants/environment.ts
2
+ const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = "DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE";
3
+ const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = "DOOMPI_PROMPT_CACHE_ROOT_SESSION";
4
+ const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = "DOOMPI_PROMPT_CACHE_CHILD_PROJECTION";
5
+ const PI_CACHE_RETENTION_ENV = "PI_CACHE_RETENTION";
6
+ const PI_CACHE_RETENTION_LONG = "long";
7
+ //#endregion
8
+ export { DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV, DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV, DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV, PI_CACHE_RETENTION_ENV, PI_CACHE_RETENTION_LONG };
9
+
10
+ //# sourceMappingURL=environment.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.mjs","names":[],"sources":["../../../src/constants/environment.ts"],"sourcesContent":["export const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = 'DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE';\nexport const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = 'DOOMPI_PROMPT_CACHE_ROOT_SESSION';\nexport const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = 'DOOMPI_PROMPT_CACHE_CHILD_PROJECTION';\nexport const PI_CACHE_RETENTION_ENV = 'PI_CACHE_RETENTION';\nexport const PI_CACHE_RETENTION_LONG = 'long';\n"],"mappings":";AAAA,MAAa,2CAA2C;AACxD,MAAa,uCAAuC;AACpD,MAAa,2CAA2C;AACxD,MAAa,yBAAyB;AACtC,MAAa,0BAA0B"}
@@ -0,0 +1,47 @@
1
+ const require_index = require("../../../../../services/canonical/index.cjs");
2
+ const require_index$1 = require("../../../../../services/digest/index.cjs");
3
+ const require_index$2 = require("../../../../../services/namespace/index.cjs");
4
+ const require_index$3 = require("../../../../../services/providerPolicy/index.cjs");
5
+ //#region src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.ts
6
+ function record(value) {
7
+ return typeof value === "object" && value !== null && !Array.isArray(value) ? value : {};
8
+ }
9
+ function modelIdentity(model, payload) {
10
+ const request = record(payload);
11
+ return {
12
+ virtualProvider: model?.provider,
13
+ virtualModel: model?.id,
14
+ api: typeof request.api === "string" ? request.api : void 0,
15
+ wireModel: typeof request.model === "string" ? request.model : void 0
16
+ };
17
+ }
18
+ function cacheNamespace(context) {
19
+ return `dph_${require_index$1.sha256Base64Url(require_index.canonicalJson({
20
+ version: 1,
21
+ session: context.sessionId,
22
+ selection: context.selection
23
+ }))}`;
24
+ }
25
+ const cacheHooks = [{
26
+ event: "before_provider_request",
27
+ handle(event, execution) {
28
+ const payload = record(event.payload);
29
+ const identity = modelIdentity(execution.model, payload);
30
+ const modelFingerprint = require_index$2.createPromptCacheModelFingerprint(identity, require_index$1.sha256Base64Url);
31
+ const key = require_index$2.createPromptCacheKey(cacheNamespace({
32
+ sessionId: execution.sessionId,
33
+ selection: execution.selection
34
+ }), "parent", modelFingerprint, require_index$1.sha256Base64Url);
35
+ const rewritten = require_index$3.rewritePromptCacheKey(payload, identity.api, key, true);
36
+ return rewritten === void 0 ? void 0 : { payload: rewritten };
37
+ }
38
+ }, {
39
+ event: "session_shutdown",
40
+ handle(_event, execution) {
41
+ execution.client.setStatus("doom-cache", void 0);
42
+ }
43
+ }];
44
+ //#endregion
45
+ exports.cacheHooks = cacheHooks;
46
+
47
+ //# sourceMappingURL=cacheHooks.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheHooks.cjs","names":["sha256Base64Url","canonicalJson","createPromptCacheModelFingerprint","createPromptCacheKey","rewritePromptCacheKey"],"sources":["../../../../../../../src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.ts"],"sourcesContent":["import { type DoomHeadlessHook } from '@agimon-ai/doompi-core/headless';\n\nimport { canonicalJson } from '../../../../../services/canonical';\nimport { sha256Base64Url } from '../../../../../services/digest';\nimport { createPromptCacheKey, createPromptCacheModelFingerprint } from '../../../../../services/namespace';\nimport { rewritePromptCacheKey } from '../../../../../services/providerPolicy';\nimport type { PromptCacheModelIdentity } from '../../../../../types/cache';\n\nfunction record(value: unknown): Readonly<Record<string, unknown>> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Readonly<Record<string, unknown>>)\n : {};\n}\n\nfunction modelIdentity(\n model: { provider: string; id: string } | undefined,\n payload: unknown,\n): PromptCacheModelIdentity {\n const request = record(payload);\n return {\n virtualProvider: model?.provider,\n virtualModel: model?.id,\n api: typeof request.api === 'string' ? request.api : undefined,\n wireModel: typeof request.model === 'string' ? request.model : undefined,\n };\n}\n\nfunction cacheNamespace(context: { sessionId: string; selection: Record<string, unknown> }): string {\n return `dph_${sha256Base64Url(canonicalJson({ version: 1, session: context.sessionId, selection: context.selection }))}`;\n}\n\nexport const cacheHooks: DoomHeadlessHook[] = [\n {\n event: 'before_provider_request',\n handle(event, execution) {\n const payload = record(event.payload);\n const identity = modelIdentity(execution.model, payload);\n const modelFingerprint = createPromptCacheModelFingerprint(identity, sha256Base64Url);\n const key = createPromptCacheKey(\n cacheNamespace({\n sessionId: execution.sessionId,\n selection: execution.selection as unknown as Record<string, unknown>,\n }),\n 'parent',\n modelFingerprint,\n sha256Base64Url,\n );\n const rewritten = rewritePromptCacheKey(payload, identity.api, key, true);\n return rewritten === undefined ? undefined : { payload: rewritten };\n },\n },\n {\n event: 'session_shutdown',\n handle(_event, execution) {\n execution.client.setStatus('doom-cache', undefined);\n },\n },\n];\n"],"mappings":";;;;;AAQA,SAAS,OAAO,OAAmD;CACjE,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK,IACrE,QACD,CAAC;AACP;AAEA,SAAS,cACP,OACA,SAC0B;CAC1B,MAAM,UAAU,OAAO,OAAO;CAC9B,OAAO;EACL,iBAAiB,OAAO;EACxB,cAAc,OAAO;EACrB,KAAK,OAAO,QAAQ,QAAQ,WAAW,QAAQ,MAAM,KAAA;EACrD,WAAW,OAAO,QAAQ,UAAU,WAAW,QAAQ,QAAQ,KAAA;CACjE;AACF;AAEA,SAAS,eAAe,SAA4E;CAClG,OAAO,OAAOA,gBAAAA,gBAAgBC,cAAAA,cAAc;EAAE,SAAS;EAAG,SAAS,QAAQ;EAAW,WAAW,QAAQ;CAAU,CAAC,CAAC;AACvH;AAEA,MAAa,aAAiC,CAC5C;CACE,OAAO;CACP,OAAO,OAAO,WAAW;EACvB,MAAM,UAAU,OAAO,MAAM,OAAO;EACpC,MAAM,WAAW,cAAc,UAAU,OAAO,OAAO;EACvD,MAAM,mBAAmBC,gBAAAA,kCAAkC,UAAUF,gBAAAA,eAAe;EACpF,MAAM,MAAMG,gBAAAA,qBACV,eAAe;GACb,WAAW,UAAU;GACrB,WAAW,UAAU;EACvB,CAAC,GACD,UACA,kBACAH,gBAAAA,eACF;EACA,MAAM,YAAYI,gBAAAA,sBAAsB,SAAS,SAAS,KAAK,KAAK,IAAI;EACxE,OAAO,cAAc,KAAA,IAAY,KAAA,IAAY,EAAE,SAAS,UAAU;CACpE;AACF,GACA;CACE,OAAO;CACP,OAAO,QAAQ,WAAW;EACxB,UAAU,OAAO,UAAU,cAAc,KAAA,CAAS;CACpD;AACF,CACF"}
@@ -0,0 +1,47 @@
1
+ import { canonicalJson } from "../../../../../services/canonical/index.mjs";
2
+ import { sha256Base64Url } from "../../../../../services/digest/index.mjs";
3
+ import { createPromptCacheKey, createPromptCacheModelFingerprint } from "../../../../../services/namespace/index.mjs";
4
+ import { rewritePromptCacheKey } from "../../../../../services/providerPolicy/index.mjs";
5
+ //#region src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.ts
6
+ function record(value) {
7
+ return typeof value === "object" && value !== null && !Array.isArray(value) ? value : {};
8
+ }
9
+ function modelIdentity(model, payload) {
10
+ const request = record(payload);
11
+ return {
12
+ virtualProvider: model?.provider,
13
+ virtualModel: model?.id,
14
+ api: typeof request.api === "string" ? request.api : void 0,
15
+ wireModel: typeof request.model === "string" ? request.model : void 0
16
+ };
17
+ }
18
+ function cacheNamespace(context) {
19
+ return `dph_${sha256Base64Url(canonicalJson({
20
+ version: 1,
21
+ session: context.sessionId,
22
+ selection: context.selection
23
+ }))}`;
24
+ }
25
+ const cacheHooks = [{
26
+ event: "before_provider_request",
27
+ handle(event, execution) {
28
+ const payload = record(event.payload);
29
+ const identity = modelIdentity(execution.model, payload);
30
+ const modelFingerprint = createPromptCacheModelFingerprint(identity, sha256Base64Url);
31
+ const key = createPromptCacheKey(cacheNamespace({
32
+ sessionId: execution.sessionId,
33
+ selection: execution.selection
34
+ }), "parent", modelFingerprint, sha256Base64Url);
35
+ const rewritten = rewritePromptCacheKey(payload, identity.api, key, true);
36
+ return rewritten === void 0 ? void 0 : { payload: rewritten };
37
+ }
38
+ }, {
39
+ event: "session_shutdown",
40
+ handle(_event, execution) {
41
+ execution.client.setStatus("doom-cache", void 0);
42
+ }
43
+ }];
44
+ //#endregion
45
+ export { cacheHooks };
46
+
47
+ //# sourceMappingURL=cacheHooks.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheHooks.mjs","names":[],"sources":["../../../../../../../src/extensions/workspaces/sessions/(backend)/_lib/cacheHooks.ts"],"sourcesContent":["import { type DoomHeadlessHook } from '@agimon-ai/doompi-core/headless';\n\nimport { canonicalJson } from '../../../../../services/canonical';\nimport { sha256Base64Url } from '../../../../../services/digest';\nimport { createPromptCacheKey, createPromptCacheModelFingerprint } from '../../../../../services/namespace';\nimport { rewritePromptCacheKey } from '../../../../../services/providerPolicy';\nimport type { PromptCacheModelIdentity } from '../../../../../types/cache';\n\nfunction record(value: unknown): Readonly<Record<string, unknown>> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Readonly<Record<string, unknown>>)\n : {};\n}\n\nfunction modelIdentity(\n model: { provider: string; id: string } | undefined,\n payload: unknown,\n): PromptCacheModelIdentity {\n const request = record(payload);\n return {\n virtualProvider: model?.provider,\n virtualModel: model?.id,\n api: typeof request.api === 'string' ? request.api : undefined,\n wireModel: typeof request.model === 'string' ? request.model : undefined,\n };\n}\n\nfunction cacheNamespace(context: { sessionId: string; selection: Record<string, unknown> }): string {\n return `dph_${sha256Base64Url(canonicalJson({ version: 1, session: context.sessionId, selection: context.selection }))}`;\n}\n\nexport const cacheHooks: DoomHeadlessHook[] = [\n {\n event: 'before_provider_request',\n handle(event, execution) {\n const payload = record(event.payload);\n const identity = modelIdentity(execution.model, payload);\n const modelFingerprint = createPromptCacheModelFingerprint(identity, sha256Base64Url);\n const key = createPromptCacheKey(\n cacheNamespace({\n sessionId: execution.sessionId,\n selection: execution.selection as unknown as Record<string, unknown>,\n }),\n 'parent',\n modelFingerprint,\n sha256Base64Url,\n );\n const rewritten = rewritePromptCacheKey(payload, identity.api, key, true);\n return rewritten === undefined ? undefined : { payload: rewritten };\n },\n },\n {\n event: 'session_shutdown',\n handle(_event, execution) {\n execution.client.setStatus('doom-cache', undefined);\n },\n },\n];\n"],"mappings":";;;;;AAQA,SAAS,OAAO,OAAmD;CACjE,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK,IACrE,QACD,CAAC;AACP;AAEA,SAAS,cACP,OACA,SAC0B;CAC1B,MAAM,UAAU,OAAO,OAAO;CAC9B,OAAO;EACL,iBAAiB,OAAO;EACxB,cAAc,OAAO;EACrB,KAAK,OAAO,QAAQ,QAAQ,WAAW,QAAQ,MAAM,KAAA;EACrD,WAAW,OAAO,QAAQ,UAAU,WAAW,QAAQ,QAAQ,KAAA;CACjE;AACF;AAEA,SAAS,eAAe,SAA4E;CAClG,OAAO,OAAO,gBAAgB,cAAc;EAAE,SAAS;EAAG,SAAS,QAAQ;EAAW,WAAW,QAAQ;CAAU,CAAC,CAAC;AACvH;AAEA,MAAa,aAAiC,CAC5C;CACE,OAAO;CACP,OAAO,OAAO,WAAW;EACvB,MAAM,UAAU,OAAO,MAAM,OAAO;EACpC,MAAM,WAAW,cAAc,UAAU,OAAO,OAAO;EACvD,MAAM,mBAAmB,kCAAkC,UAAU,eAAe;EACpF,MAAM,MAAM,qBACV,eAAe;GACb,WAAW,UAAU;GACrB,WAAW,UAAU;EACvB,CAAC,GACD,UACA,kBACA,eACF;EACA,MAAM,YAAY,sBAAsB,SAAS,SAAS,KAAK,KAAK,IAAI;EACxE,OAAO,cAAc,KAAA,IAAY,KAAA,IAAY,EAAE,SAAS,UAAU;CACpE;AACF,GACA;CACE,OAAO;CACP,OAAO,QAAQ,WAAW;EACxB,UAAU,OAAO,UAAU,cAAc,KAAA,CAAS;CACpD;AACF,CACF"}
@@ -0,0 +1,7 @@
1
+ const require_cacheHooks = require("../_lib/cacheHooks.cjs");
2
+ //#region src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.ts
3
+ var before_provider_request_server_default = (0, require("@agimon-ai/doompi-core/extension-file").defineHook)(require_cacheHooks.cacheHooks.find((hook) => hook.event === "before_provider_request"));
4
+ //#endregion
5
+ exports.default = before_provider_request_server_default;
6
+
7
+ //# sourceMappingURL=before-provider-request.server.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"before-provider-request.server.cjs","names":["defineHook","cacheHooks"],"sources":["../../../../../../../src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.ts"],"sourcesContent":["import { defineHook } from '@agimon-ai/doompi-core/extension-file';\n\nimport { cacheHooks } from '../_lib/cacheHooks';\nexport default defineHook(cacheHooks.find((hook) => hook.event === 'before_provider_request')!);\n"],"mappings":";;AAGA,IAAA,0CAAA,kDAAeA,CAAAA,CAAAA,WAAAA,CAAWC,mBAAAA,WAAW,MAAM,SAAS,KAAK,UAAU,yBAAyB,CAAE"}
@@ -0,0 +1,8 @@
1
+ import { cacheHooks } from "../_lib/cacheHooks.mjs";
2
+ import { defineHook } from "@agimon-ai/doompi-core/extension-file";
3
+ //#region src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.ts
4
+ var before_provider_request_server_default = defineHook(cacheHooks.find((hook) => hook.event === "before_provider_request"));
5
+ //#endregion
6
+ export { before_provider_request_server_default as default };
7
+
8
+ //# sourceMappingURL=before-provider-request.server.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"before-provider-request.server.mjs","names":[],"sources":["../../../../../../../src/extensions/workspaces/sessions/(backend)/hook/before-provider-request.server.ts"],"sourcesContent":["import { defineHook } from '@agimon-ai/doompi-core/extension-file';\n\nimport { cacheHooks } from '../_lib/cacheHooks';\nexport default defineHook(cacheHooks.find((hook) => hook.event === 'before_provider_request')!);\n"],"mappings":";;;AAGA,IAAA,yCAAe,WAAW,WAAW,MAAM,SAAS,KAAK,UAAU,yBAAyB,CAAE"}
@@ -0,0 +1,7 @@
1
+ const require_cacheHooks = require("../_lib/cacheHooks.cjs");
2
+ //#region src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.ts
3
+ var session_shutdown_server_default = (0, require("@agimon-ai/doompi-core/extension-file").defineHook)(require_cacheHooks.cacheHooks.find((hook) => hook.event === "session_shutdown"));
4
+ //#endregion
5
+ exports.default = session_shutdown_server_default;
6
+
7
+ //# sourceMappingURL=session-shutdown.server.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-shutdown.server.cjs","names":["defineHook","cacheHooks"],"sources":["../../../../../../../src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.ts"],"sourcesContent":["import { defineHook } from '@agimon-ai/doompi-core/extension-file';\n\nimport { cacheHooks } from '../_lib/cacheHooks';\nexport default defineHook(cacheHooks.find((hook) => hook.event === 'session_shutdown')!);\n"],"mappings":";;AAGA,IAAA,mCAAA,kDAAeA,CAAAA,CAAAA,WAAAA,CAAWC,mBAAAA,WAAW,MAAM,SAAS,KAAK,UAAU,kBAAkB,CAAE"}
@@ -0,0 +1,8 @@
1
+ import { cacheHooks } from "../_lib/cacheHooks.mjs";
2
+ import { defineHook } from "@agimon-ai/doompi-core/extension-file";
3
+ //#region src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.ts
4
+ var session_shutdown_server_default = defineHook(cacheHooks.find((hook) => hook.event === "session_shutdown"));
5
+ //#endregion
6
+ export { session_shutdown_server_default as default };
7
+
8
+ //# sourceMappingURL=session-shutdown.server.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-shutdown.server.mjs","names":[],"sources":["../../../../../../../src/extensions/workspaces/sessions/(backend)/hook/session-shutdown.server.ts"],"sourcesContent":["import { defineHook } from '@agimon-ai/doompi-core/extension-file';\n\nimport { cacheHooks } from '../_lib/cacheHooks';\nexport default defineHook(cacheHooks.find((hook) => hook.event === 'session_shutdown')!);\n"],"mappings":";;;AAGA,IAAA,kCAAe,WAAW,WAAW,MAAM,SAAS,KAAK,UAAU,kBAAkB,CAAE"}
@@ -0,0 +1,45 @@
1
+ //#region src/models/promptCacheTelemetry.ts
2
+ const DEFAULT_OBSERVATION_LIMIT = 64;
3
+ var PromptCacheTelemetry = class {
4
+ #limit;
5
+ #request = { capability: "unknown" };
6
+ #observations = [];
7
+ constructor(limit = DEFAULT_OBSERVATION_LIMIT) {
8
+ if (!Number.isInteger(limit) || limit < 1) throw new Error("Prompt cache telemetry limit must be a positive integer.");
9
+ this.#limit = limit;
10
+ }
11
+ beginRequest(status) {
12
+ this.#request = { ...status };
13
+ }
14
+ observe(usage, observedAt) {
15
+ const namespace = this.#request.namespace;
16
+ const modelFingerprint = this.#request.modelFingerprint;
17
+ if (!namespace || !modelFingerprint) return;
18
+ this.#observations.push({
19
+ namespace,
20
+ modelFingerprint,
21
+ cacheRead: usage.cacheRead,
22
+ cacheWrite: usage.cacheWrite,
23
+ totalInput: usage.totalInput,
24
+ observedAt
25
+ });
26
+ if (this.#observations.length > this.#limit) this.#observations.splice(0, this.#observations.length - this.#limit);
27
+ }
28
+ snapshot() {
29
+ const observations = [...this.#observations];
30
+ return {
31
+ ...this.#request,
32
+ residency: "unknown",
33
+ observations,
34
+ ...observations.length > 0 ? { lastObservation: observations.at(-1) } : {}
35
+ };
36
+ }
37
+ reset() {
38
+ this.#request = { capability: "unknown" };
39
+ this.#observations = [];
40
+ }
41
+ };
42
+ //#endregion
43
+ exports.PromptCacheTelemetry = PromptCacheTelemetry;
44
+
45
+ //# sourceMappingURL=promptCacheTelemetry.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptCacheTelemetry.cjs","names":[],"sources":["../../../src/models/promptCacheTelemetry.ts"],"sourcesContent":["import type {\n PromptCacheObservation,\n PromptCacheRequestStatus,\n PromptCacheTelemetryPort,\n PromptCacheTelemetrySnapshot,\n PromptCacheUsage,\n} from '../types/cache';\n\nconst DEFAULT_OBSERVATION_LIMIT = 64;\n\nexport class PromptCacheTelemetry implements PromptCacheTelemetryPort {\n readonly #limit: number;\n #request: PromptCacheRequestStatus = { capability: 'unknown' };\n #observations: PromptCacheObservation[] = [];\n\n constructor(limit: number = DEFAULT_OBSERVATION_LIMIT) {\n if (!Number.isInteger(limit) || limit < 1)\n throw new Error('Prompt cache telemetry limit must be a positive integer.');\n this.#limit = limit;\n }\n\n beginRequest(status: PromptCacheRequestStatus): void {\n this.#request = { ...status };\n }\n\n observe(usage: PromptCacheUsage, observedAt: number): void {\n const namespace = this.#request.namespace;\n const modelFingerprint = this.#request.modelFingerprint;\n if (!namespace || !modelFingerprint) return;\n\n this.#observations.push({\n namespace,\n modelFingerprint,\n cacheRead: usage.cacheRead,\n cacheWrite: usage.cacheWrite,\n totalInput: usage.totalInput,\n observedAt,\n });\n if (this.#observations.length > this.#limit) {\n this.#observations.splice(0, this.#observations.length - this.#limit);\n }\n }\n\n snapshot(): PromptCacheTelemetrySnapshot {\n const observations = [...this.#observations];\n return {\n ...this.#request,\n residency: 'unknown',\n observations,\n ...(observations.length > 0 ? { lastObservation: observations.at(-1) } : {}),\n };\n }\n\n reset(): void {\n this.#request = { capability: 'unknown' };\n this.#observations = [];\n }\n}\n"],"mappings":";AAQA,MAAM,4BAA4B;AAElC,IAAa,uBAAb,MAAsE;CACpE;CACA,WAAqC,EAAE,YAAY,UAAU;CAC7D,gBAA0C,CAAC;CAE3C,YAAY,QAAgB,2BAA2B;EACrD,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,QAAQ,GACtC,MAAM,IAAI,MAAM,0DAA0D;EAC5E,KAAK,SAAS;CAChB;CAEA,aAAa,QAAwC;EACnD,KAAK,WAAW,EAAE,GAAG,OAAO;CAC9B;CAEA,QAAQ,OAAyB,YAA0B;EACzD,MAAM,YAAY,KAAK,SAAS;EAChC,MAAM,mBAAmB,KAAK,SAAS;EACvC,IAAI,CAAC,aAAa,CAAC,kBAAkB;EAErC,KAAK,cAAc,KAAK;GACtB;GACA;GACA,WAAW,MAAM;GACjB,YAAY,MAAM;GAClB,YAAY,MAAM;GAClB;EACF,CAAC;EACD,IAAI,KAAK,cAAc,SAAS,KAAK,QACnC,KAAK,cAAc,OAAO,GAAG,KAAK,cAAc,SAAS,KAAK,MAAM;CAExE;CAEA,WAAyC;EACvC,MAAM,eAAe,CAAC,GAAG,KAAK,aAAa;EAC3C,OAAO;GACL,GAAG,KAAK;GACR,WAAW;GACX;GACA,GAAI,aAAa,SAAS,IAAI,EAAE,iBAAiB,aAAa,GAAG,EAAE,EAAE,IAAI,CAAC;EAC5E;CACF;CAEA,QAAc;EACZ,KAAK,WAAW,EAAE,YAAY,UAAU;EACxC,KAAK,gBAAgB,CAAC;CACxB;AACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptCacheTelemetry.d.cts","names":[],"sources":["../../../src/models/promptCacheTelemetry.ts"],"mappings":";;qBAUa,gCAAgC;;EAK3C,YAAY;EAMZ,aAAa,QAAQ;EAIrB,QAAQ,OAAO,kBAAkB;EAkBjC,YAAY;EAUZ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptCacheTelemetry.d.mts","names":[],"sources":["../../../src/models/promptCacheTelemetry.ts"],"mappings":";;qBAUa,gCAAgC;;EAK3C,YAAY;EAMZ,aAAa,QAAQ;EAIrB,QAAQ,OAAO,kBAAkB;EAkBjC,YAAY;EAUZ"}
@@ -0,0 +1,45 @@
1
+ //#region src/models/promptCacheTelemetry.ts
2
+ const DEFAULT_OBSERVATION_LIMIT = 64;
3
+ var PromptCacheTelemetry = class {
4
+ #limit;
5
+ #request = { capability: "unknown" };
6
+ #observations = [];
7
+ constructor(limit = DEFAULT_OBSERVATION_LIMIT) {
8
+ if (!Number.isInteger(limit) || limit < 1) throw new Error("Prompt cache telemetry limit must be a positive integer.");
9
+ this.#limit = limit;
10
+ }
11
+ beginRequest(status) {
12
+ this.#request = { ...status };
13
+ }
14
+ observe(usage, observedAt) {
15
+ const namespace = this.#request.namespace;
16
+ const modelFingerprint = this.#request.modelFingerprint;
17
+ if (!namespace || !modelFingerprint) return;
18
+ this.#observations.push({
19
+ namespace,
20
+ modelFingerprint,
21
+ cacheRead: usage.cacheRead,
22
+ cacheWrite: usage.cacheWrite,
23
+ totalInput: usage.totalInput,
24
+ observedAt
25
+ });
26
+ if (this.#observations.length > this.#limit) this.#observations.splice(0, this.#observations.length - this.#limit);
27
+ }
28
+ snapshot() {
29
+ const observations = [...this.#observations];
30
+ return {
31
+ ...this.#request,
32
+ residency: "unknown",
33
+ observations,
34
+ ...observations.length > 0 ? { lastObservation: observations.at(-1) } : {}
35
+ };
36
+ }
37
+ reset() {
38
+ this.#request = { capability: "unknown" };
39
+ this.#observations = [];
40
+ }
41
+ };
42
+ //#endregion
43
+ export { PromptCacheTelemetry };
44
+
45
+ //# sourceMappingURL=promptCacheTelemetry.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptCacheTelemetry.mjs","names":[],"sources":["../../../src/models/promptCacheTelemetry.ts"],"sourcesContent":["import type {\n PromptCacheObservation,\n PromptCacheRequestStatus,\n PromptCacheTelemetryPort,\n PromptCacheTelemetrySnapshot,\n PromptCacheUsage,\n} from '../types/cache';\n\nconst DEFAULT_OBSERVATION_LIMIT = 64;\n\nexport class PromptCacheTelemetry implements PromptCacheTelemetryPort {\n readonly #limit: number;\n #request: PromptCacheRequestStatus = { capability: 'unknown' };\n #observations: PromptCacheObservation[] = [];\n\n constructor(limit: number = DEFAULT_OBSERVATION_LIMIT) {\n if (!Number.isInteger(limit) || limit < 1)\n throw new Error('Prompt cache telemetry limit must be a positive integer.');\n this.#limit = limit;\n }\n\n beginRequest(status: PromptCacheRequestStatus): void {\n this.#request = { ...status };\n }\n\n observe(usage: PromptCacheUsage, observedAt: number): void {\n const namespace = this.#request.namespace;\n const modelFingerprint = this.#request.modelFingerprint;\n if (!namespace || !modelFingerprint) return;\n\n this.#observations.push({\n namespace,\n modelFingerprint,\n cacheRead: usage.cacheRead,\n cacheWrite: usage.cacheWrite,\n totalInput: usage.totalInput,\n observedAt,\n });\n if (this.#observations.length > this.#limit) {\n this.#observations.splice(0, this.#observations.length - this.#limit);\n }\n }\n\n snapshot(): PromptCacheTelemetrySnapshot {\n const observations = [...this.#observations];\n return {\n ...this.#request,\n residency: 'unknown',\n observations,\n ...(observations.length > 0 ? { lastObservation: observations.at(-1) } : {}),\n };\n }\n\n reset(): void {\n this.#request = { capability: 'unknown' };\n this.#observations = [];\n }\n}\n"],"mappings":";AAQA,MAAM,4BAA4B;AAElC,IAAa,uBAAb,MAAsE;CACpE;CACA,WAAqC,EAAE,YAAY,UAAU;CAC7D,gBAA0C,CAAC;CAE3C,YAAY,QAAgB,2BAA2B;EACrD,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,QAAQ,GACtC,MAAM,IAAI,MAAM,0DAA0D;EAC5E,KAAK,SAAS;CAChB;CAEA,aAAa,QAAwC;EACnD,KAAK,WAAW,EAAE,GAAG,OAAO;CAC9B;CAEA,QAAQ,OAAyB,YAA0B;EACzD,MAAM,YAAY,KAAK,SAAS;EAChC,MAAM,mBAAmB,KAAK,SAAS;EACvC,IAAI,CAAC,aAAa,CAAC,kBAAkB;EAErC,KAAK,cAAc,KAAK;GACtB;GACA;GACA,WAAW,MAAM;GACjB,YAAY,MAAM;GAClB,YAAY,MAAM;GAClB;EACF,CAAC;EACD,IAAI,KAAK,cAAc,SAAS,KAAK,QACnC,KAAK,cAAc,OAAO,GAAG,KAAK,cAAc,SAAS,KAAK,MAAM;CAExE;CAEA,WAAyC;EACvC,MAAM,eAAe,CAAC,GAAG,KAAK,aAAa;EAC3C,OAAO;GACL,GAAG,KAAK;GACR,WAAW;GACX;GACA,GAAI,aAAa,SAAS,IAAI,EAAE,iBAAiB,aAAa,GAAG,EAAE,EAAE,IAAI,CAAC;EAC5E;CACF;CAEA,QAAc;EACZ,KAAK,WAAW,EAAE,YAAY,UAAU;EACxC,KAAK,gBAAgB,CAAC;CACxB;AACF"}
@@ -0,0 +1,13 @@
1
+ //#region src/schemas/apiContracts.ts
2
+ /** This facet contributes agent tools, commands or lifecycle only, with no separate HTTP or socket surface. */
3
+ const apiContracts = (0, require("@agimon-ai/doompi-core/api-contracts").defineApiContract)({
4
+ version: 1,
5
+ http: [],
6
+ sockets: [],
7
+ dynamic: []
8
+ });
9
+ //#endregion
10
+ exports.apiContracts = apiContracts;
11
+ exports.default = apiContracts;
12
+
13
+ //# sourceMappingURL=apiContracts.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiContracts.cjs","names":["defineApiContract"],"sources":["../../../src/schemas/apiContracts.ts"],"sourcesContent":["import { defineApiContract } from '@agimon-ai/doompi-core/api-contracts';\n\n/** This facet contributes agent tools, commands or lifecycle only, with no separate HTTP or socket surface. */\nexport const apiContracts = defineApiContract({ version: 1, http: [], sockets: [], dynamic: [] });\nexport default apiContracts;\n"],"mappings":";;AAGA,MAAa,gBAAA,iDAAeA,CAAAA,CAAAA,kBAAAA,CAAkB;CAAE,SAAS;CAAG,MAAM,CAAC;CAAG,SAAS,CAAC;CAAG,SAAS,CAAC;AAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"apiContracts.d.cts","names":[],"sources":["../../src/schemas/apiContracts.ts"],"mappings":";;qBAGa"}
1
+ {"version":3,"file":"apiContracts.d.cts","names":[],"sources":["../../../src/schemas/apiContracts.ts"],"mappings":";;qBAGa"}
@@ -1 +1 @@
1
- {"version":3,"file":"apiContracts.d.mts","names":[],"sources":["../../src/schemas/apiContracts.ts"],"mappings":";;qBAGa"}
1
+ {"version":3,"file":"apiContracts.d.mts","names":[],"sources":["../../../src/schemas/apiContracts.ts"],"mappings":";;qBAGa"}
@@ -0,0 +1,13 @@
1
+ import { defineApiContract } from "@agimon-ai/doompi-core/api-contracts";
2
+ //#region src/schemas/apiContracts.ts
3
+ /** This facet contributes agent tools, commands or lifecycle only, with no separate HTTP or socket surface. */
4
+ const apiContracts = defineApiContract({
5
+ version: 1,
6
+ http: [],
7
+ sockets: [],
8
+ dynamic: []
9
+ });
10
+ //#endregion
11
+ export { apiContracts, apiContracts as default };
12
+
13
+ //# sourceMappingURL=apiContracts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiContracts.mjs","names":[],"sources":["../../../src/schemas/apiContracts.ts"],"sourcesContent":["import { defineApiContract } from '@agimon-ai/doompi-core/api-contracts';\n\n/** This facet contributes agent tools, commands or lifecycle only, with no separate HTTP or socket surface. */\nexport const apiContracts = defineApiContract({ version: 1, http: [], sockets: [], dynamic: [] });\nexport default apiContracts;\n"],"mappings":";;;AAGA,MAAa,eAAe,kBAAkB;CAAE,SAAS;CAAG,MAAM,CAAC;CAAG,SAAS,CAAC;CAAG,SAAS,CAAC;AAAE,CAAC"}
@@ -0,0 +1,28 @@
1
+ //#region src/services/canonical/index.ts
2
+ function canonicalNumber(value) {
3
+ if (!Number.isFinite(value)) throw new Error("Prompt cache identity cannot contain a non-finite number.");
4
+ return Object.is(value, -0) ? 0 : value;
5
+ }
6
+ function canonicalValue(value) {
7
+ if (value === null) return null;
8
+ if (typeof value === "string") return value.normalize("NFC");
9
+ if (typeof value === "boolean") return value;
10
+ if (typeof value === "number") return canonicalNumber(value);
11
+ if (Array.isArray(value)) return value.map((entry) => canonicalValue(entry));
12
+ if (typeof value !== "object") throw new Error(`Unsupported prompt cache identity value: ${typeof value}.`);
13
+ const record = value;
14
+ const result = {};
15
+ for (const key of Object.keys(record).sort((left, right) => left.localeCompare(right))) {
16
+ const entry = record[key];
17
+ if (entry !== void 0) result[key.normalize("NFC")] = canonicalValue(entry);
18
+ }
19
+ return result;
20
+ }
21
+ function canonicalJson(value) {
22
+ return JSON.stringify(canonicalValue(value));
23
+ }
24
+ //#endregion
25
+ exports.canonicalJson = canonicalJson;
26
+ exports.canonicalValue = canonicalValue;
27
+
28
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/services/canonical/index.ts"],"sourcesContent":["export type CanonicalValue = null | boolean | number | string | readonly CanonicalValue[] | CanonicalObject;\n\nexport interface CanonicalObject {\n readonly [key: string]: CanonicalValue;\n}\n\nfunction canonicalNumber(value: number): number {\n if (!Number.isFinite(value)) throw new Error('Prompt cache identity cannot contain a non-finite number.');\n return Object.is(value, -0) ? 0 : value;\n}\n\nexport function canonicalValue(value: unknown): CanonicalValue {\n if (value === null) return null;\n if (typeof value === 'string') return value.normalize('NFC');\n if (typeof value === 'boolean') return value;\n if (typeof value === 'number') return canonicalNumber(value);\n if (Array.isArray(value)) return value.map((entry) => canonicalValue(entry));\n if (typeof value !== 'object') throw new Error(`Unsupported prompt cache identity value: ${typeof value}.`);\n\n const record = value as Readonly<Record<string, unknown>>;\n const result: Record<string, CanonicalValue> = {};\n for (const key of Object.keys(record).sort((left, right) => left.localeCompare(right))) {\n const entry = record[key];\n if (entry !== undefined) result[key.normalize('NFC')] = canonicalValue(entry);\n }\n return result;\n}\n\nexport function canonicalJson(value: unknown): string {\n return JSON.stringify(canonicalValue(value));\n}\n"],"mappings":";AAMA,SAAS,gBAAgB,OAAuB;CAC9C,IAAI,CAAC,OAAO,SAAS,KAAK,GAAG,MAAM,IAAI,MAAM,2DAA2D;CACxG,OAAO,OAAO,GAAG,OAAO,EAAE,IAAI,IAAI;AACpC;AAEA,SAAgB,eAAe,OAAgC;CAC7D,IAAI,UAAU,MAAM,OAAO;CAC3B,IAAI,OAAO,UAAU,UAAU,OAAO,MAAM,UAAU,KAAK;CAC3D,IAAI,OAAO,UAAU,WAAW,OAAO;CACvC,IAAI,OAAO,UAAU,UAAU,OAAO,gBAAgB,KAAK;CAC3D,IAAI,MAAM,QAAQ,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,eAAe,KAAK,CAAC;CAC3E,IAAI,OAAO,UAAU,UAAU,MAAM,IAAI,MAAM,4CAA4C,OAAO,MAAM,EAAE;CAE1G,MAAM,SAAS;CACf,MAAM,SAAyC,CAAC;CAChD,KAAK,MAAM,OAAO,OAAO,KAAK,MAAM,CAAC,CAAC,MAAM,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC,GAAG;EACtF,MAAM,QAAQ,OAAO;EACrB,IAAI,UAAU,KAAA,GAAW,OAAO,IAAI,UAAU,KAAK,KAAK,eAAe,KAAK;CAC9E;CACA,OAAO;AACT;AAEA,SAAgB,cAAc,OAAwB;CACpD,OAAO,KAAK,UAAU,eAAe,KAAK,CAAC;AAC7C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../../../src/services/canonical/index.ts"],"mappings":";YAAY,6DAA6D,mBAAmB;iBAE3E;YACL,cAAc;;wBAQV,eAAe,iBAAiB;wBAiBhC,cAAc"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../../src/services/canonical/index.ts"],"mappings":";YAAY,6DAA6D,mBAAmB;iBAE3E;YACL,cAAc;;wBAQV,eAAe,iBAAiB;wBAiBhC,cAAc"}
@@ -0,0 +1,27 @@
1
+ //#region src/services/canonical/index.ts
2
+ function canonicalNumber(value) {
3
+ if (!Number.isFinite(value)) throw new Error("Prompt cache identity cannot contain a non-finite number.");
4
+ return Object.is(value, -0) ? 0 : value;
5
+ }
6
+ function canonicalValue(value) {
7
+ if (value === null) return null;
8
+ if (typeof value === "string") return value.normalize("NFC");
9
+ if (typeof value === "boolean") return value;
10
+ if (typeof value === "number") return canonicalNumber(value);
11
+ if (Array.isArray(value)) return value.map((entry) => canonicalValue(entry));
12
+ if (typeof value !== "object") throw new Error(`Unsupported prompt cache identity value: ${typeof value}.`);
13
+ const record = value;
14
+ const result = {};
15
+ for (const key of Object.keys(record).sort((left, right) => left.localeCompare(right))) {
16
+ const entry = record[key];
17
+ if (entry !== void 0) result[key.normalize("NFC")] = canonicalValue(entry);
18
+ }
19
+ return result;
20
+ }
21
+ function canonicalJson(value) {
22
+ return JSON.stringify(canonicalValue(value));
23
+ }
24
+ //#endregion
25
+ export { canonicalJson, canonicalValue };
26
+
27
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/services/canonical/index.ts"],"sourcesContent":["export type CanonicalValue = null | boolean | number | string | readonly CanonicalValue[] | CanonicalObject;\n\nexport interface CanonicalObject {\n readonly [key: string]: CanonicalValue;\n}\n\nfunction canonicalNumber(value: number): number {\n if (!Number.isFinite(value)) throw new Error('Prompt cache identity cannot contain a non-finite number.');\n return Object.is(value, -0) ? 0 : value;\n}\n\nexport function canonicalValue(value: unknown): CanonicalValue {\n if (value === null) return null;\n if (typeof value === 'string') return value.normalize('NFC');\n if (typeof value === 'boolean') return value;\n if (typeof value === 'number') return canonicalNumber(value);\n if (Array.isArray(value)) return value.map((entry) => canonicalValue(entry));\n if (typeof value !== 'object') throw new Error(`Unsupported prompt cache identity value: ${typeof value}.`);\n\n const record = value as Readonly<Record<string, unknown>>;\n const result: Record<string, CanonicalValue> = {};\n for (const key of Object.keys(record).sort((left, right) => left.localeCompare(right))) {\n const entry = record[key];\n if (entry !== undefined) result[key.normalize('NFC')] = canonicalValue(entry);\n }\n return result;\n}\n\nexport function canonicalJson(value: unknown): string {\n return JSON.stringify(canonicalValue(value));\n}\n"],"mappings":";AAMA,SAAS,gBAAgB,OAAuB;CAC9C,IAAI,CAAC,OAAO,SAAS,KAAK,GAAG,MAAM,IAAI,MAAM,2DAA2D;CACxG,OAAO,OAAO,GAAG,OAAO,EAAE,IAAI,IAAI;AACpC;AAEA,SAAgB,eAAe,OAAgC;CAC7D,IAAI,UAAU,MAAM,OAAO;CAC3B,IAAI,OAAO,UAAU,UAAU,OAAO,MAAM,UAAU,KAAK;CAC3D,IAAI,OAAO,UAAU,WAAW,OAAO;CACvC,IAAI,OAAO,UAAU,UAAU,OAAO,gBAAgB,KAAK;CAC3D,IAAI,MAAM,QAAQ,KAAK,GAAG,OAAO,MAAM,KAAK,UAAU,eAAe,KAAK,CAAC;CAC3E,IAAI,OAAO,UAAU,UAAU,MAAM,IAAI,MAAM,4CAA4C,OAAO,MAAM,EAAE;CAE1G,MAAM,SAAS;CACf,MAAM,SAAyC,CAAC;CAChD,KAAK,MAAM,OAAO,OAAO,KAAK,MAAM,CAAC,CAAC,MAAM,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC,GAAG;EACtF,MAAM,QAAQ,OAAO;EACrB,IAAI,UAAU,KAAA,GAAW,OAAO,IAAI,UAAU,KAAK,KAAK,eAAe,KAAK;CAC9E;CACA,OAAO;AACT;AAEA,SAAgB,cAAc,OAAwB;CACpD,OAAO,KAAK,UAAU,eAAe,KAAK,CAAC;AAC7C"}
@@ -0,0 +1,9 @@
1
+ let node_crypto = require("node:crypto");
2
+ //#region src/services/digest/index.ts
3
+ function sha256Base64Url(value) {
4
+ return (0, node_crypto.createHash)("sha256").update(value).digest("base64url");
5
+ }
6
+ //#endregion
7
+ exports.sha256Base64Url = sha256Base64Url;
8
+
9
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["createHash"],"sources":["../../../../src/services/digest/index.ts"],"sourcesContent":["import { createHash } from 'node:crypto';\n\nexport function sha256Base64Url(value: string): string {\n return createHash('sha256').update(value).digest('base64url');\n}\n"],"mappings":";;AAEA,SAAgB,gBAAgB,OAAuB;CACrD,QAAA,GAAOA,YAAAA,WAAAA,CAAW,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,WAAW;AAC9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/services/digest/index.ts"],"mappings":";wBAEgB,gBAAgB"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../../../src/services/digest/index.ts"],"mappings":";wBAEgB,gBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/services/digest/index.ts"],"mappings":";wBAEgB,gBAAgB"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../../src/services/digest/index.ts"],"mappings":";wBAEgB,gBAAgB"}
@@ -0,0 +1,9 @@
1
+ import { createHash } from "node:crypto";
2
+ //#region src/services/digest/index.ts
3
+ function sha256Base64Url(value) {
4
+ return createHash("sha256").update(value).digest("base64url");
5
+ }
6
+ //#endregion
7
+ export { sha256Base64Url };
8
+
9
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/services/digest/index.ts"],"sourcesContent":["import { createHash } from 'node:crypto';\n\nexport function sha256Base64Url(value: string): string {\n return createHash('sha256').update(value).digest('base64url');\n}\n"],"mappings":";;AAEA,SAAgB,gBAAgB,OAAuB;CACrD,OAAO,WAAW,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,WAAW;AAC9D"}
@@ -0,0 +1,78 @@
1
+ const require_index = require("../canonical/index.cjs");
2
+ //#region src/services/namespace/index.ts
3
+ const KEY_PREFIX = "dpc1_";
4
+ const PARENT_PREFIX = "dpn1_";
5
+ const CHILD_PREFIX = "dch1_";
6
+ const ROOT_PREFIX = "dpr1_";
7
+ const MODEL_PREFIX = "dpm1_";
8
+ function digestIdentity(prefix, value, digest) {
9
+ return `${prefix}${digest(require_index.canonicalJson(value))}`;
10
+ }
11
+ function normalizedPersona(value) {
12
+ return value?.trim().replaceAll("\\", "/") || void 0;
13
+ }
14
+ function activeMinorModes(modes) {
15
+ return modes.filter(({ activation }) => activation === "active" || activation === "activating").map(({ source, id, modelContextVariant }) => ({
16
+ source,
17
+ id,
18
+ ...modelContextVariant ? { modelContextVariant } : {}
19
+ })).sort((left, right) => left.source.localeCompare(right.source) || left.id.localeCompare(right.id));
20
+ }
21
+ function createRootSessionIdentity(rootSessionId, digest) {
22
+ return digestIdentity(ROOT_PREFIX, {
23
+ version: 1,
24
+ rootSessionId
25
+ }, digest);
26
+ }
27
+ function createParentPromptCacheNamespace(state, digest) {
28
+ return digestIdentity(PARENT_PREFIX, {
29
+ version: 1,
30
+ rootSession: createRootSessionIdentity(state.rootSessionId, digest),
31
+ compositionFingerprint: state.compositionFingerprint ?? null,
32
+ majorMode: state.majorMode,
33
+ domains: [...state.domains],
34
+ profile: state.profile ?? null,
35
+ persona: normalizedPersona(state.persona) ?? null,
36
+ minorModes: activeMinorModes(state.minorModes)
37
+ }, digest);
38
+ }
39
+ function createChildPromptCacheProjection(projection, digest) {
40
+ return digestIdentity(CHILD_PREFIX, {
41
+ version: 1,
42
+ systemPrompt: projection.systemPrompt ?? null,
43
+ tools: [...projection.tools],
44
+ excludedTools: [...projection.excludedTools].sort((left, right) => left.localeCompare(right)),
45
+ extensions: [...projection.extensions],
46
+ inheritProjectContext: projection.inheritProjectContext ?? null,
47
+ inheritSkills: projection.inheritSkills ?? null,
48
+ fanout: projection.fanout ?? null,
49
+ structuredOutputSchema: projection.structuredOutputSchema ?? null
50
+ }, digest);
51
+ }
52
+ function createPromptCacheModelFingerprint(model, digest) {
53
+ return digestIdentity(MODEL_PREFIX, {
54
+ version: 1,
55
+ virtualProvider: model.virtualProvider ?? null,
56
+ virtualModel: model.virtualModel ?? null,
57
+ api: model.api ?? null,
58
+ baseUrl: model.baseUrl ?? null,
59
+ wireModel: model.wireModel ?? null
60
+ }, digest);
61
+ }
62
+ function createPromptCacheKey(parentNamespace, scope, modelFingerprint, digest, childProjection) {
63
+ return digestIdentity(KEY_PREFIX, {
64
+ version: 1,
65
+ parentNamespace,
66
+ scope,
67
+ childProjection: childProjection ?? null,
68
+ modelFingerprint
69
+ }, digest);
70
+ }
71
+ //#endregion
72
+ exports.createChildPromptCacheProjection = createChildPromptCacheProjection;
73
+ exports.createParentPromptCacheNamespace = createParentPromptCacheNamespace;
74
+ exports.createPromptCacheKey = createPromptCacheKey;
75
+ exports.createPromptCacheModelFingerprint = createPromptCacheModelFingerprint;
76
+ exports.createRootSessionIdentity = createRootSessionIdentity;
77
+
78
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["canonicalJson"],"sources":["../../../../src/services/namespace/index.ts"],"sourcesContent":["import type {\n PromptCacheChildProjection,\n PromptCacheDigest,\n PromptCacheMinorModeState,\n PromptCacheModelIdentity,\n PromptCacheParentState,\n} from '../../types/cache';\nimport { canonicalJson } from '../canonical';\n\nconst KEY_PREFIX = 'dpc1_';\nconst PARENT_PREFIX = 'dpn1_';\nconst CHILD_PREFIX = 'dch1_';\nconst ROOT_PREFIX = 'dpr1_';\nconst MODEL_PREFIX = 'dpm1_';\n\nfunction digestIdentity(prefix: string, value: unknown, digest: PromptCacheDigest): string {\n return `${prefix}${digest(canonicalJson(value))}`;\n}\n\nfunction normalizedPersona(value: string | undefined): string | undefined {\n const normalized = value?.trim().replaceAll('\\\\', '/');\n return normalized || undefined;\n}\n\nfunction activeMinorModes(modes: readonly PromptCacheMinorModeState[]): readonly Record<string, string>[] {\n return modes\n .filter(({ activation }) => activation === 'active' || activation === 'activating')\n .map(({ source, id, modelContextVariant }) => ({\n source,\n id,\n ...(modelContextVariant ? { modelContextVariant } : {}),\n }))\n .sort((left, right) => left.source.localeCompare(right.source) || left.id.localeCompare(right.id));\n}\n\nexport function createRootSessionIdentity(rootSessionId: string, digest: PromptCacheDigest): string {\n return digestIdentity(ROOT_PREFIX, { version: 1, rootSessionId }, digest);\n}\n\nexport function createParentPromptCacheNamespace(state: PromptCacheParentState, digest: PromptCacheDigest): string {\n return digestIdentity(\n PARENT_PREFIX,\n {\n version: 1,\n rootSession: createRootSessionIdentity(state.rootSessionId, digest),\n compositionFingerprint: state.compositionFingerprint ?? null,\n majorMode: state.majorMode,\n domains: [...state.domains],\n profile: state.profile ?? null,\n persona: normalizedPersona(state.persona) ?? null,\n minorModes: activeMinorModes(state.minorModes),\n },\n digest,\n );\n}\n\nexport function createChildPromptCacheProjection(\n projection: PromptCacheChildProjection,\n digest: PromptCacheDigest,\n): string {\n return digestIdentity(\n CHILD_PREFIX,\n {\n version: 1,\n systemPrompt: projection.systemPrompt ?? null,\n tools: [...projection.tools],\n excludedTools: [...projection.excludedTools].sort((left, right) => left.localeCompare(right)),\n extensions: [...projection.extensions],\n inheritProjectContext: projection.inheritProjectContext ?? null,\n inheritSkills: projection.inheritSkills ?? null,\n fanout: projection.fanout ?? null,\n structuredOutputSchema: projection.structuredOutputSchema ?? null,\n },\n digest,\n );\n}\n\nexport function createPromptCacheModelFingerprint(model: PromptCacheModelIdentity, digest: PromptCacheDigest): string {\n return digestIdentity(\n MODEL_PREFIX,\n {\n version: 1,\n virtualProvider: model.virtualProvider ?? null,\n virtualModel: model.virtualModel ?? null,\n api: model.api ?? null,\n baseUrl: model.baseUrl ?? null,\n wireModel: model.wireModel ?? null,\n },\n digest,\n );\n}\n\nexport function createPromptCacheKey(\n parentNamespace: string,\n scope: 'parent' | 'child',\n modelFingerprint: string,\n digest: PromptCacheDigest,\n childProjection?: string,\n): string {\n return digestIdentity(\n KEY_PREFIX,\n {\n version: 1,\n parentNamespace,\n scope,\n childProjection: childProjection ?? null,\n modelFingerprint,\n },\n digest,\n );\n}\n"],"mappings":";;AASA,MAAM,aAAa;AACnB,MAAM,gBAAgB;AACtB,MAAM,eAAe;AACrB,MAAM,cAAc;AACpB,MAAM,eAAe;AAErB,SAAS,eAAe,QAAgB,OAAgB,QAAmC;CACzF,OAAO,GAAG,SAAS,OAAOA,cAAAA,cAAc,KAAK,CAAC;AAChD;AAEA,SAAS,kBAAkB,OAA+C;CAExE,OADmB,OAAO,KAAK,CAAC,CAAC,WAAW,MAAM,GAAG,KAChC,KAAA;AACvB;AAEA,SAAS,iBAAiB,OAAgF;CACxG,OAAO,MACJ,QAAQ,EAAE,iBAAiB,eAAe,YAAY,eAAe,YAAY,CAAC,CAClF,KAAK,EAAE,QAAQ,IAAI,2BAA2B;EAC7C;EACA;EACA,GAAI,sBAAsB,EAAE,oBAAoB,IAAI,CAAC;CACvD,EAAE,CAAC,CACF,MAAM,MAAM,UAAU,KAAK,OAAO,cAAc,MAAM,MAAM,KAAK,KAAK,GAAG,cAAc,MAAM,EAAE,CAAC;AACrG;AAEA,SAAgB,0BAA0B,eAAuB,QAAmC;CAClG,OAAO,eAAe,aAAa;EAAE,SAAS;EAAG;CAAc,GAAG,MAAM;AAC1E;AAEA,SAAgB,iCAAiC,OAA+B,QAAmC;CACjH,OAAO,eACL,eACA;EACE,SAAS;EACT,aAAa,0BAA0B,MAAM,eAAe,MAAM;EAClE,wBAAwB,MAAM,0BAA0B;EACxD,WAAW,MAAM;EACjB,SAAS,CAAC,GAAG,MAAM,OAAO;EAC1B,SAAS,MAAM,WAAW;EAC1B,SAAS,kBAAkB,MAAM,OAAO,KAAK;EAC7C,YAAY,iBAAiB,MAAM,UAAU;CAC/C,GACA,MACF;AACF;AAEA,SAAgB,iCACd,YACA,QACQ;CACR,OAAO,eACL,cACA;EACE,SAAS;EACT,cAAc,WAAW,gBAAgB;EACzC,OAAO,CAAC,GAAG,WAAW,KAAK;EAC3B,eAAe,CAAC,GAAG,WAAW,aAAa,CAAC,CAAC,MAAM,MAAM,UAAU,KAAK,cAAc,KAAK,CAAC;EAC5F,YAAY,CAAC,GAAG,WAAW,UAAU;EACrC,uBAAuB,WAAW,yBAAyB;EAC3D,eAAe,WAAW,iBAAiB;EAC3C,QAAQ,WAAW,UAAU;EAC7B,wBAAwB,WAAW,0BAA0B;CAC/D,GACA,MACF;AACF;AAEA,SAAgB,kCAAkC,OAAiC,QAAmC;CACpH,OAAO,eACL,cACA;EACE,SAAS;EACT,iBAAiB,MAAM,mBAAmB;EAC1C,cAAc,MAAM,gBAAgB;EACpC,KAAK,MAAM,OAAO;EAClB,SAAS,MAAM,WAAW;EAC1B,WAAW,MAAM,aAAa;CAChC,GACA,MACF;AACF;AAEA,SAAgB,qBACd,iBACA,OACA,kBACA,QACA,iBACQ;CACR,OAAO,eACL,YACA;EACE,SAAS;EACT;EACA;EACA,iBAAiB,mBAAmB;EACpC;CACF,GACA,MACF;AACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../../../src/services/namespace/index.ts"],"mappings":";;wBAmCgB,0BAA0B,uBAAuB,QAAQ;wBAIzD,iCAAiC,OAAO,wBAAwB,QAAQ;wBAiBxE,iCACd,YAAY,4BACZ,QAAQ;wBAmBM,kCAAkC,OAAO,0BAA0B,QAAQ;wBAe3E,qBACd,yBACA,2BACA,0BACA,QAAQ,mBACR"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../../../src/services/namespace/index.ts"],"mappings":";;wBAmCgB,0BAA0B,uBAAuB,QAAQ;wBAIzD,iCAAiC,OAAO,wBAAwB,QAAQ;wBAiBxE,iCACd,YAAY,4BACZ,QAAQ;wBAmBM,kCAAkC,OAAO,0BAA0B,QAAQ;wBAe3E,qBACd,yBACA,2BACA,0BACA,QAAQ,mBACR"}