cyt-indexer-sdk 0.2.7 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +3 -1
  2. package/cyt-indexer-sdk.darwin-x64.node +0 -0
  3. package/cyt-indexer-sdk.linux-arm64-gnu.node +0 -0
  4. package/cyt-indexer-sdk.linux-x64-gnu.node +0 -0
  5. package/cyt-indexer-sdk.win32-arm64-msvc.node +0 -0
  6. package/cyt-indexer-sdk.win32-x64-msvc.node +0 -0
  7. package/dist/build.d.ts +10 -1
  8. package/dist/build.d.ts.map +1 -1
  9. package/dist/build.js +25 -15
  10. package/dist/build.js.map +1 -1
  11. package/dist/catalog-io.d.ts +7 -0
  12. package/dist/catalog-io.d.ts.map +1 -0
  13. package/dist/catalog-io.js +7 -0
  14. package/dist/catalog-io.js.map +1 -0
  15. package/dist/decomposed-catalog.d.ts +4 -13
  16. package/dist/decomposed-catalog.d.ts.map +1 -1
  17. package/dist/decomposed-catalog.js +3 -60
  18. package/dist/decomposed-catalog.js.map +1 -1
  19. package/dist/documents.d.ts +7 -0
  20. package/dist/documents.d.ts.map +1 -0
  21. package/dist/documents.js +15 -0
  22. package/dist/documents.js.map +1 -0
  23. package/dist/index.d.ts +8 -2
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +9 -2
  26. package/dist/index.js.map +1 -1
  27. package/dist/native.d.ts +77 -1
  28. package/dist/native.d.ts.map +1 -1
  29. package/dist/native.js +83 -0
  30. package/dist/native.js.map +1 -1
  31. package/dist/paths.d.ts +18 -1
  32. package/dist/paths.d.ts.map +1 -1
  33. package/dist/paths.js +26 -1
  34. package/dist/paths.js.map +1 -1
  35. package/dist/policies.d.ts +57 -0
  36. package/dist/policies.d.ts.map +1 -0
  37. package/dist/policies.js +153 -0
  38. package/dist/policies.js.map +1 -0
  39. package/dist/retrieve.d.ts +7 -5
  40. package/dist/retrieve.d.ts.map +1 -1
  41. package/dist/retrieve.js +34 -9
  42. package/dist/retrieve.js.map +1 -1
  43. package/dist/runtime-defaults.d.ts +15 -0
  44. package/dist/runtime-defaults.d.ts.map +1 -0
  45. package/dist/runtime-defaults.js +18 -0
  46. package/dist/runtime-defaults.js.map +1 -0
  47. package/dist/test/build.test.js +19 -4
  48. package/dist/test/build.test.js.map +1 -1
  49. package/dist/test/paths.test.js +8 -8
  50. package/dist/test/paths.test.js.map +1 -1
  51. package/dist/test/smoke.test.js +20 -11
  52. package/dist/test/smoke.test.js.map +1 -1
  53. package/native.cjs +136 -52
  54. package/native.d.ts +207 -0
  55. package/package.json +1 -1
  56. package/dist/catalog-json.d.ts +0 -7
  57. package/dist/catalog-json.d.ts.map +0 -1
  58. package/dist/catalog-json.js +0 -89
  59. package/dist/catalog-json.js.map +0 -1
  60. package/dist/decomposed-paths.d.ts +0 -7
  61. package/dist/decomposed-paths.d.ts.map +0 -1
  62. package/dist/decomposed-paths.js +0 -37
  63. package/dist/decomposed-paths.js.map +0 -1
  64. package/dist/test/catalog-json.test.d.ts +0 -2
  65. package/dist/test/catalog-json.test.d.ts.map +0 -1
  66. package/dist/test/catalog-json.test.js +0 -28
  67. package/dist/test/catalog-json.test.js.map +0 -1
  68. package/dist/test/schema-enums.test.d.ts +0 -2
  69. package/dist/test/schema-enums.test.d.ts.map +0 -1
  70. package/dist/test/schema-enums.test.js +0 -27
  71. package/dist/test/schema-enums.test.js.map +0 -1
@@ -0,0 +1,57 @@
1
+ /** Tool policy helpers (Rust-backed). */
2
+ import { PolicyContextNative } from "./native.js";
3
+ import type { JsonRecord } from "./types.js";
4
+ type PolicyContext = InstanceType<typeof PolicyContextNative>;
5
+ export type SystemToolPolicy = "always_include" | "prune_optional" | "prune_all";
6
+ export type MCPToolPolicy = "always_include" | "prune_optional" | "prune_all";
7
+ export type ToolPolicy = "always_include" | "prune_optional" | "prune_all";
8
+ export { PolicyContextNative as PolicyContext };
9
+ export declare function toolPolicies(): string[];
10
+ export declare function policyContextFromValues(config: JsonRecord): PolicyContext;
11
+ export declare function effectivePolicy(toolId: string, ctx: PolicyContext): ToolPolicy;
12
+ export declare function toolPassThrough(toolId: string, ctx: PolicyContext): boolean;
13
+ export declare function rootToolIdFromChunk(item: JsonRecord): string;
14
+ export declare function requestPassThrough(tools: JsonRecord[], ctx: PolicyContext): boolean;
15
+ export declare function isNonSystemToolId(toolId: string): boolean;
16
+ export declare function isSystemToolId(toolId: string): boolean;
17
+ export declare function chunkToolId(item: JsonRecord): string;
18
+ export declare function isNonSystemChunk(item: JsonRecord): boolean;
19
+ export declare function isSystemChunk(item: JsonRecord): boolean;
20
+ export declare function isDecomposedToolRootChunk(item: JsonRecord): boolean;
21
+ export declare function isDecomposedOptionalPropertyChunk(item: JsonRecord): boolean;
22
+ export declare function isSystemRootChunk(item: JsonRecord): boolean;
23
+ export declare function isMcpRootChunk(item: JsonRecord): boolean;
24
+ export declare function isSystemOptionalChunk(item: JsonRecord): boolean;
25
+ export declare function isMcpOptionalChunk(item: JsonRecord): boolean;
26
+ export declare function needsPartition(ctx: PolicyContext): boolean;
27
+ export declare function needsPrunedRecompose(ctx: PolicyContext): boolean;
28
+ export declare function systemToolsPassThrough(ctx: PolicyContext): boolean;
29
+ export declare function mcpToolsPassThrough(ctx: PolicyContext): boolean;
30
+ export declare function fullPassThrough(ctx: PolicyContext): boolean;
31
+ export declare function catalogNeedsPartition(data: JsonRecord, ctx: PolicyContext): boolean;
32
+ export declare function catalogNeedsPrunedRecompose(data: JsonRecord, ctx: PolicyContext): boolean;
33
+ export declare function partitionCatalog(data: JsonRecord, ctx: PolicyContext): [JsonRecord, JsonRecord];
34
+ export declare function mergeCatalog(processed: JsonRecord, pinned: JsonRecord): JsonRecord;
35
+ export declare function stashSystemTools(tools: JsonRecord[]): JsonRecord[];
36
+ export declare function restoreSystemTools(stash: JsonRecord[]): JsonRecord[];
37
+ export declare function stashMcpTools(tools: JsonRecord[]): JsonRecord[];
38
+ export declare function restoreMcpTools(stash: JsonRecord[]): JsonRecord[];
39
+ export declare function mergeToolsPreservingOrder(original: JsonRecord[], prunedByName: Record<string, JsonRecord>, stashedByName: Record<string, JsonRecord>): JsonRecord[];
40
+ export declare function anthropicToolIsSystem(tool: JsonRecord): boolean;
41
+ export declare function anthropicToolIsMcp(tool: JsonRecord): boolean;
42
+ export declare function splitAnthropicTools(tools: JsonRecord[]): [JsonRecord[], JsonRecord[]];
43
+ export declare function entriesForPolicy(allEntries: JsonRecord[], ctx: PolicyContext): JsonRecord[];
44
+ export declare function toolsForCatalog(tools: JsonRecord[], ctx: PolicyContext): JsonRecord[];
45
+ export declare function systemRequiredEnumValues(data: JsonRecord): string[];
46
+ export declare function mcpRequiredEnumValues(data: JsonRecord): string[];
47
+ export declare function requiredEnumValuesByTool(data: JsonRecord): Record<string, string[]>;
48
+ export declare function optionalLeafSurvivedRerank(item: JsonRecord, ctx: PolicyContext, rerankScore?: number | null, llmSelectedPaths?: Iterable<string> | null): boolean;
49
+ export declare function filterRecomposeJsonEntries(jsonList: JsonRecord[], ctx: PolicyContext, rerankScore?: number | null, llmSelectedPaths?: Iterable<string> | null): JsonRecord[];
50
+ export declare function mitigateEmptyOptionalProperties(entries: JsonRecord[], catalogIndex: JsonRecord, ctx: PolicyContext, postRerankScored: JsonRecord | null | undefined, pipeline: string[]): JsonRecord[];
51
+ export declare function directRootOptionalChunksForTool(items: JsonRecord[], toolId: string): JsonRecord[];
52
+ export declare function rootChunkPropertiesEmpty(item: JsonRecord): boolean;
53
+ export declare function toolIdHasEmptyDecomposedRoot(catalogIndex: JsonRecord, toolId: string): boolean;
54
+ export declare function toolIdHadEmptyOriginalRootProperties(catalogIndex: JsonRecord, toolId: string): boolean;
55
+ export declare function isDirectRootOptionalPropertyChunk(item: JsonRecord): boolean;
56
+ export declare function dropRecomposedToolsWithEmptyProperties(tools: JsonRecord[], catalogIndex: JsonRecord, ctx: PolicyContext): JsonRecord[];
57
+ //# sourceMappingURL=policies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../src/policies.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ /** Tool policy helpers (Rust-backed). */
2
+ import { anthropicToolIsMcpNative, anthropicToolIsSystemNative, catalogNeedsPartitionNative, catalogNeedsPrunedRecomposeNative, chunkToolIdNative, directRootOptionalChunksForToolNative, dropRecomposedToolsWithEmptyPropertiesNative, effectivePolicyNative, entriesForPolicyNative, filterRecomposeJsonEntriesNative, fullPassThroughNative, isDecomposedOptionalPropertyChunkNative, isDecomposedToolRootChunkNative, isDirectRootOptionalPropertyChunkNative, isMcpOptionalChunkNative, isMcpRootChunkNative, isNonSystemChunkNative, isNonSystemToolIdNative, isSystemChunkNative, isSystemOptionalChunkNative, isSystemRootChunkNative, isSystemToolIdNative, mergeCatalogNative, mergeToolsPreservingOrderNative, mitigateEmptyOptionalPropertiesNative, mcpRequiredEnumValuesNative, mcpToolsPassThroughNative, needsPartitionNative, needsPrunedRecomposeNative, optionalLeafSurvivedRerankNative, partitionCatalogNative, policyContextFromValuesNative, requestPassThroughNative, requiredEnumValuesByToolNative, restoreMcpToolsNative, restoreSystemToolsNative, rootChunkPropertiesEmptyNative, rootToolIdFromChunkNative, splitAnthropicToolsNative, stashMcpToolsNative, stashSystemToolsNative, systemRequiredEnumValuesNative, systemToolsPassThroughNative, toolIdHadEmptyOriginalRootPropertiesNative, toolIdHasEmptyDecomposedRootNative, toolPassThroughNative, toolPoliciesNative, toolsForCatalogNative, PolicyContextNative, } from "./native.js";
3
+ export { PolicyContextNative as PolicyContext };
4
+ export function toolPolicies() {
5
+ return toolPoliciesNative();
6
+ }
7
+ export function policyContextFromValues(config) {
8
+ return policyContextFromValuesNative(config);
9
+ }
10
+ export function effectivePolicy(toolId, ctx) {
11
+ return effectivePolicyNative(ctx, toolId);
12
+ }
13
+ export function toolPassThrough(toolId, ctx) {
14
+ return toolPassThroughNative(ctx, toolId);
15
+ }
16
+ export function rootToolIdFromChunk(item) {
17
+ return rootToolIdFromChunkNative(item);
18
+ }
19
+ export function requestPassThrough(tools, ctx) {
20
+ return requestPassThroughNative(ctx, tools);
21
+ }
22
+ export function isNonSystemToolId(toolId) {
23
+ return isNonSystemToolIdNative(toolId);
24
+ }
25
+ export function isSystemToolId(toolId) {
26
+ return isSystemToolIdNative(toolId);
27
+ }
28
+ export function chunkToolId(item) {
29
+ return chunkToolIdNative(item);
30
+ }
31
+ export function isNonSystemChunk(item) {
32
+ return isNonSystemChunkNative(item);
33
+ }
34
+ export function isSystemChunk(item) {
35
+ return isSystemChunkNative(item);
36
+ }
37
+ export function isDecomposedToolRootChunk(item) {
38
+ return isDecomposedToolRootChunkNative(item);
39
+ }
40
+ export function isDecomposedOptionalPropertyChunk(item) {
41
+ return isDecomposedOptionalPropertyChunkNative(item);
42
+ }
43
+ export function isSystemRootChunk(item) {
44
+ return isSystemRootChunkNative(item);
45
+ }
46
+ export function isMcpRootChunk(item) {
47
+ return isMcpRootChunkNative(item);
48
+ }
49
+ export function isSystemOptionalChunk(item) {
50
+ return isSystemOptionalChunkNative(item);
51
+ }
52
+ export function isMcpOptionalChunk(item) {
53
+ return isMcpOptionalChunkNative(item);
54
+ }
55
+ export function needsPartition(ctx) {
56
+ return needsPartitionNative(ctx);
57
+ }
58
+ export function needsPrunedRecompose(ctx) {
59
+ return needsPrunedRecomposeNative(ctx);
60
+ }
61
+ export function systemToolsPassThrough(ctx) {
62
+ return systemToolsPassThroughNative(ctx);
63
+ }
64
+ export function mcpToolsPassThrough(ctx) {
65
+ return mcpToolsPassThroughNative(ctx);
66
+ }
67
+ export function fullPassThrough(ctx) {
68
+ return fullPassThroughNative(ctx);
69
+ }
70
+ export function catalogNeedsPartition(data, ctx) {
71
+ return catalogNeedsPartitionNative(data, ctx);
72
+ }
73
+ export function catalogNeedsPrunedRecompose(data, ctx) {
74
+ return catalogNeedsPrunedRecomposeNative(data, ctx);
75
+ }
76
+ export function partitionCatalog(data, ctx) {
77
+ return partitionCatalogNative(data, ctx);
78
+ }
79
+ export function mergeCatalog(processed, pinned) {
80
+ return mergeCatalogNative(processed, pinned);
81
+ }
82
+ export function stashSystemTools(tools) {
83
+ return stashSystemToolsNative(tools);
84
+ }
85
+ export function restoreSystemTools(stash) {
86
+ return restoreSystemToolsNative(stash);
87
+ }
88
+ export function stashMcpTools(tools) {
89
+ return stashMcpToolsNative(tools);
90
+ }
91
+ export function restoreMcpTools(stash) {
92
+ return restoreMcpToolsNative(stash);
93
+ }
94
+ export function mergeToolsPreservingOrder(original, prunedByName, stashedByName) {
95
+ return mergeToolsPreservingOrderNative(original, prunedByName, stashedByName);
96
+ }
97
+ export function anthropicToolIsSystem(tool) {
98
+ return anthropicToolIsSystemNative(tool);
99
+ }
100
+ export function anthropicToolIsMcp(tool) {
101
+ return anthropicToolIsMcpNative(tool);
102
+ }
103
+ export function splitAnthropicTools(tools) {
104
+ const result = splitAnthropicToolsNative(tools);
105
+ return [result.nonSystem, result.system];
106
+ }
107
+ export function entriesForPolicy(allEntries, ctx) {
108
+ return entriesForPolicyNative(ctx, allEntries);
109
+ }
110
+ export function toolsForCatalog(tools, ctx) {
111
+ return toolsForCatalogNative(ctx, tools);
112
+ }
113
+ export function systemRequiredEnumValues(data) {
114
+ return systemRequiredEnumValuesNative(data);
115
+ }
116
+ export function mcpRequiredEnumValues(data) {
117
+ return mcpRequiredEnumValuesNative(data);
118
+ }
119
+ export function requiredEnumValuesByTool(data) {
120
+ return requiredEnumValuesByToolNative(data);
121
+ }
122
+ export function optionalLeafSurvivedRerank(item, ctx, rerankScore, llmSelectedPaths) {
123
+ return optionalLeafSurvivedRerankNative(item, ctx, rerankScore ?? undefined, llmSelectedPaths === undefined || llmSelectedPaths === null
124
+ ? undefined
125
+ : [...llmSelectedPaths]);
126
+ }
127
+ export function filterRecomposeJsonEntries(jsonList, ctx, rerankScore, llmSelectedPaths) {
128
+ return filterRecomposeJsonEntriesNative(jsonList, ctx, rerankScore ?? undefined, llmSelectedPaths === undefined || llmSelectedPaths === null
129
+ ? undefined
130
+ : [...llmSelectedPaths]);
131
+ }
132
+ export function mitigateEmptyOptionalProperties(entries, catalogIndex, ctx, postRerankScored, pipeline) {
133
+ return mitigateEmptyOptionalPropertiesNative(entries, catalogIndex, ctx, postRerankScored ?? undefined, pipeline);
134
+ }
135
+ export function directRootOptionalChunksForTool(items, toolId) {
136
+ return directRootOptionalChunksForToolNative(items, toolId);
137
+ }
138
+ export function rootChunkPropertiesEmpty(item) {
139
+ return rootChunkPropertiesEmptyNative(item);
140
+ }
141
+ export function toolIdHasEmptyDecomposedRoot(catalogIndex, toolId) {
142
+ return toolIdHasEmptyDecomposedRootNative(catalogIndex, toolId);
143
+ }
144
+ export function toolIdHadEmptyOriginalRootProperties(catalogIndex, toolId) {
145
+ return toolIdHadEmptyOriginalRootPropertiesNative(catalogIndex, toolId);
146
+ }
147
+ export function isDirectRootOptionalPropertyChunk(item) {
148
+ return isDirectRootOptionalPropertyChunkNative(item);
149
+ }
150
+ export function dropRecomposedToolsWithEmptyProperties(tools, catalogIndex, ctx) {
151
+ return dropRecomposedToolsWithEmptyPropertiesNative(tools, catalogIndex, ctx);
152
+ }
153
+ //# sourceMappingURL=policies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policies.js","sourceRoot":"","sources":["../src/policies.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
- import type { CatalogIndex } from "./build.js";
1
+ import { CatalogIndex } from "./build.js";
2
2
  import { DecomposedCatalog } from "./decomposed-catalog.js";
3
- import { type PolicyOptions } from "./native.js";
3
+ import { type PolicyContextJs, type PolicyOptions } from "./native.js";
4
+ import { PolicyContext } from "./policies.js";
4
5
  import { type JsonRecord } from "./types.js";
5
- export declare const DECOMPOSED_SCORE = 0.5;
6
- export declare const ENUM_SCORE = 0.2;
7
- export type { PolicyOptions };
6
+ export type { PolicyOptions, PolicyContextJs };
8
7
  export type { JsonRecord };
9
8
  export { DecomposedCatalog };
10
9
  export declare function loadCatalog(dirPath: string): {
@@ -15,6 +14,9 @@ export declare function loadCatalog(dirPath: string): {
15
14
  export interface RetrieveToolsOptions {
16
15
  catalog: DecomposedCatalog | CatalogIndex;
17
16
  applyDecomposedScoreFilter?: boolean;
17
+ preserveValues?: Iterable<string> | null;
18
+ ctx?: InstanceType<typeof PolicyContext> | PolicyContextJs | null;
19
+ /** @deprecated Use ctx; kept for low-level retrieve_core passthrough */
18
20
  policyOptions?: PolicyOptions | null;
19
21
  }
20
22
  export declare function retrieveTools(data: unknown, options: RetrieveToolsOptions): JsonRecord[];
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve.d.ts","sourceRoot":"","sources":["../src/retrieve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EACL,iBAAiB,EAElB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAE3D,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,UAAU,MAAM,CAAC;AAE9B,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG;IAC5C,EAAE,EAAE,UAAU,EAAE,CAAC;IACjB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB,CAMA;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAAC;IAC1C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACtC;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,oBAAoB,GAC5B,UAAU,EAAE,CAoBd"}
1
+ {"version":3,"file":"retrieve.d.ts","sourceRoot":"","sources":["../src/retrieve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAE3D,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG;IAC5C,EAAE,EAAE,UAAU,EAAE,CAAC;IACjB,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB,CAMA;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAAC;IAC1C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IACzC,GAAG,CAAC,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG,eAAe,GAAG,IAAI,CAAC;IAClE,wEAAwE;IACxE,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACtC;AA4DD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,oBAAoB,GAC5B,UAAU,EAAE,CAyBd"}
package/dist/retrieve.js CHANGED
@@ -1,18 +1,43 @@
1
- import { DecomposedCatalog, resolveDecomposedCatalog, } from "./decomposed-catalog.js";
2
- import { loadCatalogNative, retrieveCoreNative, } from "./native.js";
1
+ import { CatalogIndex } from "./build.js";
2
+ import { DecomposedCatalog } from "./decomposed-catalog.js";
3
+ import { loadCatalogNative, retrieveCoreNative, retrieveToolsNative, } from "./native.js";
3
4
  import { isJsonRecord } from "./types.js";
4
- export const DECOMPOSED_SCORE = 0.5;
5
- export const ENUM_SCORE = 0.2;
6
5
  export { DecomposedCatalog };
7
6
  export function loadCatalog(dirPath) {
8
7
  return loadCatalogNative(dirPath);
9
8
  }
9
+ function catalogToNative(catalog) {
10
+ if (catalog instanceof CatalogIndex) {
11
+ return { tools: catalog.tools, files: catalog.files };
12
+ }
13
+ if (catalog instanceof DecomposedCatalog) {
14
+ return catalog.toJsonFiles();
15
+ }
16
+ return catalog;
17
+ }
18
+ function storeJsonFilesFromCatalog(catalog) {
19
+ if (catalog instanceof CatalogIndex) {
20
+ return catalog.files;
21
+ }
22
+ if (catalog instanceof DecomposedCatalog) {
23
+ return catalog.toJsonFiles();
24
+ }
25
+ return {};
26
+ }
27
+ function retrieveToolsViaPolicyOptions(catalogDict, catalog, applyDecomposedScoreFilter, policyOptions) {
28
+ const survivor = DecomposedCatalog.fromCatalogDict(catalogDict);
29
+ return retrieveCoreNative(catalogDict, storeJsonFilesFromCatalog(catalog), survivor.toJsonFiles(), applyDecomposedScoreFilter, policyOptions);
30
+ }
31
+ function retrieveToolsViaContext(catalogDict, catalog, applyDecomposedScoreFilter, preserveValues, ctx) {
32
+ const preserveList = preserveValues == null ? undefined : [...preserveValues].sort();
33
+ return retrieveToolsNative(catalogDict, catalogToNative(catalog), applyDecomposedScoreFilter, preserveList, ctx ?? undefined);
34
+ }
10
35
  export function retrieveTools(data, options) {
11
- const { catalog, applyDecomposedScoreFilter = true, policyOptions = null, } = options;
12
- const store = resolveDecomposedCatalog(catalog);
36
+ const { catalog, applyDecomposedScoreFilter = false, preserveValues, ctx = null, policyOptions = null, } = options;
13
37
  const catalogDict = isJsonRecord(data) ? data : {};
14
- const survivorStore = DecomposedCatalog.fromCatalogDict(catalogDict);
15
- const result = retrieveCoreNative(catalogDict, store.toJsonFiles(), survivorStore.toJsonFiles(), applyDecomposedScoreFilter, policyOptions ?? undefined);
16
- return result;
38
+ if (policyOptions != null && ctx == null) {
39
+ return retrieveToolsViaPolicyOptions(catalogDict, catalog, applyDecomposedScoreFilter, policyOptions);
40
+ }
41
+ return retrieveToolsViaContext(catalogDict, catalog, applyDecomposedScoreFilter, preserveValues, ctx);
17
42
  }
18
43
  //# sourceMappingURL=retrieve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve.js","sourceRoot":"","sources":["../src/retrieve.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,GAEnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAmB,MAAM,YAAY,CAAC;AAE3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAI9B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,MAAM,UAAU,WAAW,CAAC,OAAe;IAKzC,OAAO,iBAAiB,CAAC,OAAO,CAI/B,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,aAAa,CAC3B,IAAa,EACb,OAA6B;IAE7B,MAAM,EACJ,OAAO,EACP,0BAA0B,GAAG,IAAI,EACjC,aAAa,GAAG,IAAI,GACrB,GAAG,OAAO,CAAC;IAEZ,MAAM,KAAK,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,MAAM,aAAa,GAAG,iBAAiB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAErE,MAAM,MAAM,GAAG,kBAAkB,CAC/B,WAAW,EACX,KAAK,CAAC,WAAW,EAAE,EACnB,aAAa,CAAC,WAAW,EAAE,EAC3B,0BAA0B,EAC1B,aAAa,IAAI,SAAS,CAC3B,CAAC;IAEF,OAAO,MAAsB,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"retrieve.js","sourceRoot":"","sources":["../src/retrieve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GAGpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAmB,MAAM,YAAY,CAAC;AAI3D,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,MAAM,UAAU,WAAW,CAAC,OAAe;IAKzC,OAAO,iBAAiB,CAAC,OAAO,CAI/B,CAAC;AACJ,CAAC;AAWD,SAAS,eAAe,CACtB,OAAyC;IAEzC,IAAI,OAAO,YAAY,YAAY,EAAE,CAAC;QACpC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,YAAY,iBAAiB,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,WAAW,EAAgB,CAAC;IAC7C,CAAC;IACD,OAAO,OAAqB,CAAC;AAC/B,CAAC;AAED,SAAS,yBAAyB,CAChC,OAAyC;IAEzC,IAAI,OAAO,YAAY,YAAY,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,KAAK,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,YAAY,iBAAiB,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,6BAA6B,CACpC,WAAuB,EACvB,OAAyC,EACzC,0BAAmC,EACnC,aAA4B;IAE5B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAChE,OAAO,kBAAkB,CACvB,WAAW,EACX,yBAAyB,CAAC,OAAO,CAAC,EAClC,QAAQ,CAAC,WAAW,EAAE,EACtB,0BAA0B,EAC1B,aAAa,CACE,CAAC;AACpB,CAAC;AAED,SAAS,uBAAuB,CAC9B,WAAuB,EACvB,OAAyC,EACzC,0BAAmC,EACnC,cAAmD,EACnD,GAAgE;IAEhE,MAAM,YAAY,GAChB,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;IAClE,OAAO,mBAAmB,CACxB,WAAW,EACX,eAAe,CAAC,OAAO,CAAC,EACxB,0BAA0B,EAC1B,YAAY,EACZ,GAAG,IAAI,SAAS,CACD,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAa,EACb,OAA6B;IAE7B,MAAM,EACJ,OAAO,EACP,0BAA0B,GAAG,KAAK,EAClC,cAAc,EACd,GAAG,GAAG,IAAI,EACV,aAAa,GAAG,IAAI,GACrB,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,IAAI,aAAa,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACzC,OAAO,6BAA6B,CAClC,WAAW,EACX,OAAO,EACP,0BAA0B,EAC1B,aAAa,CACd,CAAC;IACJ,CAAC;IACD,OAAO,uBAAuB,CAC5B,WAAW,EACX,OAAO,EACP,0BAA0B,EAC1B,cAAc,EACd,GAAG,CACJ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ export interface RuntimeDefaultsConfig {
2
+ decomposedScore: number;
3
+ enumScore: number;
4
+ rerankScore: number;
5
+ emptyOptionalFallbackK: number;
6
+ defaultSystemPolicy: string;
7
+ defaultMcpPolicy: string;
8
+ }
9
+ /** Push host overrides into native RuntimeConfig (Rust defaults when not called). */
10
+ export declare function configureRuntimeDefaults(opts: RuntimeDefaultsConfig): void;
11
+ export declare function decomposedScore(): number;
12
+ export declare function enumScore(): number;
13
+ export declare function rerankScore(): number;
14
+ export declare function emptyOptionalFallbackK(): number;
15
+ //# sourceMappingURL=runtime-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-defaults.d.ts","sourceRoot":"","sources":["../src/runtime-defaults.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAS1E;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
@@ -0,0 +1,18 @@
1
+ import { configureRuntimeDefaultsNative, decomposedScoreNative, emptyOptionalFallbackKNative, enumScoreNative, rerankScoreNative, } from "./native.js";
2
+ /** Push host overrides into native RuntimeConfig (Rust defaults when not called). */
3
+ export function configureRuntimeDefaults(opts) {
4
+ configureRuntimeDefaultsNative(opts.decomposedScore, opts.enumScore, opts.rerankScore, opts.emptyOptionalFallbackK, opts.defaultSystemPolicy, opts.defaultMcpPolicy);
5
+ }
6
+ export function decomposedScore() {
7
+ return decomposedScoreNative();
8
+ }
9
+ export function enumScore() {
10
+ return enumScoreNative();
11
+ }
12
+ export function rerankScore() {
13
+ return rerankScoreNative();
14
+ }
15
+ export function emptyOptionalFallbackK() {
16
+ return emptyOptionalFallbackKNative();
17
+ }
18
+ //# sourceMappingURL=runtime-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-defaults.js","sourceRoot":"","sources":["../src/runtime-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,EAC9B,qBAAqB,EACrB,4BAA4B,EAC5B,eAAe,EACf,iBAAiB,GAClB,MAAM,aAAa,CAAC;AAWrB,qFAAqF;AACrF,MAAM,UAAU,wBAAwB,CAAC,IAA2B;IAClE,8BAA8B,CAC5B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,sBAAsB,EAC3B,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,gBAAgB,CACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,eAAe,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,iBAAiB,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,4BAA4B,EAAE,CAAC;AACxC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import assert from "node:assert/strict";
2
2
  import test from "node:test";
3
- import { buildCatalogIndex, CatalogIndex, catalogToolCount } from "../build.js";
3
+ import { buildCatalogFromTools, buildCatalogIndex, CatalogIndex, catalogToolCount, } from "../build.js";
4
4
  test("catalogToolCount counts tools in catalog dict", () => {
5
5
  const dict = {
6
6
  md: [],
@@ -19,10 +19,11 @@ test("CatalogIndex.toCatalogDict builds json and markdown entries", () => {
19
19
  assert.equal(dict.md.length, 1);
20
20
  assert.equal(dict.json[0]?.id, "search");
21
21
  });
22
- test("CatalogIndex.toCatalogDict rejects non-object JSON", () => {
23
- assert.throws(() => new CatalogIndex([], {
22
+ test("CatalogIndex.toCatalogDict skips non-object JSON", () => {
23
+ const dict = new CatalogIndex([], {
24
24
  "schemas/decomposed/broken.json": "[]",
25
- }).toCatalogDict(), TypeError);
25
+ }).toCatalogDict();
26
+ assert.equal(dict.json.length, 0);
26
27
  });
27
28
  test("buildCatalogIndex returns in-memory catalog", () => {
28
29
  const tools = [{ name: "search", description: "Search tool" }];
@@ -31,4 +32,18 @@ test("buildCatalogIndex returns in-memory catalog", () => {
31
32
  assert.ok(index.tools.length >= 1);
32
33
  assert.ok(Object.keys(index.files).length >= 1);
33
34
  });
35
+ test("buildCatalogFromTools accepts Anthropic API tool shape", () => {
36
+ const index = buildCatalogFromTools([
37
+ {
38
+ name: "Agent",
39
+ description: "Launch agents",
40
+ input_schema: {
41
+ type: "object",
42
+ properties: { prompt: { type: "string" } },
43
+ required: ["prompt"],
44
+ },
45
+ },
46
+ ]);
47
+ assert.ok(Object.keys(index.files).some((k) => k.includes("Agent.json")));
48
+ });
34
49
  //# sourceMappingURL=build.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build.test.js","sourceRoot":"","sources":["../../src/test/build.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEhF,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;IACzD,MAAM,IAAI,GAAG;QACX,EAAE,EAAE,EAAE;QACN,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;QAChC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;KACtC,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6DAA6D,EAAE,GAAG,EAAE;IACvE,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE;QACjC,gCAAgC,EAAE,iBAAiB;QACnD,8BAA8B,EAAE,UAAU;KAC3C,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAChC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAC9D,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CACH,IAAI,YAAY,CAAC,EAAE,EAAE;QACnB,gCAAgC,EAAE,IAAI;KACvC,CAAC,CAAC,aAAa,EAAE,EACpB,SAAS,CACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,MAAM,CAAC,EAAE,CAAC,KAAK,YAAY,YAAY,CAAC,CAAC;IACzC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"build.test.js","sourceRoot":"","sources":["../../src/test/build.test.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,25 @@
1
1
  import assert from "node:assert/strict";
2
2
  import test from "node:test";
3
3
  import { collectEnums } from "../build.js";
4
- import { DECOMPOSED_PREFIX, getRootToolKey, JSON_EXT, MD_EXT, toDecomposedKey, toolIdFromDecomposedRel, } from "../paths.js";
4
+ import { decomposedPrefix, getRootToolKey, jsonExt, mdExt, toDecomposedKey, toolIdFromDecomposedRel, } from "../paths.js";
5
5
  test("path constants are stable", () => {
6
- assert.equal(JSON_EXT, ".json");
7
- assert.equal(MD_EXT, ".md");
8
- assert.equal(DECOMPOSED_PREFIX, "schemas/decomposed/");
6
+ assert.equal(jsonExt(), ".json");
7
+ assert.equal(mdExt(), ".md");
8
+ assert.equal(decomposedPrefix(), "schemas/decomposed/");
9
9
  });
10
10
  test("toDecomposedKey normalizes catalog paths", () => {
11
11
  assert.equal(toDecomposedKey("src/catalog/schemas/decomposed/foo.json"), "schemas/decomposed/foo.json");
12
12
  assert.equal(toDecomposedKey("other/path.json"), null);
13
13
  });
14
14
  test("toolIdFromDecomposedRel extracts tool ids", () => {
15
- assert.equal(toolIdFromDecomposedRel(`${DECOMPOSED_PREFIX}search/query.json`), "search");
15
+ assert.equal(toolIdFromDecomposedRel(`${decomposedPrefix()}search/query.json`), "search");
16
16
  assert.equal(toolIdFromDecomposedRel("search/query.json"), "search");
17
17
  });
18
18
  test("getRootToolKey resolves nested paths to root tool json", () => {
19
- assert.equal(getRootToolKey(`${DECOMPOSED_PREFIX}search/query/fields/name.json`), `${DECOMPOSED_PREFIX}search.json`);
20
- assert.equal(getRootToolKey(`${DECOMPOSED_PREFIX}search.json`), `${DECOMPOSED_PREFIX}search.json`);
19
+ assert.equal(getRootToolKey(`${decomposedPrefix()}search/query/fields/name.json`), `${decomposedPrefix()}search.json`);
20
+ assert.equal(getRootToolKey(`${decomposedPrefix()}search.json`), `${decomposedPrefix()}search.json`);
21
21
  assert.equal(getRootToolKey("not/a/decomposed/path.json"), null);
22
- assert.equal(getRootToolKey(`${DECOMPOSED_PREFIX}`), null);
22
+ assert.equal(getRootToolKey(`${decomposedPrefix()}`), null);
23
23
  });
24
24
  test("collectEnums walks nested schema objects", () => {
25
25
  const schema = {
@@ -1 +1 @@
1
- {"version":3,"file":"paths.test.js","sourceRoot":"","sources":["../../src/test/paths.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.test.js","sourceRoot":"","sources":["../../src/test/paths.test.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,20 @@ import assert from "node:assert/strict";
2
2
  import test from "node:test";
3
3
  import { CatalogIndex } from "../build.js";
4
4
  import { DecomposedCatalog } from "../decomposed-catalog.js";
5
- import { DECOMPOSED_SCORE, ENUM_SCORE, retrieveTools } from "../retrieve.js";
6
- import { DECOMPOSED_PREFIX } from "../paths.js";
7
- test("score constants match Python SDK", () => {
8
- assert.equal(DECOMPOSED_SCORE, 0.5);
9
- assert.equal(ENUM_SCORE, 0.2);
5
+ import { configureRuntimeDefaults, decomposedScore, enumScore, } from "../runtime-defaults.js";
6
+ import { retrieveTools } from "../retrieve.js";
7
+ import { decomposedPrefix } from "../paths.js";
8
+ test("score constants match Python SDK defaults", () => {
9
+ configureRuntimeDefaults({
10
+ decomposedScore: 0.5,
11
+ enumScore: 0.2,
12
+ rerankScore: 0.003,
13
+ emptyOptionalFallbackK: 3,
14
+ defaultSystemPolicy: "prune_optional",
15
+ defaultMcpPolicy: "prune_all",
16
+ });
17
+ assert.equal(decomposedScore(), 0.5);
18
+ assert.equal(enumScore(), 0.2);
10
19
  });
11
20
  test("DecomposedCatalog.fromCatalogIndex loads decomposed JSON files", () => {
12
21
  const index = new CatalogIndex([], {
@@ -16,7 +25,10 @@ test("DecomposedCatalog.fromCatalogIndex loads decomposed JSON files", () => {
16
25
  "schemas/decomposed/array.json": "[]",
17
26
  "schemas/decomposed/valid.json": '{"id":"valid"}',
18
27
  });
19
- const store = DecomposedCatalog.fromCatalogIndex(index);
28
+ const store = DecomposedCatalog.fromCatalogIndex({
29
+ tools: index.tools,
30
+ files: index.files,
31
+ });
20
32
  assert.equal(store.hasJson("schemas/decomposed/search.json"), true);
21
33
  assert.equal(store.getJson("schemas/decomposed/search.json")?.id, "search");
22
34
  assert.equal(store.hasJson("schemas/decomposed/search.md"), false);
@@ -52,7 +64,7 @@ test("DecomposedCatalog resolveKey and toJsonFiles", () => {
52
64
  });
53
65
  });
54
66
  test("retrieveTools accepts DecomposedCatalog and CatalogIndex", () => {
55
- const toolJson = `${DECOMPOSED_PREFIX}search.json`;
67
+ const toolJson = `${decomposedPrefix()}search.json`;
56
68
  const catalog = new DecomposedCatalog({
57
69
  [toolJson]: {
58
70
  type: "object",
@@ -76,11 +88,8 @@ test("retrieveTools accepts DecomposedCatalog and CatalogIndex", () => {
76
88
  });
77
89
  assert.ok(Array.isArray(fromIndex));
78
90
  });
79
- test("retrieveTools rejects invalid catalog type", () => {
80
- assert.throws(() => retrieveTools({}, { catalog: {} }), TypeError);
81
- });
82
91
  test("retrieveTools treats non-object data as empty catalog dict", () => {
83
- const toolJson = `${DECOMPOSED_PREFIX}search.json`;
92
+ const toolJson = `${decomposedPrefix()}search.json`;
84
93
  const catalog = new DecomposedCatalog({
85
94
  [toolJson]: { type: "object", properties: {} },
86
95
  });
@@ -1 +1 @@
1
- {"version":3,"file":"smoke.test.js","sourceRoot":"","sources":["../../src/test/smoke.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smoke.test.js","sourceRoot":"","sources":["../../src/test/smoke.test.ts"],"names":[],"mappings":"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"}