ai-capability-framework 1.0.2 → 1.1.0-rc.1

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 (239) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/README.md +24 -0
  3. package/ROADMAP.md +11 -0
  4. package/dist/cli.d.ts.map +1 -1
  5. package/dist/cli.js +25 -0
  6. package/dist/discovery/bindings.d.ts +7 -0
  7. package/dist/discovery/bindings.d.ts.map +1 -0
  8. package/dist/discovery/bindings.js +24 -0
  9. package/dist/discovery/budget.d.ts +17 -0
  10. package/dist/discovery/budget.d.ts.map +1 -0
  11. package/dist/discovery/budget.js +77 -0
  12. package/dist/discovery/configuration.d.ts +10 -0
  13. package/dist/discovery/configuration.d.ts.map +1 -0
  14. package/dist/discovery/configuration.js +63 -0
  15. package/dist/discovery/corpus.d.ts +8 -0
  16. package/dist/discovery/corpus.d.ts.map +1 -0
  17. package/dist/discovery/corpus.js +64 -0
  18. package/dist/discovery/diagnostics.d.ts +15 -0
  19. package/dist/discovery/diagnostics.d.ts.map +1 -0
  20. package/dist/discovery/diagnostics.js +11 -0
  21. package/dist/discovery/discoverer.d.ts +23 -0
  22. package/dist/discovery/discoverer.d.ts.map +1 -0
  23. package/dist/discovery/discoverer.js +261 -0
  24. package/dist/discovery/embedding-configuration.d.ts +12 -0
  25. package/dist/discovery/embedding-configuration.d.ts.map +1 -0
  26. package/dist/discovery/embedding-configuration.js +81 -0
  27. package/dist/discovery/embedding-types.d.ts +75 -0
  28. package/dist/discovery/embedding-types.d.ts.map +1 -0
  29. package/dist/discovery/embedding-types.js +1 -0
  30. package/dist/discovery/embeddings.d.ts +38 -0
  31. package/dist/discovery/embeddings.d.ts.map +1 -0
  32. package/dist/discovery/embeddings.js +71 -0
  33. package/dist/discovery/evaluation-validation.d.ts +8 -0
  34. package/dist/discovery/evaluation-validation.d.ts.map +1 -0
  35. package/dist/discovery/evaluation-validation.js +19 -0
  36. package/dist/discovery/evaluation.d.ts +84 -0
  37. package/dist/discovery/evaluation.d.ts.map +1 -0
  38. package/dist/discovery/evaluation.js +310 -0
  39. package/dist/discovery/export.d.ts +14 -0
  40. package/dist/discovery/export.d.ts.map +1 -0
  41. package/dist/discovery/export.js +81 -0
  42. package/dist/discovery/facade.d.ts +82 -0
  43. package/dist/discovery/facade.d.ts.map +1 -0
  44. package/dist/discovery/facade.js +266 -0
  45. package/dist/discovery/fingerprint.d.ts +71 -0
  46. package/dist/discovery/fingerprint.d.ts.map +1 -0
  47. package/dist/discovery/fingerprint.js +67 -0
  48. package/dist/discovery/index-builder.d.ts +3 -0
  49. package/dist/discovery/index-builder.d.ts.map +1 -0
  50. package/dist/discovery/index-builder.js +129 -0
  51. package/dist/discovery/index-validation.d.ts +12 -0
  52. package/dist/discovery/index-validation.d.ts.map +1 -0
  53. package/dist/discovery/index-validation.js +117 -0
  54. package/dist/discovery/index.d.ts +32 -0
  55. package/dist/discovery/index.d.ts.map +1 -0
  56. package/dist/discovery/index.js +18 -0
  57. package/dist/discovery/json-snapshot.d.ts +3 -0
  58. package/dist/discovery/json-snapshot.d.ts.map +1 -0
  59. package/dist/discovery/json-snapshot.js +11 -0
  60. package/dist/discovery/lexical.d.ts +12 -0
  61. package/dist/discovery/lexical.d.ts.map +1 -0
  62. package/dist/discovery/lexical.js +26 -0
  63. package/dist/discovery/metadata.d.ts +4 -0
  64. package/dist/discovery/metadata.d.ts.map +1 -0
  65. package/dist/discovery/metadata.js +33 -0
  66. package/dist/discovery/ranking.d.ts +7 -0
  67. package/dist/discovery/ranking.d.ts.map +1 -0
  68. package/dist/discovery/ranking.js +68 -0
  69. package/dist/discovery/replay.d.ts +50 -0
  70. package/dist/discovery/replay.d.ts.map +1 -0
  71. package/dist/discovery/replay.js +175 -0
  72. package/dist/discovery/retrieval-policy.d.ts +5 -0
  73. package/dist/discovery/retrieval-policy.d.ts.map +1 -0
  74. package/dist/discovery/retrieval-policy.js +10 -0
  75. package/dist/discovery/router.d.ts +39 -0
  76. package/dist/discovery/router.d.ts.map +1 -0
  77. package/dist/discovery/router.js +98 -0
  78. package/dist/discovery/selection-attempt.d.ts +20 -0
  79. package/dist/discovery/selection-attempt.d.ts.map +1 -0
  80. package/dist/discovery/selection-attempt.js +39 -0
  81. package/dist/discovery/selection-cards.d.ts +12 -0
  82. package/dist/discovery/selection-cards.d.ts.map +1 -0
  83. package/dist/discovery/selection-cards.js +79 -0
  84. package/dist/discovery/selection-configuration.d.ts +18 -0
  85. package/dist/discovery/selection-configuration.d.ts.map +1 -0
  86. package/dist/discovery/selection-configuration.js +71 -0
  87. package/dist/discovery/selection-response.d.ts +13 -0
  88. package/dist/discovery/selection-response.d.ts.map +1 -0
  89. package/dist/discovery/selection-response.js +47 -0
  90. package/dist/discovery/selection-types.d.ts +18 -0
  91. package/dist/discovery/selection-types.d.ts.map +1 -0
  92. package/dist/discovery/selection-types.js +1 -0
  93. package/dist/discovery/selection.d.ts +6 -0
  94. package/dist/discovery/selection.d.ts.map +1 -0
  95. package/dist/discovery/selection.js +145 -0
  96. package/dist/discovery/types.d.ts +291 -0
  97. package/dist/discovery/types.d.ts.map +1 -0
  98. package/dist/discovery/types.js +1 -0
  99. package/dist/discovery/usage.d.ts +2 -0
  100. package/dist/discovery/usage.d.ts.map +1 -0
  101. package/dist/discovery/usage.js +1 -0
  102. package/dist/discovery/vectors.d.ts +5 -0
  103. package/dist/discovery/vectors.d.ts.map +1 -0
  104. package/dist/discovery/vectors.js +43 -0
  105. package/dist/discovery/versions.d.ts +37 -0
  106. package/dist/discovery/versions.d.ts.map +1 -0
  107. package/dist/discovery/versions.js +36 -0
  108. package/dist/evals-live/live-eval-runner.d.ts +1 -0
  109. package/dist/evals-live/live-eval-runner.d.ts.map +1 -1
  110. package/dist/evals-live/live-eval-runner.js +12 -1
  111. package/dist/evals-live/types.d.ts +3 -0
  112. package/dist/evals-live/types.d.ts.map +1 -1
  113. package/dist/generated/manifest-types.d.ts +3655 -0
  114. package/dist/generated/manifest-types.d.ts.map +1 -1
  115. package/dist/loader.d.ts.map +1 -1
  116. package/dist/loader.js +8 -0
  117. package/dist/mcp-server/server.d.ts.map +1 -1
  118. package/dist/mcp-server/server.js +11 -2
  119. package/dist/mcp-server/types.d.ts +4 -0
  120. package/dist/mcp-server/types.d.ts.map +1 -1
  121. package/dist/observability/redaction.d.ts.map +1 -1
  122. package/dist/observability/redaction.js +6 -2
  123. package/dist/observability/types.d.ts +1 -1
  124. package/dist/observability/types.d.ts.map +1 -1
  125. package/dist/openai/index.d.ts +2 -0
  126. package/dist/openai/index.d.ts.map +1 -1
  127. package/dist/openai/index.js +1 -0
  128. package/dist/openai/responses-runner.d.ts +1 -1
  129. package/dist/openai/responses-runner.d.ts.map +1 -1
  130. package/dist/openai/responses-runner.js +134 -7
  131. package/dist/openai/selection-client.d.ts +28 -0
  132. package/dist/openai/selection-client.d.ts.map +1 -0
  133. package/dist/openai/selection-client.js +95 -0
  134. package/dist/openai/tool-loop.js +1 -1
  135. package/dist/openai/types.d.ts +19 -2
  136. package/dist/openai/types.d.ts.map +1 -1
  137. package/dist/replay/discovery-snapshot.d.ts +10 -0
  138. package/dist/replay/discovery-snapshot.d.ts.map +1 -0
  139. package/dist/replay/discovery-snapshot.js +17 -0
  140. package/dist/replay/recorder.d.ts.map +1 -1
  141. package/dist/replay/recorder.js +4 -0
  142. package/dist/replay/redaction.js +5 -1
  143. package/dist/replay/replayer.d.ts.map +1 -1
  144. package/dist/replay/replayer.js +14 -1
  145. package/dist/replay/types.d.ts +3 -0
  146. package/dist/replay/types.d.ts.map +1 -1
  147. package/dist/replay/validation.d.ts.map +1 -1
  148. package/dist/replay/validation.js +6 -0
  149. package/dist/runtime/bounded-json.d.ts +4 -0
  150. package/dist/runtime/bounded-json.d.ts.map +1 -0
  151. package/dist/runtime/bounded-json.js +74 -0
  152. package/dist/runtime/eligibility.d.ts +4 -0
  153. package/dist/runtime/eligibility.d.ts.map +1 -0
  154. package/dist/runtime/eligibility.js +128 -0
  155. package/dist/runtime/index.d.ts +5 -1
  156. package/dist/runtime/index.d.ts.map +1 -1
  157. package/dist/runtime/index.js +2 -0
  158. package/dist/runtime/provider-attempt.d.ts +11 -0
  159. package/dist/runtime/provider-attempt.d.ts.map +1 -0
  160. package/dist/runtime/provider-attempt.js +221 -0
  161. package/dist/runtime/provider-run.d.ts +10 -0
  162. package/dist/runtime/provider-run.d.ts.map +1 -0
  163. package/dist/runtime/provider-run.js +123 -0
  164. package/dist/runtime/provider-stop.d.ts +9 -0
  165. package/dist/runtime/provider-stop.d.ts.map +1 -0
  166. package/dist/runtime/provider-stop.js +28 -0
  167. package/dist/runtime/provider-types.d.ts +189 -0
  168. package/dist/runtime/provider-types.d.ts.map +1 -0
  169. package/dist/runtime/provider-types.js +1 -0
  170. package/dist/runtime/provider-usage.d.ts +9 -0
  171. package/dist/runtime/provider-usage.d.ts.map +1 -0
  172. package/dist/runtime/provider-usage.js +69 -0
  173. package/dist/runtime/router.d.ts.map +1 -1
  174. package/dist/runtime/router.js +3 -118
  175. package/dist/runtime/types.d.ts +9 -0
  176. package/dist/runtime/types.d.ts.map +1 -1
  177. package/dist/types.d.ts +1 -1
  178. package/dist/types.d.ts.map +1 -1
  179. package/dist/validator.d.ts +3 -0
  180. package/dist/validator.d.ts.map +1 -1
  181. package/dist/validator.js +32 -0
  182. package/docs/api/public-api-policy.md +7 -0
  183. package/docs/api.md +7 -0
  184. package/docs/capability-manifests.md +24 -0
  185. package/docs/discovery.md +191 -0
  186. package/docs/evals/discovery-live.md +199 -0
  187. package/docs/evals/discovery-qualification.md +153 -0
  188. package/docs/evals/overview.md +9 -0
  189. package/docs/index.md +9 -0
  190. package/docs/release.md +25 -5
  191. package/docs/runtime.md +22 -0
  192. package/examples/12-capability-discovery-selection/README.md +345 -0
  193. package/examples/12-capability-discovery-selection/customer-cases.mjs +52 -0
  194. package/examples/12-capability-discovery-selection/customer-harness.mjs +91 -0
  195. package/examples/12-capability-discovery-selection/customer-request-example.mjs +320 -0
  196. package/examples/12-capability-discovery-selection/discovery-example.mjs +175 -0
  197. package/examples/12-capability-discovery-selection/discovery-fixtures/three-domains.suite.json +7887 -0
  198. package/examples/12-capability-discovery-selection/discovery-fixtures/three-domains.v2.suite.json +8167 -0
  199. package/examples/12-capability-discovery-selection/discovery-fixtures/three-domains.v3.suite.json +8342 -0
  200. package/examples/12-capability-discovery-selection/evaluation/application.mjs +305 -0
  201. package/examples/12-capability-discovery-selection/evaluation/campaign.mjs +248 -0
  202. package/examples/12-capability-discovery-selection/evaluation/clients.mjs +433 -0
  203. package/examples/12-capability-discovery-selection/evaluation/continuation.mjs +208 -0
  204. package/examples/12-capability-discovery-selection/evaluation/durable-budget.mjs +420 -0
  205. package/examples/12-capability-discovery-selection/evaluation/freeze.mjs +9 -0
  206. package/examples/12-capability-discovery-selection/evaluation/harness.mjs +618 -0
  207. package/examples/12-capability-discovery-selection/evaluation/mock-host.mjs +260 -0
  208. package/examples/12-capability-discovery-selection/evaluation/preflight.mjs +115 -0
  209. package/examples/12-capability-discovery-selection/evaluation/qualification-workflows.mjs +87 -0
  210. package/examples/12-capability-discovery-selection/evaluation/regrade.mjs +281 -0
  211. package/examples/12-capability-discovery-selection/evaluation/report.mjs +517 -0
  212. package/examples/12-capability-discovery-selection/evaluation/runner.mjs +613 -0
  213. package/examples/12-capability-discovery-selection/evaluation/saved-campaign.mjs +385 -0
  214. package/examples/12-capability-discovery-selection/evaluation/wording.mjs +115 -0
  215. package/examples/12-capability-discovery-selection/evaluation/workflow-application.mjs +378 -0
  216. package/examples/12-capability-discovery-selection/evaluation/workflow-cases.mjs +90 -0
  217. package/examples/12-capability-discovery-selection/evaluation-example.mjs +154 -0
  218. package/examples/12-capability-discovery-selection/hybrid-example.mjs +174 -0
  219. package/examples/12-capability-discovery-selection/mock-embeddings.mjs +101 -0
  220. package/examples/12-capability-discovery-selection/mock-selection.mjs +78 -0
  221. package/examples/12-capability-discovery-selection/pipeline-example.mjs +496 -0
  222. package/examples/12-capability-discovery-selection/retrieval-cases.mjs +31 -0
  223. package/examples/12-capability-discovery-selection/run-campaign-mock.mjs +40 -0
  224. package/examples/12-capability-discovery-selection/run-customer-mock.mjs +15 -0
  225. package/examples/12-capability-discovery-selection/run-evaluation-live.mjs +10 -0
  226. package/examples/12-capability-discovery-selection/run-evaluation-mock.mjs +3 -0
  227. package/examples/12-capability-discovery-selection/run-evaluation-regrade.mjs +71 -0
  228. package/examples/12-capability-discovery-selection/run-hybrid-mock.mjs +3 -0
  229. package/examples/12-capability-discovery-selection/run-mock.mjs +3 -0
  230. package/examples/12-capability-discovery-selection/run-pipeline-mock.mjs +2 -0
  231. package/examples/12-capability-discovery-selection/run-selector-mock.mjs +3 -0
  232. package/examples/12-capability-discovery-selection/selection-example.mjs +88 -0
  233. package/package.json +17 -4
  234. package/schemas/discovery/embedding-index.schema.json +71 -0
  235. package/schemas/discovery/eval-observations.schema.json +409 -0
  236. package/schemas/discovery/eval-suite.schema.json +375 -0
  237. package/schemas/discovery/metadata.schema.json +30 -0
  238. package/schemas/discovery/selection-response.schema.json +47 -0
  239. package/schemas/replay/discovery-snapshot.schema.json +335 -0
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ErrorObject } from "ajv";
1
2
  import type { AicfDiagnostic, LoadedFixture, LoadedManifest, ValidateManifestsOptions, ValidationResult } from "./types.js";
2
3
  export declare function validateManifests(manifests: LoadedManifest[], _options?: ValidateManifestsOptions): ValidationResult;
3
4
  export declare function validatePublicFixtures(fixtures: LoadedFixture[]): ValidationResult;
@@ -5,4 +6,6 @@ export declare function validateCapabilityInvariants(manifests: LoadedManifest[]
5
6
  errors: AicfDiagnostic[];
6
7
  warnings: AicfDiagnostic[];
7
8
  };
9
+ /** Internal schema boundary shared with the optional discovery metadata resolver. */
10
+ export declare function validateDiscoveryMetadata(value: unknown): ErrorObject[];
8
11
  //# sourceMappingURL=validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,cAAc,EAEd,aAAa,EACb,cAAc,EAEd,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAkCpB,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,cAAc,EAAE,EAC3B,QAAQ,GAAE,wBAA6B,GACtC,gBAAgB,CAelB;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAkClF;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG;IACzE,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,CAkGA"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAEvC,OAAO,KAAK,EACV,cAAc,EAEd,aAAa,EACb,cAAc,EAEd,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAsCpB,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,cAAc,EAAE,EAC3B,QAAQ,GAAE,wBAA6B,GACtC,gBAAgB,CAgBlB;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAkClF;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG;IACzE,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,CAkGA;AAqCD,qFAAqF;AACrF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,EAAE,CAOvE"}
package/dist/validator.js CHANGED
@@ -6,13 +6,17 @@ const schemaDirectory = path.resolve(path.dirname(fileURLToPath(import.meta.url)
6
6
  const ajv = new Ajv2020({ allErrors: true, strict: false });
7
7
  const embeddedSchemaAjv = new Ajv2020({ allErrors: true, strict: false });
8
8
  const fixtureAjv = new Ajv2020({ allErrors: true, strict: false });
9
+ fixtureAjv.addSchema(readSchema("capability-manifest.schema.json"));
9
10
  const adapterContextSchema = readSchema("adapter-context.schema.json");
11
+ const discoveryMetadataValidator = ajv.compile(readSchema("discovery/metadata.schema.json"));
10
12
  const validators = {
11
13
  capability: compileSchema("capability-manifest.schema.json"),
12
14
  entity: compileSchema("entity-manifest.schema.json"),
13
15
  eval: compileSchema("eval-case.schema.json")
14
16
  };
15
17
  const fixtureValidators = {
18
+ discovery_eval_suite: fixtureAjv.compile(readSchema("discovery/eval-suite.schema.json")),
19
+ discovery_eval_observations: fixtureAjv.compile(readSchema("discovery/eval-observations.schema.json")),
16
20
  adapter_context: fixtureAjv.compile(adapterContextSchema),
17
21
  control_plane_state: fixtureAjv.compile(readSchema("control-plane/state.schema.json")),
18
22
  decision_request: fixtureAjv.compile(readSchema("decision-request.schema.json")),
@@ -33,6 +37,7 @@ export function validateManifests(manifests, _options = {}) {
33
37
  const invariants = validateCapabilityInvariants(manifests);
34
38
  const errors = [
35
39
  ...validateSchemas(manifests),
40
+ ...validateDiscoveryMetadataExtensions(manifests),
36
41
  ...validateDuplicateIds(manifests),
37
42
  ...validateEvalReferences(manifests),
38
43
  ...validateEmbeddedCapabilitySchemas(manifests),
@@ -186,6 +191,33 @@ function validateSchemas(manifests) {
186
191
  }
187
192
  return errors;
188
193
  }
194
+ /** Internal schema boundary shared with the optional discovery metadata resolver. */
195
+ export function validateDiscoveryMetadata(value) {
196
+ if (discoveryMetadataValidator(value))
197
+ return [];
198
+ return (discoveryMetadataValidator.errors ?? []).map((error) => ({
199
+ ...error,
200
+ params: { ...error.params },
201
+ instancePath: `/extensions/discovery${error.instancePath}`
202
+ }));
203
+ }
204
+ function validateDiscoveryMetadataExtensions(manifests) {
205
+ return manifests.flatMap((loaded) => {
206
+ if (loaded.kind !== "capability" || !loaded.manifest || typeof loaded.manifest !== "object")
207
+ return [];
208
+ const extensions = loaded.manifest.extensions;
209
+ if (!extensions || typeof extensions !== "object" || !Object.prototype.hasOwnProperty.call(extensions, "discovery"))
210
+ return [];
211
+ return validateDiscoveryMetadata(extensions.discovery).map((error) => ({
212
+ code: "schema",
213
+ details: error,
214
+ id: idFromManifest(loaded.manifest),
215
+ kind: loaded.kind,
216
+ message: `${error.instancePath}: ${error.message ?? "schema validation failed"}`,
217
+ path: loaded.path
218
+ }));
219
+ });
220
+ }
189
221
  function validateDuplicateIds(manifests) {
190
222
  const errors = [];
191
223
  const seen = new Map();
@@ -47,6 +47,13 @@ cloud, tracing, or CLI implementation dependencies.
47
47
  | CLI implementation helpers other than `runCli` and `CliRunOptions` | should move to subpath | Keep private to the CLI module unless a future release documents a narrow public contract. |
48
48
  | Undocumented source files, generated internals, and private helper functions | should be removed before v1 | Do not expose through package exports. |
49
49
 
50
+ The `ai-capability-framework/discovery` subpath is **release-candidate public**. It
51
+ contains the documented facade, advanced retrieval/index/selection/replay contracts,
52
+ budget helper, and evaluation API. Provider adapters stay in their existing subpaths.
53
+ Discovery is optional and adds no implementation dependency to root/runtime imports. Its
54
+ interface classification does not establish real-model retrieval quality. See
55
+ [capability discovery](../discovery.md).
56
+
50
57
  ## Migration Note For Release-Candidate Users
51
58
 
52
59
  If a release-candidate app imported `runCli` from the package root, change it to:
package/docs/api.md CHANGED
@@ -821,3 +821,10 @@ notes when relevant, and the GitHub release notes checklist in `docs/release.md`
821
821
  Final release readiness uses repository scripts rather than TypeScript APIs:
822
822
  `npm run check`, `npm run check:public`, and `npm run check:certification`. The final
823
823
  gate is documented in [Final v1 certification](public-framework/v1-certification.md).
824
+
825
+ ## Capability discovery
826
+
827
+ The optional release-candidate `ai-capability-framework/discovery` API provides a simple
828
+ search facade, result-bound routers, explicit hybrid retrieval and dedicated selection,
829
+ and provider-free evaluation. Start with
830
+ [finding capabilities for a task](discovery.md).
@@ -25,6 +25,30 @@ See [the 1.0 spec](spec.md) for the shared vocabulary.
25
25
  - `idempotency`: Optional commit idempotency requirements.
26
26
  - `observability`: Logging and trace expectations.
27
27
 
28
+ ## Optional Discovery Metadata
29
+
30
+ The reserved `extensions.discovery` object accepts authored retrieval vocabulary:
31
+
32
+ ```yaml
33
+ extensions:
34
+ discovery:
35
+ schema_version: "1.0"
36
+ summary: Read the recorded details of a support ticket.
37
+ aliases:
38
+ - ticket details
39
+ - support case status
40
+ ```
41
+
42
+ When present, this object is validated against the
43
+ [discovery metadata schema](../schemas/discovery/metadata.schema.json). Its version is
44
+ required; summary and aliases are optional. A summary must be nonblank and at most 500
45
+ characters. Supply at most 32 nonblank aliases of at most 120 characters each. Other
46
+ fields inside this object are rejected; unrelated extensions remain valid.
47
+
48
+ This metadata does not change default routing, authorization, or execution. The default
49
+ router continues to use its existing lexical metadata. Optional retrieval and selection
50
+ are available through the [discovery subpath](discovery.md).
51
+
28
52
  ## Lifecycle Guidance
29
53
 
30
54
  Use `write_prepare_only` for capabilities that assemble a proposed action but do not
@@ -0,0 +1,191 @@
1
+ # Find capabilities for a task
2
+
3
+ Install the release-candidate package with
4
+ `npm install ai-capability-framework@1.1.0-rc.1`. Lexical retrieval with ordinary model
5
+ tool selection is the recommended default.
6
+
7
+ ```ts
8
+ import { createCapabilityDiscovery } from "ai-capability-framework/discovery";
9
+
10
+ const discovery = createCapabilityDiscovery({ registry });
11
+
12
+ const [result] = await discovery.search({
13
+ tasks: [{ id: "read-ticket", text: "Read ticket TCK-100." }],
14
+ runtimeContext
15
+ });
16
+
17
+ const router = discovery.routerFor(result);
18
+ ```
19
+
20
+ Supply the router to your existing model/tool runner. For example, pass `router`,
21
+ `registry`, the same `runtimeContext`, and `userInput: { text: "Read ticket TCK-100." }`
22
+ to `runOpenAIResponses` alongside your ordinary client, model, and executor. The model
23
+ chooses a tool and supplies arguments; the runtime validates and authorizes execution.
24
+
25
+ The recommended flow is **customer request → application AI produces tasks → discovery
26
+ returns a shortlist → ordinary model/tool loop chooses → runtime validates and
27
+ executes**. Applications own decomposition, task dependencies, argument completion, and
28
+ customer responses. Search each dependent task when its context is ready.
29
+
30
+ Discovery is an optional **release-candidate public API**. It does not change
31
+ `DefaultCapabilityRouter`. Results contain eligible candidates, scores, diagnostics,
32
+ usage, and version bindings. A useful shortlist is the goal; neither ranking first nor a
33
+ high score authorizes execution or guarantees a suitable tool.
34
+
35
+ Until a release includes this subpath, use a locally packed tarball for
36
+ installed-package examples. The unreleased source and tarball checks do not publish a
37
+ new npm version.
38
+
39
+ ## Defaults and result handling
40
+
41
+ The standard profile uses lexical retrieval, at most eight candidates, positive-score
42
+ admission, no alias bonus or diversity slot, and a 30-second deadline shortened by an
43
+ earlier caller deadline. It makes no provider calls. Text is normalized with NFKC and
44
+ lowercase and tokenized into Unicode letters and numbers. There are no synonyms or stop
45
+ words; shared common words can produce irrelevant candidates.
46
+
47
+ Search accepts task IDs/text, existing runtime context, controls, eligibility options,
48
+ cancellation, deadlines, an optional budget, and an optional provider run. Results keep
49
+ input order and task IDs. See [API reference](api.md) for bounded limits and advanced
50
+ fragment/custom-ranker interfaces.
51
+
52
+ Use `matched` results in the ordinary loop. For `no_match`, ask the customer to clarify
53
+ or explain the available functionality. Treat `unavailable` and `cancelled` as explicit
54
+ operational outcomes. Do not choose the first candidate as a failure fallback.
55
+
56
+ `routerFor(result)` reuses the issued shortlist without retrieving or embedding again.
57
+ Keep the discovery instance and result within the request. Foreign, reconstructed,
58
+ expired, or stale results are rejected. Export and dispatch recheck the original task,
59
+ invocation, source, permissions, controls, cancellation, and deadline. Prepare dependent
60
+ context before searching, rather than changing it after obtaining a result. Commit
61
+ operations are never exposed through discovery routers.
62
+
63
+ ## Complete no-key example
64
+
65
+ Run from a source checkout after `npm run build`:
66
+
67
+ ```sh
68
+ node examples/12-capability-discovery-selection/run-customer-mock.mjs
69
+ ```
70
+
71
+ For an installed package, run the packaged example from your project directory:
72
+
73
+ ```sh
74
+ node node_modules/ai-capability-framework/examples/12-capability-discovery-selection/run-customer-mock.mjs
75
+ ```
76
+
77
+ The synthetic customer asks to read a ticket and prepare its order refund. Mock planning
78
+ produces two dependent tasks. The application reads the ticket, carries its order ID
79
+ into the second task, and prepares a preview requiring approval. It reports one planning
80
+ turn, four ordinary turns, one read, one preparation, and zero commits. No real provider
81
+ calls occur. See the
82
+ [example guide](../examples/12-capability-discovery-selection/README.md).
83
+
84
+ ## Explicit hybrid retrieval
85
+
86
+ Hybrid is experimental and opt-in. It passed the tested safety and workflow gates, but
87
+ missed the incremental-gain requirement. See the
88
+ [qualification results and limits](evals/discovery-qualification.md).
89
+
90
+ Enable `mode: "hybrid"` with your embedding client, a separately built compatible index,
91
+ an input-token ceiling, and a finite budget. The facade's starting weights are 0.75
92
+ semantic and 0.25 lexical; quality must be evaluated for your application. Failures
93
+ return unavailable unless you explicitly configure `lexical_fallback`.
94
+
95
+ `buildCapabilityEmbeddingIndex` is an explicit administrative operation. Serving never
96
+ builds, repairs, or loads an index implicitly. Index validation binds exact manifests,
97
+ projection, model configuration, mock/live provenance, dimensions, and vectors. Host
98
+ storage implements atomic complete-artifact replacement. Supply clients with hidden
99
+ retries disabled and enforce their token ceilings.
100
+
101
+ Advanced `CapabilityDiscoverer` configuration remains explicit. The facade supplies
102
+ convenience defaults without changing that low-level contract.
103
+
104
+ ## Optional dedicated selection
105
+
106
+ The default integration needs no dedicated selector client. If a separate model choice
107
+ is useful, invoke it explicitly:
108
+
109
+ ```ts
110
+ const batch = await discovery.select({
111
+ results,
112
+ client: selectionClient,
113
+ budget,
114
+ maxInputTokens: 4000,
115
+ maxOutputTokens: 1000
116
+ });
117
+ const selectedRouter = discovery.routerFor(batch, "read-ticket");
118
+ ```
119
+
120
+ The framework constructs task-local candidate cards and validates selection or
121
+ abstention. Non-matched discovery tasks remain visible without fabricated decisions.
122
+ Consume batch decisions one task at a time. The selected router repeats no retrieval,
123
+ embedding, or selector call. Arguments, approval, and execution remain separate.
124
+
125
+ Supply model access and configuration yourself. The optional Responses-compatible
126
+ `createOpenAISelectionClient` adapter lives under `ai-capability-framework/openai` and
127
+ requires a complete-input token preflight. No credentials, model, endpoint, or pricing
128
+ are inferred.
129
+
130
+ ## Budgets, tracing, and replay
131
+
132
+ `createInMemoryDiscoveryBudget` supplies a finite single-run ledger with call and token
133
+ caps, optional output-token/cost caps, and conservative reservations for unknown usage.
134
+ Cost caps require per-attempt reservation ceilings. It lasts for one process; use a host
135
+ ledger for distributed or durable enforcement.
136
+
137
+ Optionally create one `createAicfProviderRun` from the runtime subpath. Its `attempt`
138
+ method can include application planning and response calls. Pass it to search; selection
139
+ and result-bound routers recover the scope. The Responses runner's explicit
140
+ `providerExecution` options account for ordinary turns. Run totals count unique attempts
141
+ once; adding overlapping stage receipts would double-count consumption. Unmanaged SDK
142
+ calls are not observed. Missing usage stays unknown, and pending calls retain
143
+ reservations until observed settlement.
144
+
145
+ Discovery tracing emits bounded metadata, counts, bindings, and usage completeness, with
146
+ 256 retained run-local events. It does not emit task text, prompts, cards, vectors,
147
+ arguments, or provider payloads. Hosts own retention; hashes are not anonymization.
148
+
149
+ Snapshot replay checks structure, bindings, and membership. Deterministic ranking replay
150
+ additionally needs original fragments and compatible ranking/vector fixtures. Missing
151
+ fixtures cause explicit refusal. Neither path reproduces model semantic decisions. See
152
+ [replay guidance](evals/replay-and-trace-to-golden.md).
153
+
154
+ ## Offline evaluation and quality
155
+
156
+ Run `npm run eval:discovery:mock` for the frozen 240-case, three-domain lexical baseline
157
+ and independently scripted selection observations. The provider-free
158
+ `evaluateCapabilityDiscovery({ suite, registry, observations })` accepts compatible-ID
159
+ sets and forbidden IDs/operations and reports retrieval and selection separately.
160
+
161
+ Reports include counts and denominators, incomplete cases, operational outcomes,
162
+ latency, provenance, and deduplicated usage. Empty denominators and unknown consumption
163
+ remain null. Authoritative schemas are exported under `schemas/discovery/`; recognized
164
+ `discovery-fixtures/*.suite.json` and `*.observations.json` files work with
165
+ `aicf validate`. Observation validation requires the matching suite in the validation
166
+ input.
167
+
168
+ A valid report means its observations and bindings are consistent. It does not mean the
169
+ reported quality or safety metrics pass your application's gates.
170
+
171
+ The dataset has 120 train, 60 calibration, and 60 held-out cases, split by scenario
172
+ family. Public hold-out fixtures provide reproducibility, not blind evaluation. Do not
173
+ tune against observed held-out failures and continue calling the set held-out. Record
174
+ dataset corrections as a new suite version and fingerprint.
175
+
176
+ Use optional `caseIds` for partition or cohort reports while retaining the complete
177
+ suite fingerprint. Missing scoped cases remain incomplete. Versioned corrected fixtures
178
+ and explicit live campaign tooling are described in the
179
+ [real-model evaluation guide](evals/discovery-live.md). The live command defaults to
180
+ offline validation and requires caller-supplied model access and an explicit budget
181
+ before any paid work.
182
+
183
+ The [versioned qualification report](evals/discovery-qualification.md) records
184
+ real-model results for the tested synthetic configuration and the separate offline
185
+ wording correction. Both lexical modes qualified; hybrid did not meet its
186
+ incremental-gain gate.
187
+
188
+ Mock integration establishes contracts, not real-model quality. Offline lexical misses
189
+ are reported without changing defaults to fit the suite. Real embedding quality, native
190
+ model choice, dedicated selection, and complete workflow quality need separate
191
+ evaluation with explicit clients, budgets, and application-specific acceptance gates.
@@ -0,0 +1,199 @@
1
+ # Evaluating discovery with real models
2
+
3
+ For the completed campaign and its separate offline reassessment, see the
4
+ [qualification report](discovery-qualification.md). Lexical/native is the recommended
5
+ default. Hybrid remains experimental because its incremental-gain gate was not met.
6
+
7
+ Discovery returns an eligible shortlist. Evaluate whether it contains a useful tool,
8
+ whether the model chooses correctly or abstains, and whether the application completes
9
+ the request. Keep these measurements separate.
10
+
11
+ ## Start without provider access
12
+
13
+ ```sh
14
+ npm run eval:discovery:live
15
+ ```
16
+
17
+ This validates the frozen fixture and prints its planned inventory without importing a
18
+ host module, loading an SDK, reading credentials, or calling a provider.
19
+
20
+ The original 240-case suite remains unchanged. Its v2 revision corrects domain schemas
21
+ and lifecycle links and replaces held-out families. Revision 2.1 also aligns explicit
22
+ held-out amounts and quantity changes with their application facts. Version 3 preserves
23
+ all 180 train/calibration requests and labels, supplies verified preparation readiness
24
+ facts, and introduces 60 fresh held-out cases in new families. The original twelve
25
+ workflows remain development regressions; twelve new workflows form the qualification
26
+ schedule. Historical versions and results remain unchanged. All versions load through
27
+ ordinary manifest validation. Evaluation-only capabilities do not add manifests to the
28
+ framework's normal inventory.
29
+
30
+ Use explicit subsets without changing the suite binding:
31
+
32
+ ```ts
33
+ const report = evaluateCapabilityDiscovery({
34
+ suite,
35
+ registry,
36
+ observations,
37
+ caseIds: calibrationCaseIds
38
+ });
39
+ ```
40
+
41
+ Reports retain the full suite fingerprint and add an order-independent scope
42
+ fingerprint. Duplicate/foreign scope IDs and observations outside that scope are
43
+ rejected. Scheduled cases with no observation remain missing; an empty denominator
44
+ remains `null`.
45
+
46
+ ## Supply a host explicitly
47
+
48
+ Live execution requires `--live` and `--config <ignored-host.json>`. The JSON
49
+ configuration contains `campaignId`, `hostModule`, `sdkVersion`, `tokenizerIdentity`,
50
+ `pricing`, an ignored `evidenceDirectory`, and `predecessor`. Keep credentials outside
51
+ it. The predecessor pins the original campaign directory, fingerprint and exact SHA-256
52
+ journal hash. A continuation inherits only its verified remaining allowances. One
53
+ permanent atomic claim prevents multiple campaigns from spending the same remainder;
54
+ matching resume is allowed, sibling continuations are refused.
55
+
56
+ The host module exports `createHostInputs()`, returning an already configured `sdk`, a
57
+ `tokenizer(text)` that counts `cl100k_base` tokens, and the matching `sdkVersion` and
58
+ `tokenizerIdentity`. Install tokenizer tooling in the host environment. The framework
59
+ package acquires no tokenizer or SDK dependency.
60
+
61
+ Supply pricing fields `inputPerMillion`, `outputPerMillion`, `embeddingPerMillion`,
62
+ `tokenCountPerRequest`, `premiumMultiplier`, and an ISO `checkedAt` within the last 24
63
+ hours. Input pricing must conservatively cover cache writes; include applicable regional
64
+ premiums and do not assume cache discounts. Rechecking identical rates does not change
65
+ the campaign binding. Prices are caller-supplied, never inferred from credentials.
66
+
67
+ This reference campaign fixes `gpt-6-luna` with reasoning disabled and
68
+ `text-embedding-3-small` with 1,536 dimensions. These are evaluation settings, not
69
+ framework defaults. The host explicitly uses Responses input counting for the complete
70
+ request, including tools and schemas. Continuations replay full history without stored
71
+ conversations. Token-count HTTP requests are recorded separately from generation usage.
72
+
73
+ Before live work, retain matching offline acceptance evidence at
74
+ `.aicf/discovery-implementation/phase-7a/offline-acceptance.json`. It binds source,
75
+ suite, workflows, and passing build, typecheck, tests, validation, conformance, package,
76
+ and mocked-campaign checks. Run `npm run eval:discovery:campaign:mock` for the complete
77
+ provider-free campaign. Its synthetic choices and vectors cannot qualify a real model.
78
+
79
+ ## Run and resume stages
80
+
81
+ ```sh
82
+ npm run eval:discovery:live -- --config .aicf/host.json --stage all --live
83
+ ```
84
+
85
+ Individual stages are `index`, `train`, `baseline`, `freeze`, `qualify`, and
86
+ `workflows`. `--stage report --config ...` reads matching evidence without loading the
87
+ host or calling providers. The index is an explicit administrative build; serving stages
88
+ never rebuild or repair it.
89
+
90
+ Cases run sequentially with rotating mode order. This rerun fixes the shortlist at eight
91
+ candidates and uses a four-mode calibration baseline; there is no K=4 stage. Fixture,
92
+ prompt, application-contract, grading and schedule bindings are frozen before live work.
93
+ Qualification runs the full suite once and held-out cases three times. Every failed
94
+ trial remains in the report.
95
+
96
+ Resume by using the same configuration and evidence directory. A campaign lock prevents
97
+ concurrent owners. Journal records, artifact hashes, and bindings must match. Pending
98
+ work after a crash is not automatically purchased again. Reconcile uncertain provider
99
+ requests and outstanding reservations before continuing; do not delete evidence to
100
+ manufacture a fresh pass. Lock removal requires verifying the previous owner has
101
+ stopped.
102
+
103
+ The reference caps are 10,000 generation/embedding attempts, 20,000 total HTTP requests,
104
+ 80 million input tokens, 10 million output tokens, and USD 25. All stages share those
105
+ caps, including predecessor work. Capacity preflight checks the entire schedule against
106
+ the remainder before loading live clients. Prior, current and cumulative charges are
107
+ reported separately. Unknown usage retains reserved allowance and stays unknown in
108
+ reports. Accounting failure stops paid work. This journal is a single-owner evaluation
109
+ host, not a distributed production budget service.
110
+
111
+ ## Interpret qualification
112
+
113
+ ### Regrade saved wording offline
114
+
115
+ The example-local regrader corrects bounded wording checks for equivalent dates,
116
+ explicit negation and prospective actions. It assesses every saved workflow without
117
+ rerunning planning, discovery, selection, tools or customer-response generation.
118
+
119
+ Create an ignored input JSON file with these fields:
120
+
121
+ - `schemaVersion`: `"1.0"`.
122
+ - `campaignDirectory` and `reportPath`: paths to the completed campaign
123
+ journal/artifacts directory and original campaign-result JSON, relative to the input
124
+ file.
125
+ - `campaignFingerprint`, `journalHash` and `reportHash`: pinned SHA-256 bindings. The
126
+ journal and report hashes cover their exact bytes and use the `sha256:` prefix.
127
+
128
+ From the repository root, run:
129
+
130
+ ```sh
131
+ node examples/12-capability-discovery-selection/run-evaluation-regrade.mjs \
132
+ --input .aicf/regrade-input.json --output .aicf/regrade-output
133
+ ```
134
+
135
+ The output must be a separate ignored directory. Existing output is accepted only when
136
+ it matches exactly. The command validates immutable artifact hashes, the complete
137
+ version-3 schedule and fixtures, original report reproduction and settled accounting. It
138
+ does not load host configuration, credentials, SDKs or provider clients, and never opens
139
+ a campaign ledger. Missing or incompatible evidence is refused.
140
+
141
+ `regrade.json` records original and revised decisions, each workflow's changed checks,
142
+ checker/source versions and fingerprints. Historical provider usage remains historical;
143
+ regrading usage is separately zero. Actual customer responses, tool receipts and
144
+ fallback use remain unchanged. A corrected assessment can accept saved model wording
145
+ even when the original application delivered a fallback. It cannot erase operational
146
+ failures, unknown usage or unrelated grading failures.
147
+
148
+ This is an offline reassessment of existing evidence, not another live qualification
149
+ trial. Preserve the original report and report revisions separately. Retrieval,
150
+ selection, latency, cohort and hybrid-promotion gates remain unchanged.
151
+
152
+ ### Qualification gates
153
+
154
+ Each mode receives full-suite, held-out, cohort, latency, usage, and workflow results.
155
+ Retrieval false positives differ from false model selections. An eligible competing
156
+ candidate is not itself an authorization violation. Scores never authorize execution.
157
+
158
+ The reference gates require zero safety violations, at least 95% compatible recall and
159
+ selection accuracy, at least 90% selection coverage, at most 1% no-match false
160
+ selection, and p95 ready-task latency at most 15 seconds. Every ready task has a
161
+ 30-second deadline. A critical-cohort decline greater than five percentage points fails
162
+ comparison against that mode's declared calibration baseline, on the full pass and every
163
+ held-out repetition. Each repetition must pass; pooled averages cannot hide one failed
164
+ repetition.
165
+
166
+ Hybrid also needs a measured gain over lexical retrieval at the same shortlist size and
167
+ selection mechanism. Workflow grading checks authorized reads, dependencies, arguments,
168
+ approval-required previews, and customer claims with deterministic handlers and checks.
169
+ No real business action or commit occurs. Planning returns explicit read/prepare tasks
170
+ or terminal clarification with no tasks. The original customer request, ready-task
171
+ objective and authorized prerequisite receipts remain available as untrusted model
172
+ input. Host policy checks each task's operation and verified preparation prerequisites.
173
+ Revocation persists across the complete application run; blocked parent branches stop
174
+ without purchasing dependent work.
175
+
176
+ The application owns response facts: approval comes from prepared-action requirements,
177
+ and missing access, clarification and unavailability remain distinct. It deduplicates
178
+ summary IDs while retaining execution history. A bounded checker validates model wording
179
+ against the synthetic facts; rejected wording is recorded and replaced by a
180
+ deterministic response. A valid fallback can satisfy application delivery while model
181
+ wording still fails. A post-tool provider error retains successful receipts, records
182
+ degraded completion and unknown consumption, and never repeats the action.
183
+
184
+ Reports separate retrieval, selection, planning/dependencies, authorization/lifecycle,
185
+ application delivery, wording and operational reliability. An irrelevant authorized read
186
+ remains an intent failure even when framework authorization worked correctly. All
187
+ components contribute to the overall qualification conjunction. Workflow calls must meet
188
+ the same usage-completeness requirements as standalone trials.
189
+
190
+ Validated plans, task text, dependency associations, dispositions and response-check
191
+ failures are bounded application evidence under the ignored campaign directory.
192
+ Framework trace events remain metadata-only. The wording checker is specific to these
193
+ synthetic fixtures, not a framework prose-verification API.
194
+
195
+ Reports include counts, family coverage, and descriptive confidence intervals. Public
196
+ synthetic families are reproducible, not an independent blind benchmark. Missing cases,
197
+ unresolved accounting, and operational failures remain visible. A complete campaign may
198
+ conclude that a mode is unqualified. No package default or production setting changes
199
+ automatically.