@agimon-ai/doompi-cache 0.0.1-alpha.3 → 0.0.1-alpha.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -22
- package/dist/adapters/node/digest.d.cts +1 -2
- package/dist/adapters/node/digest.d.cts.map +1 -1
- package/dist/adapters/node/digest.d.mts +1 -2
- package/dist/adapters/node/digest.d.mts.map +1 -1
- package/dist/extensions/pi.cjs +1 -2
- package/dist/extensions/pi.cjs.map +1 -1
- package/dist/extensions/pi.d.cts +2 -2
- package/dist/extensions/pi.d.cts.map +1 -1
- package/dist/extensions/pi.d.mts +2 -2
- package/dist/extensions/pi.d.mts.map +1 -1
- package/dist/extensions/pi.mjs +1 -2
- package/dist/extensions/pi.mjs.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +1 -2
- package/dist/index.d.mts +1 -2
- package/dist/index.mjs +1 -1
- package/dist/pi-cache-optimizer-CHS6R_1P.mjs +59 -0
- package/dist/pi-cache-optimizer-CHS6R_1P.mjs.map +1 -0
- package/dist/pi-cache-optimizer-CTaHKnUK.cjs +59 -0
- package/dist/pi-cache-optimizer-CTaHKnUK.cjs.map +1 -0
- package/dist/providers/promptCacheTelemetry.d.cts +3 -4
- package/dist/providers/promptCacheTelemetry.d.cts.map +1 -1
- package/dist/providers/promptCacheTelemetry.d.mts +3 -4
- package/dist/providers/promptCacheTelemetry.d.mts.map +1 -1
- package/dist/services/canonical.d.cts +4 -5
- package/dist/services/canonical.d.cts.map +1 -1
- package/dist/services/canonical.d.mts +4 -5
- package/dist/services/canonical.d.mts.map +1 -1
- package/dist/services/namespace.d.cts +5 -6
- package/dist/services/namespace.d.cts.map +1 -1
- package/dist/services/namespace.d.mts +5 -6
- package/dist/services/namespace.d.mts.map +1 -1
- package/dist/services/providerPolicy.cjs +1 -1
- package/dist/services/providerPolicy.cjs.map +1 -1
- package/dist/services/providerPolicy.d.cts +3 -4
- package/dist/services/providerPolicy.d.cts.map +1 -1
- package/dist/services/providerPolicy.d.mts +3 -4
- package/dist/services/providerPolicy.d.mts.map +1 -1
- package/dist/services/providerPolicy.mjs +1 -1
- package/dist/services/providerPolicy.mjs.map +1 -1
- package/dist/services/telemetry.cjs +1 -1
- package/dist/services/telemetry.cjs.map +1 -1
- package/dist/services/telemetry.d.cts +1 -2
- package/dist/services/telemetry.d.cts.map +1 -1
- package/dist/services/telemetry.d.mts +1 -2
- package/dist/services/telemetry.d.mts.map +1 -1
- package/dist/services/telemetry.mjs +1 -1
- package/dist/services/telemetry.mjs.map +1 -1
- package/dist/types/cache.d.cts +11 -12
- package/dist/types/cache.d.cts.map +1 -1
- package/dist/types/cache.d.mts +11 -12
- package/dist/types/cache.d.mts.map +1 -1
- package/dist/types/environment.d.cts +5 -6
- package/dist/types/environment.d.cts.map +1 -1
- package/dist/types/environment.d.mts +5 -6
- package/dist/types/environment.d.mts.map +1 -1
- package/llms.txt +1 -1
- package/package.json +12 -12
- package/src/prompts/doompi-use-cache/SKILL.md +1 -2
- package/dist/pi-cache-optimizer-B7B911Pz.cjs +0 -54
- package/dist/pi-cache-optimizer-B7B911Pz.cjs.map +0 -1
- package/dist/pi-cache-optimizer-CjPVk06Q.mjs +0 -54
- package/dist/pi-cache-optimizer-CjPVk06Q.mjs.map +0 -1
- package/dist/services/status.cjs +0 -3
- package/dist/services/status.cjs.map +0 -1
- package/dist/services/status.d.cts +0 -6
- package/dist/services/status.d.cts.map +0 -1
- package/dist/services/status.d.mts +0 -6
- package/dist/services/status.d.mts.map +0 -1
- package/dist/services/status.mjs +0 -3
- package/dist/services/status.mjs.map +0 -1
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { PromptCacheTelemetryPort, PromptCacheTelemetrySnapshot } from "../types/cache.cjs";
|
|
2
2
|
import { Context, Service } from "@deepseek-ai/cordis";
|
|
3
3
|
//#region src/providers/promptCacheTelemetry.d.ts
|
|
4
|
-
declare const DOOM_PROMPT_CACHE_TELEMETRY_SERVICE = "doom/prompt-cache-telemetry";
|
|
5
|
-
declare class PromptCacheTelemetryService extends Service {
|
|
4
|
+
export declare const DOOM_PROMPT_CACHE_TELEMETRY_SERVICE = "doom/prompt-cache-telemetry";
|
|
5
|
+
export declare class PromptCacheTelemetryService extends Service {
|
|
6
6
|
private readonly telemetry;
|
|
7
7
|
constructor(context: Context, telemetry: PromptCacheTelemetryPort);
|
|
8
8
|
snapshot(): PromptCacheTelemetrySnapshot;
|
|
9
9
|
}
|
|
10
|
-
declare function readPromptCacheTelemetry(context: Context): PromptCacheTelemetryService | undefined;
|
|
10
|
+
export declare function readPromptCacheTelemetry(context: Context): PromptCacheTelemetryService | undefined;
|
|
11
11
|
declare module '@deepseek-ai/cordis' {
|
|
12
12
|
interface Context {
|
|
13
13
|
'doom/prompt-cache-telemetry': PromptCacheTelemetryService;
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
//#endregion
|
|
17
|
-
export { DOOM_PROMPT_CACHE_TELEMETRY_SERVICE, PromptCacheTelemetryService, readPromptCacheTelemetry };
|
|
18
17
|
//# sourceMappingURL=promptCacheTelemetry.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promptCacheTelemetry.d.cts","names":[],"sources":["../../src/providers/promptCacheTelemetry.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"promptCacheTelemetry.d.cts","names":[],"sources":["../../src/providers/promptCacheTelemetry.ts"],"mappings":";;;qBAGa;qBAEA,oCAAoC;mBAG5B;EAFnB,YACE,SAAS,SACQ,WAAW;EAK9B,YAAY;;wBAKE,yBAAyB,SAAS,UAAU;;YAKhD;IACR,+BAA+B"}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { PromptCacheTelemetryPort, PromptCacheTelemetrySnapshot } from "../types/cache.mjs";
|
|
2
2
|
import { Context, Service } from "@deepseek-ai/cordis";
|
|
3
3
|
//#region src/providers/promptCacheTelemetry.d.ts
|
|
4
|
-
declare const DOOM_PROMPT_CACHE_TELEMETRY_SERVICE = "doom/prompt-cache-telemetry";
|
|
5
|
-
declare class PromptCacheTelemetryService extends Service {
|
|
4
|
+
export declare const DOOM_PROMPT_CACHE_TELEMETRY_SERVICE = "doom/prompt-cache-telemetry";
|
|
5
|
+
export declare class PromptCacheTelemetryService extends Service {
|
|
6
6
|
private readonly telemetry;
|
|
7
7
|
constructor(context: Context, telemetry: PromptCacheTelemetryPort);
|
|
8
8
|
snapshot(): PromptCacheTelemetrySnapshot;
|
|
9
9
|
}
|
|
10
|
-
declare function readPromptCacheTelemetry(context: Context): PromptCacheTelemetryService | undefined;
|
|
10
|
+
export declare function readPromptCacheTelemetry(context: Context): PromptCacheTelemetryService | undefined;
|
|
11
11
|
declare module '@deepseek-ai/cordis' {
|
|
12
12
|
interface Context {
|
|
13
13
|
'doom/prompt-cache-telemetry': PromptCacheTelemetryService;
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
//#endregion
|
|
17
|
-
export { DOOM_PROMPT_CACHE_TELEMETRY_SERVICE, PromptCacheTelemetryService, readPromptCacheTelemetry };
|
|
18
17
|
//# sourceMappingURL=promptCacheTelemetry.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promptCacheTelemetry.d.mts","names":[],"sources":["../../src/providers/promptCacheTelemetry.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"promptCacheTelemetry.d.mts","names":[],"sources":["../../src/providers/promptCacheTelemetry.ts"],"mappings":";;;qBAGa;qBAEA,oCAAoC;mBAG5B;EAFnB,YACE,SAAS,SACQ,WAAW;EAK9B,YAAY;;wBAKE,yBAAyB,SAAS,UAAU;;YAKhD;IACR,+BAA+B"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
//#region src/services/canonical.d.ts
|
|
2
|
-
type CanonicalValue = null | boolean | number | string | readonly CanonicalValue[] | CanonicalObject;
|
|
3
|
-
interface CanonicalObject {
|
|
2
|
+
export type CanonicalValue = null | boolean | number | string | readonly CanonicalValue[] | CanonicalObject;
|
|
3
|
+
export interface CanonicalObject {
|
|
4
4
|
readonly [key: string]: CanonicalValue;
|
|
5
5
|
}
|
|
6
|
-
declare function canonicalValue(value: unknown): CanonicalValue;
|
|
7
|
-
declare function canonicalJson(value: unknown): string;
|
|
6
|
+
export declare function canonicalValue(value: unknown): CanonicalValue;
|
|
7
|
+
export declare function canonicalJson(value: unknown): string;
|
|
8
8
|
//#endregion
|
|
9
|
-
export { CanonicalObject, CanonicalValue, canonicalJson, canonicalValue };
|
|
10
9
|
//# sourceMappingURL=canonical.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical.d.cts","names":[],"sources":["../../src/services/canonical.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"canonical.d.cts","names":[],"sources":["../../src/services/canonical.ts"],"mappings":";YAAY,6DAA6D,mBAAmB;iBAE3E;YACL,cAAc;;wBAQV,eAAe,iBAAiB;wBAiBhC,cAAc"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
//#region src/services/canonical.d.ts
|
|
2
|
-
type CanonicalValue = null | boolean | number | string | readonly CanonicalValue[] | CanonicalObject;
|
|
3
|
-
interface CanonicalObject {
|
|
2
|
+
export type CanonicalValue = null | boolean | number | string | readonly CanonicalValue[] | CanonicalObject;
|
|
3
|
+
export interface CanonicalObject {
|
|
4
4
|
readonly [key: string]: CanonicalValue;
|
|
5
5
|
}
|
|
6
|
-
declare function canonicalValue(value: unknown): CanonicalValue;
|
|
7
|
-
declare function canonicalJson(value: unknown): string;
|
|
6
|
+
export declare function canonicalValue(value: unknown): CanonicalValue;
|
|
7
|
+
export declare function canonicalJson(value: unknown): string;
|
|
8
8
|
//#endregion
|
|
9
|
-
export { CanonicalObject, CanonicalValue, canonicalJson, canonicalValue };
|
|
10
9
|
//# sourceMappingURL=canonical.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical.d.mts","names":[],"sources":["../../src/services/canonical.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"canonical.d.mts","names":[],"sources":["../../src/services/canonical.ts"],"mappings":";YAAY,6DAA6D,mBAAmB;iBAE3E;YACL,cAAc;;wBAQV,eAAe,iBAAiB;wBAiBhC,cAAc"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { PromptCacheChildProjection, PromptCacheDigest, PromptCacheModelIdentity, PromptCacheParentState } from "../types/cache.cjs";
|
|
2
2
|
//#region src/services/namespace.d.ts
|
|
3
|
-
declare function createRootSessionIdentity(rootSessionId: string, digest: PromptCacheDigest): string;
|
|
4
|
-
declare function createParentPromptCacheNamespace(state: PromptCacheParentState, digest: PromptCacheDigest): string;
|
|
5
|
-
declare function createChildPromptCacheProjection(projection: PromptCacheChildProjection, digest: PromptCacheDigest): string;
|
|
6
|
-
declare function createPromptCacheModelFingerprint(model: PromptCacheModelIdentity, digest: PromptCacheDigest): string;
|
|
7
|
-
declare function createPromptCacheKey(parentNamespace: string, scope: 'parent' | 'child', modelFingerprint: string, digest: PromptCacheDigest, childProjection?: string): string;
|
|
3
|
+
export declare function createRootSessionIdentity(rootSessionId: string, digest: PromptCacheDigest): string;
|
|
4
|
+
export declare function createParentPromptCacheNamespace(state: PromptCacheParentState, digest: PromptCacheDigest): string;
|
|
5
|
+
export declare function createChildPromptCacheProjection(projection: PromptCacheChildProjection, digest: PromptCacheDigest): string;
|
|
6
|
+
export declare function createPromptCacheModelFingerprint(model: PromptCacheModelIdentity, digest: PromptCacheDigest): string;
|
|
7
|
+
export declare function createPromptCacheKey(parentNamespace: string, scope: 'parent' | 'child', modelFingerprint: string, digest: PromptCacheDigest, childProjection?: string): string;
|
|
8
8
|
//#endregion
|
|
9
|
-
export { createChildPromptCacheProjection, createParentPromptCacheNamespace, createPromptCacheKey, createPromptCacheModelFingerprint, createRootSessionIdentity };
|
|
10
9
|
//# sourceMappingURL=namespace.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.d.cts","names":[],"sources":["../../src/services/namespace.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"namespace.d.cts","names":[],"sources":["../../src/services/namespace.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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { PromptCacheChildProjection, PromptCacheDigest, PromptCacheModelIdentity, PromptCacheParentState } from "../types/cache.mjs";
|
|
2
2
|
//#region src/services/namespace.d.ts
|
|
3
|
-
declare function createRootSessionIdentity(rootSessionId: string, digest: PromptCacheDigest): string;
|
|
4
|
-
declare function createParentPromptCacheNamespace(state: PromptCacheParentState, digest: PromptCacheDigest): string;
|
|
5
|
-
declare function createChildPromptCacheProjection(projection: PromptCacheChildProjection, digest: PromptCacheDigest): string;
|
|
6
|
-
declare function createPromptCacheModelFingerprint(model: PromptCacheModelIdentity, digest: PromptCacheDigest): string;
|
|
7
|
-
declare function createPromptCacheKey(parentNamespace: string, scope: 'parent' | 'child', modelFingerprint: string, digest: PromptCacheDigest, childProjection?: string): string;
|
|
3
|
+
export declare function createRootSessionIdentity(rootSessionId: string, digest: PromptCacheDigest): string;
|
|
4
|
+
export declare function createParentPromptCacheNamespace(state: PromptCacheParentState, digest: PromptCacheDigest): string;
|
|
5
|
+
export declare function createChildPromptCacheProjection(projection: PromptCacheChildProjection, digest: PromptCacheDigest): string;
|
|
6
|
+
export declare function createPromptCacheModelFingerprint(model: PromptCacheModelIdentity, digest: PromptCacheDigest): string;
|
|
7
|
+
export declare function createPromptCacheKey(parentNamespace: string, scope: 'parent' | 'child', modelFingerprint: string, digest: PromptCacheDigest, childProjection?: string): string;
|
|
8
8
|
//#endregion
|
|
9
|
-
export { createChildPromptCacheProjection, createParentPromptCacheNamespace, createPromptCacheKey, createPromptCacheModelFingerprint, createRootSessionIdentity };
|
|
10
9
|
//# sourceMappingURL=namespace.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.d.mts","names":[],"sources":["../../src/services/namespace.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"namespace.d.mts","names":[],"sources":["../../src/services/namespace.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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=new Set([`openai-completions`,`openai-responses`,`openai-codex-responses`,`azure-openai-responses`]),t=new Set([`anthropic-messages`,`bedrock-converse-stream`]),n=new Set([`google-generative-ai`,`google-vertex`,`google-vertex-anthropic`]);function r(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function i(r){return r.api===`openai-responses`||r.api===`openai-completions`?r.virtualProvider===`openai`?`key-and-long-retention`:`key-only`:r.api&&e.has(r.api)?`key-only`:r.api&&t.has(r.api)?`marker-only`:r.api&&n.has(r.api)?`automatic`:`unknown`}function a(t,n,i,a){if(!a||!n||!e.has(n)||!r(t))return;let o=t.prompt_cache_key;if(
|
|
1
|
+
const e=new Set([`openai-completions`,`openai-responses`,`openai-codex-responses`,`azure-openai-responses`]),t=new Set([`anthropic-messages`,`bedrock-converse-stream`]),n=new Set([`google-generative-ai`,`google-vertex`,`google-vertex-anthropic`]);function r(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function i(r){return r.api===`openai-responses`||r.api===`openai-completions`?r.virtualProvider===`openai`?`key-and-long-retention`:`key-only`:r.api&&e.has(r.api)?`key-only`:r.api&&t.has(r.api)?`marker-only`:r.api&&n.has(r.api)?`automatic`:`unknown`}function a(t,n,i,a){if(!a||!n||!e.has(n)||!r(t))return;let o=t.prompt_cache_key;if(typeof o==`string`&&o.trim()&&o!==i)return{...t,prompt_cache_key:i}}function o(e){if(!r(e))return;let t=e.prompt_cache_retention;return typeof t==`string`&&t.trim()?t.trim():void 0}exports.classifyPromptCacheCapability=i,exports.requestedPromptCacheRetention=o,exports.rewritePromptCacheKey=a;
|
|
2
2
|
//# sourceMappingURL=providerPolicy.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerPolicy.cjs","names":[],"sources":["../../src/services/providerPolicy.ts"],"sourcesContent":["import type { PromptCacheCapabilityClass, PromptCacheModelIdentity } from '../types/cache.ts';\n\nconst ROUTING_KEY_APIS = new Set([\n 'openai-completions',\n 'openai-responses',\n 'openai-codex-responses',\n 'azure-openai-responses',\n]);\n\nconst MARKER_APIS = new Set(['anthropic-messages', 'bedrock-converse-stream']);\nconst AUTOMATIC_APIS = new Set(['google-generative-ai', 'google-vertex', 'google-vertex-anthropic']);\n\nfunction isRecord(value: unknown): value is Readonly<Record<string, unknown>> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nexport function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass {\n if (model.api === 'openai-responses' || model.api === 'openai-completions') {\n return model.virtualProvider === 'openai' ? 'key-and-long-retention' : 'key-only';\n }\n if (model.api && ROUTING_KEY_APIS.has(model.api)) return 'key-only';\n if (model.api && MARKER_APIS.has(model.api)) return 'marker-only';\n if (model.api && AUTOMATIC_APIS.has(model.api)) return 'automatic';\n return 'unknown';\n}\n\nexport function rewritePromptCacheKey(\n payload: unknown,\n api: string | undefined,\n key: string,\n enabled: boolean,\n): Record<string, unknown> | undefined {\n if (!enabled || !api || !ROUTING_KEY_APIS.has(api) || !isRecord(payload)) return undefined;\n const current = payload.prompt_cache_key;\n if (typeof current !== 'string' || !current.trim() || current === key) return undefined;\n return { ...payload, prompt_cache_key: key };\n}\n\nexport function requestedPromptCacheRetention(payload: unknown): string | undefined {\n if (!isRecord(payload)) return undefined;\n const retention = payload.prompt_cache_retention;\n return typeof retention === 'string' && retention.trim() ? retention.trim() : undefined;\n}\n"],"mappings":"AAEA,MAAM,EAAmB,IAAI,IAAI,CAC/B,qBACA,mBACA,yBACA,wBACF,CAAC,EAEK,EAAc,IAAI,IAAI,CAAC,qBAAsB,yBAAyB,CAAC,EACvE,EAAiB,IAAI,IAAI,CAAC,uBAAwB,gBAAiB,yBAAyB,CAAC,EAEnG,SAAS,EAAS,EAA4D,CAC5E,OAAO,OAAO,GAAU,YAAY,GAAkB,CAAC,MAAM,QAAQ,CAAK,CAC5E,CAEA,SAAgB,EAA8B,EAA6D,CAOzG,OANI,EAAM,MAAQ,oBAAsB,EAAM,MAAQ,qBAC7C,EAAM,kBAAoB,SAAW,yBAA2B,WAErE,EAAM,KAAO,EAAiB,IAAI,EAAM,GAAG,EAAU,WACrD,EAAM,KAAO,EAAY,IAAI,EAAM,GAAG,EAAU,cAChD,EAAM,KAAO,EAAe,IAAI,EAAM,GAAG,EAAU,YAChD,SACT,CAEA,SAAgB,EACd,EACA,EACA,EACA,EACqC,CACrC,GAAI,CAAC,GAAW,CAAC,GAAO,CAAC,EAAiB,IAAI,CAAG,GAAK,CAAC,EAAS,CAAO,EAAG,OAC1E,IAAM,EAAU,EAAQ,iBACpB,
|
|
1
|
+
{"version":3,"file":"providerPolicy.cjs","names":[],"sources":["../../src/services/providerPolicy.ts"],"sourcesContent":["import type { PromptCacheCapabilityClass, PromptCacheModelIdentity } from '../types/cache.ts';\n\nconst ROUTING_KEY_APIS = new Set([\n 'openai-completions',\n 'openai-responses',\n 'openai-codex-responses',\n 'azure-openai-responses',\n]);\n\nconst MARKER_APIS = new Set(['anthropic-messages', 'bedrock-converse-stream']);\nconst AUTOMATIC_APIS = new Set(['google-generative-ai', 'google-vertex', 'google-vertex-anthropic']);\n\nfunction isRecord(value: unknown): value is Readonly<Record<string, unknown>> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nexport function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass {\n if (model.api === 'openai-responses' || model.api === 'openai-completions') {\n return model.virtualProvider === 'openai' ? 'key-and-long-retention' : 'key-only';\n }\n if (model.api && ROUTING_KEY_APIS.has(model.api)) return 'key-only';\n if (model.api && MARKER_APIS.has(model.api)) return 'marker-only';\n if (model.api && AUTOMATIC_APIS.has(model.api)) return 'automatic';\n return 'unknown';\n}\n\nexport function rewritePromptCacheKey(\n payload: unknown,\n api: string | undefined,\n key: string,\n enabled: boolean,\n): Record<string, unknown> | undefined {\n if (!enabled || !api || !ROUTING_KEY_APIS.has(api) || !isRecord(payload)) return undefined;\n const current = payload.prompt_cache_key;\n if (typeof current !== 'string' || !current.trim() || current === key) return undefined;\n return { ...payload, prompt_cache_key: key };\n}\n\nexport function requestedPromptCacheRetention(payload: unknown): string | undefined {\n if (!isRecord(payload)) return undefined;\n const retention = payload.prompt_cache_retention;\n return typeof retention === 'string' && retention.trim() ? retention.trim() : undefined;\n}\n"],"mappings":"AAEA,MAAM,EAAmB,IAAI,IAAI,CAC/B,qBACA,mBACA,yBACA,wBACF,CAAC,EAEK,EAAc,IAAI,IAAI,CAAC,qBAAsB,yBAAyB,CAAC,EACvE,EAAiB,IAAI,IAAI,CAAC,uBAAwB,gBAAiB,yBAAyB,CAAC,EAEnG,SAAS,EAAS,EAA4D,CAC5E,OAAO,OAAO,GAAU,YAAY,GAAkB,CAAC,MAAM,QAAQ,CAAK,CAC5E,CAEA,SAAgB,EAA8B,EAA6D,CAOzG,OANI,EAAM,MAAQ,oBAAsB,EAAM,MAAQ,qBAC7C,EAAM,kBAAoB,SAAW,yBAA2B,WAErE,EAAM,KAAO,EAAiB,IAAI,EAAM,GAAG,EAAU,WACrD,EAAM,KAAO,EAAY,IAAI,EAAM,GAAG,EAAU,cAChD,EAAM,KAAO,EAAe,IAAI,EAAM,GAAG,EAAU,YAChD,SACT,CAEA,SAAgB,EACd,EACA,EACA,EACA,EACqC,CACrC,GAAI,CAAC,GAAW,CAAC,GAAO,CAAC,EAAiB,IAAI,CAAG,GAAK,CAAC,EAAS,CAAO,EAAG,OAC1E,IAAM,EAAU,EAAQ,iBACpB,UAAO,GAAY,UAAa,EAAQ,KAAK,GAAK,IAAY,EAClE,MAAO,CAAE,GAAG,EAAS,iBAAkB,CAAI,CAC7C,CAEA,SAAgB,EAA8B,EAAsC,CAClF,GAAI,CAAC,EAAS,CAAO,EAAG,OACxB,IAAM,EAAY,EAAQ,uBAC1B,OAAO,OAAO,GAAc,UAAY,EAAU,KAAK,EAAI,EAAU,KAAK,EAAI,IAAA,EAChF"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { PromptCacheCapabilityClass, PromptCacheModelIdentity } from "../types/cache.cjs";
|
|
2
2
|
//#region src/services/providerPolicy.d.ts
|
|
3
|
-
declare function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass;
|
|
4
|
-
declare function rewritePromptCacheKey(payload: unknown, api: string | undefined, key: string, enabled: boolean): Record<string, unknown> | undefined;
|
|
5
|
-
declare function requestedPromptCacheRetention(payload: unknown): string | undefined;
|
|
3
|
+
export declare function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass;
|
|
4
|
+
export declare function rewritePromptCacheKey(payload: unknown, api: string | undefined, key: string, enabled: boolean): Record<string, unknown> | undefined;
|
|
5
|
+
export declare function requestedPromptCacheRetention(payload: unknown): string | undefined;
|
|
6
6
|
//#endregion
|
|
7
|
-
export { classifyPromptCacheCapability, requestedPromptCacheRetention, rewritePromptCacheKey };
|
|
8
7
|
//# sourceMappingURL=providerPolicy.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerPolicy.d.cts","names":[],"sources":["../../src/services/providerPolicy.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"providerPolicy.d.cts","names":[],"sources":["../../src/services/providerPolicy.ts"],"mappings":";;wBAgBgB,8BAA8B,OAAO,2BAA2B;wBAUhE,sBACd,kBACA,yBACA,aACA,mBACC;wBAOa,8BAA8B"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { PromptCacheCapabilityClass, PromptCacheModelIdentity } from "../types/cache.mjs";
|
|
2
2
|
//#region src/services/providerPolicy.d.ts
|
|
3
|
-
declare function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass;
|
|
4
|
-
declare function rewritePromptCacheKey(payload: unknown, api: string | undefined, key: string, enabled: boolean): Record<string, unknown> | undefined;
|
|
5
|
-
declare function requestedPromptCacheRetention(payload: unknown): string | undefined;
|
|
3
|
+
export declare function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass;
|
|
4
|
+
export declare function rewritePromptCacheKey(payload: unknown, api: string | undefined, key: string, enabled: boolean): Record<string, unknown> | undefined;
|
|
5
|
+
export declare function requestedPromptCacheRetention(payload: unknown): string | undefined;
|
|
6
6
|
//#endregion
|
|
7
|
-
export { classifyPromptCacheCapability, requestedPromptCacheRetention, rewritePromptCacheKey };
|
|
8
7
|
//# sourceMappingURL=providerPolicy.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerPolicy.d.mts","names":[],"sources":["../../src/services/providerPolicy.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"providerPolicy.d.mts","names":[],"sources":["../../src/services/providerPolicy.ts"],"mappings":";;wBAgBgB,8BAA8B,OAAO,2BAA2B;wBAUhE,sBACd,kBACA,yBACA,aACA,mBACC;wBAOa,8BAA8B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=new Set([`openai-completions`,`openai-responses`,`openai-codex-responses`,`azure-openai-responses`]),t=new Set([`anthropic-messages`,`bedrock-converse-stream`]),n=new Set([`google-generative-ai`,`google-vertex`,`google-vertex-anthropic`]);function r(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function i(r){return r.api===`openai-responses`||r.api===`openai-completions`?r.virtualProvider===`openai`?`key-and-long-retention`:`key-only`:r.api&&e.has(r.api)?`key-only`:r.api&&t.has(r.api)?`marker-only`:r.api&&n.has(r.api)?`automatic`:`unknown`}function a(t,n,i,a){if(!a||!n||!e.has(n)||!r(t))return;let o=t.prompt_cache_key;if(
|
|
1
|
+
const e=new Set([`openai-completions`,`openai-responses`,`openai-codex-responses`,`azure-openai-responses`]),t=new Set([`anthropic-messages`,`bedrock-converse-stream`]),n=new Set([`google-generative-ai`,`google-vertex`,`google-vertex-anthropic`]);function r(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function i(r){return r.api===`openai-responses`||r.api===`openai-completions`?r.virtualProvider===`openai`?`key-and-long-retention`:`key-only`:r.api&&e.has(r.api)?`key-only`:r.api&&t.has(r.api)?`marker-only`:r.api&&n.has(r.api)?`automatic`:`unknown`}function a(t,n,i,a){if(!a||!n||!e.has(n)||!r(t))return;let o=t.prompt_cache_key;if(typeof o==`string`&&o.trim()&&o!==i)return{...t,prompt_cache_key:i}}function o(e){if(!r(e))return;let t=e.prompt_cache_retention;return typeof t==`string`&&t.trim()?t.trim():void 0}export{i as classifyPromptCacheCapability,o as requestedPromptCacheRetention,a as rewritePromptCacheKey};
|
|
2
2
|
//# sourceMappingURL=providerPolicy.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerPolicy.mjs","names":[],"sources":["../../src/services/providerPolicy.ts"],"sourcesContent":["import type { PromptCacheCapabilityClass, PromptCacheModelIdentity } from '../types/cache.ts';\n\nconst ROUTING_KEY_APIS = new Set([\n 'openai-completions',\n 'openai-responses',\n 'openai-codex-responses',\n 'azure-openai-responses',\n]);\n\nconst MARKER_APIS = new Set(['anthropic-messages', 'bedrock-converse-stream']);\nconst AUTOMATIC_APIS = new Set(['google-generative-ai', 'google-vertex', 'google-vertex-anthropic']);\n\nfunction isRecord(value: unknown): value is Readonly<Record<string, unknown>> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nexport function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass {\n if (model.api === 'openai-responses' || model.api === 'openai-completions') {\n return model.virtualProvider === 'openai' ? 'key-and-long-retention' : 'key-only';\n }\n if (model.api && ROUTING_KEY_APIS.has(model.api)) return 'key-only';\n if (model.api && MARKER_APIS.has(model.api)) return 'marker-only';\n if (model.api && AUTOMATIC_APIS.has(model.api)) return 'automatic';\n return 'unknown';\n}\n\nexport function rewritePromptCacheKey(\n payload: unknown,\n api: string | undefined,\n key: string,\n enabled: boolean,\n): Record<string, unknown> | undefined {\n if (!enabled || !api || !ROUTING_KEY_APIS.has(api) || !isRecord(payload)) return undefined;\n const current = payload.prompt_cache_key;\n if (typeof current !== 'string' || !current.trim() || current === key) return undefined;\n return { ...payload, prompt_cache_key: key };\n}\n\nexport function requestedPromptCacheRetention(payload: unknown): string | undefined {\n if (!isRecord(payload)) return undefined;\n const retention = payload.prompt_cache_retention;\n return typeof retention === 'string' && retention.trim() ? retention.trim() : undefined;\n}\n"],"mappings":"AAEA,MAAM,EAAmB,IAAI,IAAI,CAC/B,qBACA,mBACA,yBACA,wBACF,CAAC,EAEK,EAAc,IAAI,IAAI,CAAC,qBAAsB,yBAAyB,CAAC,EACvE,EAAiB,IAAI,IAAI,CAAC,uBAAwB,gBAAiB,yBAAyB,CAAC,EAEnG,SAAS,EAAS,EAA4D,CAC5E,OAAO,OAAO,GAAU,YAAY,GAAkB,CAAC,MAAM,QAAQ,CAAK,CAC5E,CAEA,SAAgB,EAA8B,EAA6D,CAOzG,OANI,EAAM,MAAQ,oBAAsB,EAAM,MAAQ,qBAC7C,EAAM,kBAAoB,SAAW,yBAA2B,WAErE,EAAM,KAAO,EAAiB,IAAI,EAAM,GAAG,EAAU,WACrD,EAAM,KAAO,EAAY,IAAI,EAAM,GAAG,EAAU,cAChD,EAAM,KAAO,EAAe,IAAI,EAAM,GAAG,EAAU,YAChD,SACT,CAEA,SAAgB,EACd,EACA,EACA,EACA,EACqC,CACrC,GAAI,CAAC,GAAW,CAAC,GAAO,CAAC,EAAiB,IAAI,CAAG,GAAK,CAAC,EAAS,CAAO,EAAG,OAC1E,IAAM,EAAU,EAAQ,iBACpB,
|
|
1
|
+
{"version":3,"file":"providerPolicy.mjs","names":[],"sources":["../../src/services/providerPolicy.ts"],"sourcesContent":["import type { PromptCacheCapabilityClass, PromptCacheModelIdentity } from '../types/cache.ts';\n\nconst ROUTING_KEY_APIS = new Set([\n 'openai-completions',\n 'openai-responses',\n 'openai-codex-responses',\n 'azure-openai-responses',\n]);\n\nconst MARKER_APIS = new Set(['anthropic-messages', 'bedrock-converse-stream']);\nconst AUTOMATIC_APIS = new Set(['google-generative-ai', 'google-vertex', 'google-vertex-anthropic']);\n\nfunction isRecord(value: unknown): value is Readonly<Record<string, unknown>> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nexport function classifyPromptCacheCapability(model: PromptCacheModelIdentity): PromptCacheCapabilityClass {\n if (model.api === 'openai-responses' || model.api === 'openai-completions') {\n return model.virtualProvider === 'openai' ? 'key-and-long-retention' : 'key-only';\n }\n if (model.api && ROUTING_KEY_APIS.has(model.api)) return 'key-only';\n if (model.api && MARKER_APIS.has(model.api)) return 'marker-only';\n if (model.api && AUTOMATIC_APIS.has(model.api)) return 'automatic';\n return 'unknown';\n}\n\nexport function rewritePromptCacheKey(\n payload: unknown,\n api: string | undefined,\n key: string,\n enabled: boolean,\n): Record<string, unknown> | undefined {\n if (!enabled || !api || !ROUTING_KEY_APIS.has(api) || !isRecord(payload)) return undefined;\n const current = payload.prompt_cache_key;\n if (typeof current !== 'string' || !current.trim() || current === key) return undefined;\n return { ...payload, prompt_cache_key: key };\n}\n\nexport function requestedPromptCacheRetention(payload: unknown): string | undefined {\n if (!isRecord(payload)) return undefined;\n const retention = payload.prompt_cache_retention;\n return typeof retention === 'string' && retention.trim() ? retention.trim() : undefined;\n}\n"],"mappings":"AAEA,MAAM,EAAmB,IAAI,IAAI,CAC/B,qBACA,mBACA,yBACA,wBACF,CAAC,EAEK,EAAc,IAAI,IAAI,CAAC,qBAAsB,yBAAyB,CAAC,EACvE,EAAiB,IAAI,IAAI,CAAC,uBAAwB,gBAAiB,yBAAyB,CAAC,EAEnG,SAAS,EAAS,EAA4D,CAC5E,OAAO,OAAO,GAAU,YAAY,GAAkB,CAAC,MAAM,QAAQ,CAAK,CAC5E,CAEA,SAAgB,EAA8B,EAA6D,CAOzG,OANI,EAAM,MAAQ,oBAAsB,EAAM,MAAQ,qBAC7C,EAAM,kBAAoB,SAAW,yBAA2B,WAErE,EAAM,KAAO,EAAiB,IAAI,EAAM,GAAG,EAAU,WACrD,EAAM,KAAO,EAAY,IAAI,EAAM,GAAG,EAAU,cAChD,EAAM,KAAO,EAAe,IAAI,EAAM,GAAG,EAAU,YAChD,SACT,CAEA,SAAgB,EACd,EACA,EACA,EACA,EACqC,CACrC,GAAI,CAAC,GAAW,CAAC,GAAO,CAAC,EAAiB,IAAI,CAAG,GAAK,CAAC,EAAS,CAAO,EAAG,OAC1E,IAAM,EAAU,EAAQ,iBACpB,UAAO,GAAY,UAAa,EAAQ,KAAK,GAAK,IAAY,EAClE,MAAO,CAAE,GAAG,EAAS,iBAAkB,CAAI,CAC7C,CAEA,SAAgB,EAA8B,EAAsC,CAClF,GAAI,CAAC,EAAS,CAAO,EAAG,OACxB,IAAM,EAAY,EAAQ,uBAC1B,OAAO,OAAO,GAAc,UAAY,EAAU,KAAK,EAAI,EAAU,KAAK,EAAI,IAAA,EAChF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e=class{#e;#t={capability:`unknown`};#n=[];constructor(e=64){if(!Number.isInteger(e)||e<1)throw Error(`Prompt cache telemetry limit must be a positive integer.`);this.#e=e}beginRequest(e){this.#t={...e}}observe(e,t){let n=this.#t.namespace,r=this.#t.modelFingerprint
|
|
1
|
+
var e=class{#e;#t={capability:`unknown`};#n=[];constructor(e=64){if(!Number.isInteger(e)||e<1)throw Error(`Prompt cache telemetry limit must be a positive integer.`);this.#e=e}beginRequest(e){this.#t={...e}}observe(e,t){let n=this.#t.namespace,r=this.#t.modelFingerprint;n&&r&&(this.#n.push({namespace:n,modelFingerprint:r,cacheRead:e.cacheRead,cacheWrite:e.cacheWrite,totalInput:e.totalInput,observedAt:t}),this.#n.length>this.#e&&this.#n.splice(0,this.#n.length-this.#e))}snapshot(){let e=[...this.#n];return{...this.#t,residency:`unknown`,observations:e,...e.length>0?{lastObservation:e.at(-1)}:{}}}reset(){this.#t={capability:`unknown`},this.#n=[]}};exports.PromptCacheTelemetry=e;
|
|
2
2
|
//# sourceMappingURL=telemetry.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.cjs","names":[
|
|
1
|
+
{"version":3,"file":"telemetry.cjs","names":[],"sources":["../../src/services/telemetry.ts"],"sourcesContent":["import type {\n PromptCacheObservation,\n PromptCacheRequestStatus,\n PromptCacheTelemetryPort,\n PromptCacheTelemetrySnapshot,\n PromptCacheUsage,\n} from '../types/cache.ts';\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":"AAUA,IAAa,EAAb,KAAsE,CACpE,GACA,GAAqC,CAAE,WAAY,SAAU,EAC7D,GAA0C,CAAC,EAE3C,YAAY,EAAgB,GAA2B,CACrD,GAAI,CAAC,OAAO,UAAU,CAAK,GAAK,EAAQ,EACtC,MAAU,MAAM,0DAA0D,EAC5E,KAAK,GAAS,CAChB,CAEA,aAAa,EAAwC,CACnD,KAAK,GAAW,CAAE,GAAG,CAAO,CAC9B,CAEA,QAAQ,EAAyB,EAA0B,CACzD,IAAM,EAAY,KAAK,GAAS,UAC1B,EAAmB,KAAK,GAAS,iBAClC,GAAc,IAEnB,KAAK,GAAc,KAAK,CACtB,YACA,mBACA,UAAW,EAAM,UACjB,WAAY,EAAM,WAClB,WAAY,EAAM,WAClB,YACF,CAAC,EACG,KAAK,GAAc,OAAS,KAAK,IACnC,KAAK,GAAc,OAAO,EAAG,KAAK,GAAc,OAAS,KAAK,EAAM,EAExE,CAEA,UAAyC,CACvC,IAAM,EAAe,CAAC,GAAG,KAAK,EAAa,EAC3C,MAAO,CACL,GAAG,KAAK,GACR,UAAW,UACX,eACA,GAAI,EAAa,OAAS,EAAI,CAAE,gBAAiB,EAAa,GAAG,EAAE,CAAE,EAAI,CAAC,CAC5E,CACF,CAEA,OAAc,CACZ,KAAK,GAAW,CAAE,WAAY,SAAU,EACxC,KAAK,GAAgB,CAAC,CACxB,CACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PromptCacheRequestStatus, PromptCacheTelemetryPort, PromptCacheTelemetrySnapshot, PromptCacheUsage } from "../types/cache.cjs";
|
|
2
2
|
//#region src/services/telemetry.d.ts
|
|
3
|
-
declare class PromptCacheTelemetry implements PromptCacheTelemetryPort {
|
|
3
|
+
export declare class PromptCacheTelemetry implements PromptCacheTelemetryPort {
|
|
4
4
|
#private;
|
|
5
5
|
constructor(limit?: number);
|
|
6
6
|
beginRequest(status: PromptCacheRequestStatus): void;
|
|
@@ -9,5 +9,4 @@ declare class PromptCacheTelemetry implements PromptCacheTelemetryPort {
|
|
|
9
9
|
reset(): void;
|
|
10
10
|
}
|
|
11
11
|
//#endregion
|
|
12
|
-
export { PromptCacheTelemetry };
|
|
13
12
|
//# sourceMappingURL=telemetry.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.d.cts","names":[],"sources":["../../src/services/telemetry.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"telemetry.d.cts","names":[],"sources":["../../src/services/telemetry.ts"],"mappings":";;qBAUa,gCAAgC;;EAK3C,YAAY;EAMZ,aAAa,QAAQ;EAIrB,QAAQ,OAAO,kBAAkB;EAkBjC,YAAY;EAUZ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PromptCacheRequestStatus, PromptCacheTelemetryPort, PromptCacheTelemetrySnapshot, PromptCacheUsage } from "../types/cache.mjs";
|
|
2
2
|
//#region src/services/telemetry.d.ts
|
|
3
|
-
declare class PromptCacheTelemetry implements PromptCacheTelemetryPort {
|
|
3
|
+
export declare class PromptCacheTelemetry implements PromptCacheTelemetryPort {
|
|
4
4
|
#private;
|
|
5
5
|
constructor(limit?: number);
|
|
6
6
|
beginRequest(status: PromptCacheRequestStatus): void;
|
|
@@ -9,5 +9,4 @@ declare class PromptCacheTelemetry implements PromptCacheTelemetryPort {
|
|
|
9
9
|
reset(): void;
|
|
10
10
|
}
|
|
11
11
|
//#endregion
|
|
12
|
-
export { PromptCacheTelemetry };
|
|
13
12
|
//# sourceMappingURL=telemetry.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.d.mts","names":[],"sources":["../../src/services/telemetry.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"telemetry.d.mts","names":[],"sources":["../../src/services/telemetry.ts"],"mappings":";;qBAUa,gCAAgC;;EAK3C,YAAY;EAMZ,aAAa,QAAQ;EAIrB,QAAQ,OAAO,kBAAkB;EAkBjC,YAAY;EAUZ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e=class{#e;#t={capability:`unknown`};#n=[];constructor(e=64){if(!Number.isInteger(e)||e<1)throw Error(`Prompt cache telemetry limit must be a positive integer.`);this.#e=e}beginRequest(e){this.#t={...e}}observe(e,t){let n=this.#t.namespace,r=this.#t.modelFingerprint
|
|
1
|
+
var e=class{#e;#t={capability:`unknown`};#n=[];constructor(e=64){if(!Number.isInteger(e)||e<1)throw Error(`Prompt cache telemetry limit must be a positive integer.`);this.#e=e}beginRequest(e){this.#t={...e}}observe(e,t){let n=this.#t.namespace,r=this.#t.modelFingerprint;n&&r&&(this.#n.push({namespace:n,modelFingerprint:r,cacheRead:e.cacheRead,cacheWrite:e.cacheWrite,totalInput:e.totalInput,observedAt:t}),this.#n.length>this.#e&&this.#n.splice(0,this.#n.length-this.#e))}snapshot(){let e=[...this.#n];return{...this.#t,residency:`unknown`,observations:e,...e.length>0?{lastObservation:e.at(-1)}:{}}}reset(){this.#t={capability:`unknown`},this.#n=[]}};export{e as PromptCacheTelemetry};
|
|
2
2
|
//# sourceMappingURL=telemetry.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.mjs","names":[
|
|
1
|
+
{"version":3,"file":"telemetry.mjs","names":[],"sources":["../../src/services/telemetry.ts"],"sourcesContent":["import type {\n PromptCacheObservation,\n PromptCacheRequestStatus,\n PromptCacheTelemetryPort,\n PromptCacheTelemetrySnapshot,\n PromptCacheUsage,\n} from '../types/cache.ts';\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":"AAUA,IAAa,EAAb,KAAsE,CACpE,GACA,GAAqC,CAAE,WAAY,SAAU,EAC7D,GAA0C,CAAC,EAE3C,YAAY,EAAgB,GAA2B,CACrD,GAAI,CAAC,OAAO,UAAU,CAAK,GAAK,EAAQ,EACtC,MAAU,MAAM,0DAA0D,EAC5E,KAAK,GAAS,CAChB,CAEA,aAAa,EAAwC,CACnD,KAAK,GAAW,CAAE,GAAG,CAAO,CAC9B,CAEA,QAAQ,EAAyB,EAA0B,CACzD,IAAM,EAAY,KAAK,GAAS,UAC1B,EAAmB,KAAK,GAAS,iBAClC,GAAc,IAEnB,KAAK,GAAc,KAAK,CACtB,YACA,mBACA,UAAW,EAAM,UACjB,WAAY,EAAM,WAClB,WAAY,EAAM,WAClB,YACF,CAAC,EACG,KAAK,GAAc,OAAS,KAAK,IACnC,KAAK,GAAc,OAAO,EAAG,KAAK,GAAc,OAAS,KAAK,EAAM,EAExE,CAEA,UAAyC,CACvC,IAAM,EAAe,CAAC,GAAG,KAAK,EAAa,EAC3C,MAAO,CACL,GAAG,KAAK,GACR,UAAW,UACX,eACA,GAAI,EAAa,OAAS,EAAI,CAAE,gBAAiB,EAAa,GAAG,EAAE,CAAE,EAAI,CAAC,CAC5E,CACF,CAEA,OAAc,CACZ,KAAK,GAAW,CAAE,WAAY,SAAU,EACxC,KAAK,GAAgB,CAAC,CACxB,CACF"}
|
package/dist/types/cache.d.cts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
//#region src/types/cache.d.ts
|
|
2
|
-
type PromptCacheCapabilityClass = 'key-and-long-retention' | 'key-only' | 'marker-only' | 'automatic' | 'unknown';
|
|
3
|
-
interface PromptCacheMinorModeState {
|
|
2
|
+
export type PromptCacheCapabilityClass = 'key-and-long-retention' | 'key-only' | 'marker-only' | 'automatic' | 'unknown';
|
|
3
|
+
export interface PromptCacheMinorModeState {
|
|
4
4
|
readonly source: string;
|
|
5
5
|
readonly id: string;
|
|
6
6
|
readonly activation: string;
|
|
7
7
|
readonly modelContextVariant?: string;
|
|
8
8
|
}
|
|
9
|
-
interface PromptCacheParentState {
|
|
9
|
+
export interface PromptCacheParentState {
|
|
10
10
|
readonly rootSessionId: string;
|
|
11
11
|
readonly compositionFingerprint?: string;
|
|
12
12
|
readonly majorMode: string;
|
|
@@ -15,7 +15,7 @@ interface PromptCacheParentState {
|
|
|
15
15
|
readonly persona?: string;
|
|
16
16
|
readonly minorModes: readonly PromptCacheMinorModeState[];
|
|
17
17
|
}
|
|
18
|
-
interface PromptCacheChildProjection {
|
|
18
|
+
export interface PromptCacheChildProjection {
|
|
19
19
|
readonly systemPrompt?: string;
|
|
20
20
|
readonly tools: readonly string[];
|
|
21
21
|
readonly excludedTools: readonly string[];
|
|
@@ -25,44 +25,43 @@ interface PromptCacheChildProjection {
|
|
|
25
25
|
readonly fanout?: boolean;
|
|
26
26
|
readonly structuredOutputSchema?: unknown;
|
|
27
27
|
}
|
|
28
|
-
interface PromptCacheModelIdentity {
|
|
28
|
+
export interface PromptCacheModelIdentity {
|
|
29
29
|
readonly virtualProvider?: string;
|
|
30
30
|
readonly virtualModel?: string;
|
|
31
31
|
readonly api?: string;
|
|
32
32
|
readonly baseUrl?: string;
|
|
33
33
|
readonly wireModel?: string;
|
|
34
34
|
}
|
|
35
|
-
interface PromptCacheDigest {
|
|
35
|
+
export interface PromptCacheDigest {
|
|
36
36
|
(value: string): string;
|
|
37
37
|
}
|
|
38
|
-
interface PromptCacheUsage {
|
|
38
|
+
export interface PromptCacheUsage {
|
|
39
39
|
readonly cacheRead: number;
|
|
40
40
|
readonly cacheWrite: number;
|
|
41
41
|
readonly totalInput: number;
|
|
42
42
|
}
|
|
43
|
-
interface PromptCacheObservation extends PromptCacheUsage {
|
|
43
|
+
export interface PromptCacheObservation extends PromptCacheUsage {
|
|
44
44
|
readonly namespace: string;
|
|
45
45
|
readonly modelFingerprint: string;
|
|
46
46
|
readonly observedAt: number;
|
|
47
47
|
}
|
|
48
|
-
interface PromptCacheRequestStatus {
|
|
48
|
+
export interface PromptCacheRequestStatus {
|
|
49
49
|
readonly capability: PromptCacheCapabilityClass;
|
|
50
50
|
readonly namespace?: string;
|
|
51
51
|
readonly modelFingerprint?: string;
|
|
52
52
|
readonly requestedRetention?: string;
|
|
53
53
|
readonly keySuffix?: string;
|
|
54
54
|
}
|
|
55
|
-
interface PromptCacheTelemetrySnapshot extends PromptCacheRequestStatus {
|
|
55
|
+
export interface PromptCacheTelemetrySnapshot extends PromptCacheRequestStatus {
|
|
56
56
|
readonly residency: 'unknown';
|
|
57
57
|
readonly observations: readonly PromptCacheObservation[];
|
|
58
58
|
readonly lastObservation?: PromptCacheObservation;
|
|
59
59
|
}
|
|
60
|
-
interface PromptCacheTelemetryPort {
|
|
60
|
+
export interface PromptCacheTelemetryPort {
|
|
61
61
|
beginRequest(status: PromptCacheRequestStatus): void;
|
|
62
62
|
observe(usage: PromptCacheUsage, observedAt: number): void;
|
|
63
63
|
snapshot(): PromptCacheTelemetrySnapshot;
|
|
64
64
|
reset(): void;
|
|
65
65
|
}
|
|
66
66
|
//#endregion
|
|
67
|
-
export { PromptCacheCapabilityClass, PromptCacheChildProjection, PromptCacheDigest, PromptCacheMinorModeState, PromptCacheModelIdentity, PromptCacheObservation, PromptCacheParentState, PromptCacheRequestStatus, PromptCacheTelemetryPort, PromptCacheTelemetrySnapshot, PromptCacheUsage };
|
|
68
67
|
//# sourceMappingURL=cache.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.cts","names":[],"sources":["../../src/types/cache.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"cache.d.cts","names":[],"sources":["../../src/types/cache.ts"],"mappings":";YAAY;iBAOK;WACN;WACA;WACA;WACA;;iBAGM;WACN;WACA;WACA;WACA;WACA;WACA;WACA,qBAAqB;;iBAGf;WACN;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;iBAGM;WACN;WACA;WACA;WACA;WACA;;iBAGM;GACd;;iBAGc;WACN;WACA;WACA;;iBAGM,+BAA+B;WACrC;WACA;WACA;;iBAGM;WACN,YAAY;WACZ;WACA;WACA;WACA;;iBAGM,qCAAqC;WAC3C;WACA,uBAAuB;WACvB,kBAAkB;;iBAGZ;EACf,aAAa,QAAQ;EACrB,QAAQ,OAAO,kBAAkB;EACjC,YAAY;EACZ"}
|
package/dist/types/cache.d.mts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
//#region src/types/cache.d.ts
|
|
2
|
-
type PromptCacheCapabilityClass = 'key-and-long-retention' | 'key-only' | 'marker-only' | 'automatic' | 'unknown';
|
|
3
|
-
interface PromptCacheMinorModeState {
|
|
2
|
+
export type PromptCacheCapabilityClass = 'key-and-long-retention' | 'key-only' | 'marker-only' | 'automatic' | 'unknown';
|
|
3
|
+
export interface PromptCacheMinorModeState {
|
|
4
4
|
readonly source: string;
|
|
5
5
|
readonly id: string;
|
|
6
6
|
readonly activation: string;
|
|
7
7
|
readonly modelContextVariant?: string;
|
|
8
8
|
}
|
|
9
|
-
interface PromptCacheParentState {
|
|
9
|
+
export interface PromptCacheParentState {
|
|
10
10
|
readonly rootSessionId: string;
|
|
11
11
|
readonly compositionFingerprint?: string;
|
|
12
12
|
readonly majorMode: string;
|
|
@@ -15,7 +15,7 @@ interface PromptCacheParentState {
|
|
|
15
15
|
readonly persona?: string;
|
|
16
16
|
readonly minorModes: readonly PromptCacheMinorModeState[];
|
|
17
17
|
}
|
|
18
|
-
interface PromptCacheChildProjection {
|
|
18
|
+
export interface PromptCacheChildProjection {
|
|
19
19
|
readonly systemPrompt?: string;
|
|
20
20
|
readonly tools: readonly string[];
|
|
21
21
|
readonly excludedTools: readonly string[];
|
|
@@ -25,44 +25,43 @@ interface PromptCacheChildProjection {
|
|
|
25
25
|
readonly fanout?: boolean;
|
|
26
26
|
readonly structuredOutputSchema?: unknown;
|
|
27
27
|
}
|
|
28
|
-
interface PromptCacheModelIdentity {
|
|
28
|
+
export interface PromptCacheModelIdentity {
|
|
29
29
|
readonly virtualProvider?: string;
|
|
30
30
|
readonly virtualModel?: string;
|
|
31
31
|
readonly api?: string;
|
|
32
32
|
readonly baseUrl?: string;
|
|
33
33
|
readonly wireModel?: string;
|
|
34
34
|
}
|
|
35
|
-
interface PromptCacheDigest {
|
|
35
|
+
export interface PromptCacheDigest {
|
|
36
36
|
(value: string): string;
|
|
37
37
|
}
|
|
38
|
-
interface PromptCacheUsage {
|
|
38
|
+
export interface PromptCacheUsage {
|
|
39
39
|
readonly cacheRead: number;
|
|
40
40
|
readonly cacheWrite: number;
|
|
41
41
|
readonly totalInput: number;
|
|
42
42
|
}
|
|
43
|
-
interface PromptCacheObservation extends PromptCacheUsage {
|
|
43
|
+
export interface PromptCacheObservation extends PromptCacheUsage {
|
|
44
44
|
readonly namespace: string;
|
|
45
45
|
readonly modelFingerprint: string;
|
|
46
46
|
readonly observedAt: number;
|
|
47
47
|
}
|
|
48
|
-
interface PromptCacheRequestStatus {
|
|
48
|
+
export interface PromptCacheRequestStatus {
|
|
49
49
|
readonly capability: PromptCacheCapabilityClass;
|
|
50
50
|
readonly namespace?: string;
|
|
51
51
|
readonly modelFingerprint?: string;
|
|
52
52
|
readonly requestedRetention?: string;
|
|
53
53
|
readonly keySuffix?: string;
|
|
54
54
|
}
|
|
55
|
-
interface PromptCacheTelemetrySnapshot extends PromptCacheRequestStatus {
|
|
55
|
+
export interface PromptCacheTelemetrySnapshot extends PromptCacheRequestStatus {
|
|
56
56
|
readonly residency: 'unknown';
|
|
57
57
|
readonly observations: readonly PromptCacheObservation[];
|
|
58
58
|
readonly lastObservation?: PromptCacheObservation;
|
|
59
59
|
}
|
|
60
|
-
interface PromptCacheTelemetryPort {
|
|
60
|
+
export interface PromptCacheTelemetryPort {
|
|
61
61
|
beginRequest(status: PromptCacheRequestStatus): void;
|
|
62
62
|
observe(usage: PromptCacheUsage, observedAt: number): void;
|
|
63
63
|
snapshot(): PromptCacheTelemetrySnapshot;
|
|
64
64
|
reset(): void;
|
|
65
65
|
}
|
|
66
66
|
//#endregion
|
|
67
|
-
export { PromptCacheCapabilityClass, PromptCacheChildProjection, PromptCacheDigest, PromptCacheMinorModeState, PromptCacheModelIdentity, PromptCacheObservation, PromptCacheParentState, PromptCacheRequestStatus, PromptCacheTelemetryPort, PromptCacheTelemetrySnapshot, PromptCacheUsage };
|
|
68
67
|
//# sourceMappingURL=cache.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.mts","names":[],"sources":["../../src/types/cache.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"cache.d.mts","names":[],"sources":["../../src/types/cache.ts"],"mappings":";YAAY;iBAOK;WACN;WACA;WACA;WACA;;iBAGM;WACN;WACA;WACA;WACA;WACA;WACA;WACA,qBAAqB;;iBAGf;WACN;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;iBAGM;WACN;WACA;WACA;WACA;WACA;;iBAGM;GACd;;iBAGc;WACN;WACA;WACA;;iBAGM,+BAA+B;WACrC;WACA;WACA;;iBAGM;WACN,YAAY;WACZ;WACA;WACA;WACA;;iBAGM,qCAAqC;WAC3C;WACA,uBAAuB;WACvB,kBAAkB;;iBAGZ;EACf,aAAa,QAAQ;EACrB,QAAQ,OAAO,kBAAkB;EACjC,YAAY;EACZ"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
//#region src/types/environment.d.ts
|
|
2
|
-
declare const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = "DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE";
|
|
3
|
-
declare const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = "DOOMPI_PROMPT_CACHE_ROOT_SESSION";
|
|
4
|
-
declare const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = "DOOMPI_PROMPT_CACHE_CHILD_PROJECTION";
|
|
5
|
-
declare const PI_CACHE_RETENTION_ENV = "PI_CACHE_RETENTION";
|
|
6
|
-
declare const PI_CACHE_RETENTION_LONG = "long";
|
|
2
|
+
export declare const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = "DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE";
|
|
3
|
+
export declare const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = "DOOMPI_PROMPT_CACHE_ROOT_SESSION";
|
|
4
|
+
export declare const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = "DOOMPI_PROMPT_CACHE_CHILD_PROJECTION";
|
|
5
|
+
export declare const PI_CACHE_RETENTION_ENV = "PI_CACHE_RETENTION";
|
|
6
|
+
export declare const PI_CACHE_RETENTION_LONG = "long";
|
|
7
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
8
|
//# sourceMappingURL=environment.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.cts","names":[],"sources":["../../src/types/environment.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"environment.d.cts","names":[],"sources":["../../src/types/environment.ts"],"mappings":";qBAAa;qBACA;qBACA;qBACA;qBACA"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
//#region src/types/environment.d.ts
|
|
2
|
-
declare const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = "DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE";
|
|
3
|
-
declare const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = "DOOMPI_PROMPT_CACHE_ROOT_SESSION";
|
|
4
|
-
declare const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = "DOOMPI_PROMPT_CACHE_CHILD_PROJECTION";
|
|
5
|
-
declare const PI_CACHE_RETENTION_ENV = "PI_CACHE_RETENTION";
|
|
6
|
-
declare const PI_CACHE_RETENTION_LONG = "long";
|
|
2
|
+
export declare const DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE_ENV = "DOOMPI_PROMPT_CACHE_PARENT_NAMESPACE";
|
|
3
|
+
export declare const DOOMPI_PROMPT_CACHE_ROOT_SESSION_ENV = "DOOMPI_PROMPT_CACHE_ROOT_SESSION";
|
|
4
|
+
export declare const DOOMPI_PROMPT_CACHE_CHILD_PROJECTION_ENV = "DOOMPI_PROMPT_CACHE_CHILD_PROJECTION";
|
|
5
|
+
export declare const PI_CACHE_RETENTION_ENV = "PI_CACHE_RETENTION";
|
|
6
|
+
export declare const PI_CACHE_RETENTION_LONG = "long";
|
|
7
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
8
|
//# sourceMappingURL=environment.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.mts","names":[],"sources":["../../src/types/environment.ts"],"mappings":";
|
|
1
|
+
{"version":3,"file":"environment.d.mts","names":[],"sources":["../../src/types/environment.ts"],"mappings":";qBAAa;qBACA;qBACA;qBACA;qBACA"}
|
package/llms.txt
CHANGED
|
@@ -4,7 +4,7 @@ Package-owned guidance for Provider prompt cache policy and deterministic routin
|
|
|
4
4
|
|
|
5
5
|
## How to use
|
|
6
6
|
|
|
7
|
-
- [Use Cache](./src/prompts/doompi-use-cache/SKILL.md):
|
|
7
|
+
- [Use Cache](./src/prompts/doompi-use-cache/SKILL.md): Package-specific usage guidance.
|
|
8
8
|
|
|
9
9
|
## Resources
|
|
10
10
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agimon-ai/doompi-cache",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.30",
|
|
4
4
|
"description": "Provider prompt cache policy and deterministic routing for DoomPi",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -58,22 +58,22 @@
|
|
|
58
58
|
"access": "public"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
-
"@deepseek-ai/cordis": "4.0.
|
|
62
|
-
"pi-cache-optimizer": "2.8.
|
|
63
|
-
"@agimon-ai/doompi-config": "0.0.1-alpha.
|
|
64
|
-
"@agimon-ai/doompi-extension-contracts": "0.0.1-alpha.
|
|
61
|
+
"@deepseek-ai/cordis": "4.0.2",
|
|
62
|
+
"pi-cache-optimizer": "2.8.6",
|
|
63
|
+
"@agimon-ai/doompi-config": "0.0.1-alpha.63",
|
|
64
|
+
"@agimon-ai/doompi-extension-contracts": "0.0.1-alpha.63"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
|
-
"@earendil-works/pi-coding-agent": "0.
|
|
68
|
-
"@types/node": "26.
|
|
69
|
-
"@vitest/coverage-v8": "
|
|
70
|
-
"tsdown": "0.
|
|
67
|
+
"@earendil-works/pi-coding-agent": "0.85.1",
|
|
68
|
+
"@types/node": "26.4.1",
|
|
69
|
+
"@vitest/coverage-v8": "5.0.0",
|
|
70
|
+
"tsdown": "0.23.0",
|
|
71
71
|
"typescript": "7.0.2",
|
|
72
|
-
"vitest": "
|
|
73
|
-
"@agimon-ai/vibe-lint-plugin-doom-extension": "0.0.1-alpha.
|
|
72
|
+
"vitest": "5.0.0",
|
|
73
|
+
"@agimon-ai/vibe-lint-plugin-doom-extension": "0.0.1-alpha.60"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
76
|
-
"@earendil-works/pi-coding-agent": "0.
|
|
76
|
+
"@earendil-works/pi-coding-agent": "0.85.1"
|
|
77
77
|
},
|
|
78
78
|
"peerDependenciesMeta": {
|
|
79
79
|
"@earendil-works/pi-coding-agent": {
|
|
@@ -5,10 +5,9 @@ description: 'Use @agimon-ai/doompi-cache: Provider prompt cache policy and dete
|
|
|
5
5
|
|
|
6
6
|
# Use Cache
|
|
7
7
|
|
|
8
|
-
Read the package [README](../../../README.md) for its exact installation,
|
|
8
|
+
Read the package [README](../../../README.md) for its exact installation, configuration, and behavior.
|
|
9
9
|
|
|
10
10
|
## Guidance
|
|
11
11
|
|
|
12
|
-
- Use `/doom-cache` as the package's primary Pi entrypoint.
|
|
13
12
|
- Treat the package README and its linked resources as the source of truth for package-specific behavior.
|
|
14
13
|
- Do not require DoomPi Help for runtime activation. Help only makes this package guidance discoverable while the minor mode is active.
|