@c4a/context-cli 0.6.19 → 0.7.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 (273) hide show
  1. package/README.md +67 -6
  2. package/README.zh-CN.md +42 -5
  3. package/cli.js +75051 -42154
  4. package/indexers/bundles/context-code-indexer/SKILL.md +20 -0
  5. package/indexers/bundles/context-code-indexer/context-indexer.yaml +230 -0
  6. package/indexers/bundles/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
  7. package/indexers/bundles/context-code-indexer/references/composers/cross-module-chain.md +22 -0
  8. package/indexers/bundles/context-code-indexer/references/composers/development-and-delivery.md +22 -0
  9. package/indexers/bundles/context-code-indexer/references/composers/event-flow.md +21 -0
  10. package/indexers/bundles/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
  11. package/indexers/bundles/context-code-indexer/references/composers/persistence-boundary.md +21 -0
  12. package/indexers/bundles/context-code-indexer/references/composers/protocol-boundary.md +22 -0
  13. package/indexers/bundles/context-code-indexer/references/composers/public-contract.md +23 -0
  14. package/indexers/bundles/context-code-indexer/references/indexer.md +49 -0
  15. package/indexers/bundles/context-code-indexer/references/metrics.md +201 -0
  16. package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +119 -0
  17. package/indexers/bundles/context-code-indexer/templates/api-service.md +118 -0
  18. package/indexers/bundles/context-code-indexer/templates/background-runtime.md +109 -0
  19. package/indexers/bundles/context-code-indexer/templates/cli-tool.md +129 -0
  20. package/indexers/bundles/context-code-indexer/templates/component-library.md +99 -0
  21. package/indexers/bundles/context-code-indexer/templates/contract-source.md +73 -0
  22. package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
  23. package/indexers/bundles/context-code-indexer/templates/derived-generated-source.md +117 -0
  24. package/indexers/bundles/context-code-indexer/templates/domain-service.md +109 -0
  25. package/indexers/bundles/context-code-indexer/templates/event-consumer.md +62 -0
  26. package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +89 -0
  27. package/indexers/bundles/context-code-indexer/templates/monorepo-container.md +124 -0
  28. package/indexers/bundles/context-code-indexer/templates/plugin-extension.md +52 -0
  29. package/indexers/bundles/context-code-indexer/templates/sdk-library.md +132 -0
  30. package/indexers/bundles/context-code-indexer/templates/storage-repository.md +56 -0
  31. package/indexers/bundles/context-code-indexer/templates/web-application.md +146 -0
  32. package/indexers/bundles/context-code-indexer/tests/fixtures/chapters.json +226 -0
  33. package/indexers/bundles/context-code-indexer/tests/fixtures/composers.json +82 -0
  34. package/indexers/bundles/context-code-indexer/tests/fixtures/profiles.json +210 -0
  35. package/indexers/bundles/context-code-indexer/tests/fixtures/scenarios.json +122 -0
  36. package/indexers/bundles/context-markdown-indexer/SKILL.md +20 -0
  37. package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +147 -0
  38. package/indexers/bundles/context-markdown-indexer/references/classification.md +63 -0
  39. package/indexers/bundles/context-markdown-indexer/references/editorial-policy.md +106 -0
  40. package/indexers/bundles/context-markdown-indexer/references/indexer.md +23 -0
  41. package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +146 -0
  42. package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
  43. package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
  44. package/indexers/bundles/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
  45. package/indexers/bundles/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
  46. package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
  47. package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +151 -0
  48. package/indexers/capability-manifest.json +40 -0
  49. package/indexers/contracts/hard-rule-conformance.json +2644 -0
  50. package/indexers/contracts/operator-contract.json +35 -0
  51. package/indexers/contracts/profile-contract.json +10162 -0
  52. package/indexers/release-manifest.json +208 -0
  53. package/package.json +5 -4
  54. package/plugins/README.md +17 -109
  55. package/plugins/README_CN.md +11 -89
  56. package/plugins/VERSION +1 -1
  57. package/plugins/claude/.claude-plugin/plugin.json +3 -11
  58. package/plugins/claude/CLAUDE.md +1 -1
  59. package/plugins/claude/README.md +1 -1
  60. package/plugins/claude/commands/context.md +76 -1
  61. package/plugins/codex/.codex-plugin/plugin.json +6 -17
  62. package/plugins/codex/AGENTS.md +1 -1
  63. package/plugins/codex/README.md +1 -1
  64. package/plugins/codex/skills/context/SKILL.md +77 -13
  65. package/plugins/cursor/.cursor-plugin/plugin.json +4 -17
  66. package/plugins/cursor/AGENTS.md +1 -1
  67. package/plugins/cursor/README.md +3 -2
  68. package/plugins/cursor/commands/c4a-context.md +76 -3
  69. package/plugins/skills/{c4a-context → context}/SKILL.md +78 -14
  70. package/plugins/skills/context-code-indexer/SKILL.md +20 -0
  71. package/plugins/skills/context-code-indexer/context-indexer.yaml +230 -0
  72. package/plugins/skills/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
  73. package/plugins/skills/context-code-indexer/references/composers/cross-module-chain.md +22 -0
  74. package/plugins/skills/context-code-indexer/references/composers/development-and-delivery.md +22 -0
  75. package/plugins/skills/context-code-indexer/references/composers/event-flow.md +21 -0
  76. package/plugins/skills/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
  77. package/plugins/skills/context-code-indexer/references/composers/persistence-boundary.md +21 -0
  78. package/plugins/skills/context-code-indexer/references/composers/protocol-boundary.md +22 -0
  79. package/plugins/skills/context-code-indexer/references/composers/public-contract.md +23 -0
  80. package/plugins/skills/context-code-indexer/references/indexer.md +49 -0
  81. package/plugins/skills/context-code-indexer/references/metrics.md +201 -0
  82. package/plugins/skills/context-code-indexer/templates/adapter-integration.md +119 -0
  83. package/plugins/skills/context-code-indexer/templates/api-service.md +118 -0
  84. package/plugins/skills/context-code-indexer/templates/background-runtime.md +109 -0
  85. package/plugins/skills/context-code-indexer/templates/cli-tool.md +129 -0
  86. package/plugins/skills/context-code-indexer/templates/component-library.md +99 -0
  87. package/plugins/skills/context-code-indexer/templates/contract-source.md +73 -0
  88. package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
  89. package/plugins/skills/context-code-indexer/templates/derived-generated-source.md +117 -0
  90. package/plugins/skills/context-code-indexer/templates/domain-service.md +109 -0
  91. package/plugins/skills/context-code-indexer/templates/event-consumer.md +62 -0
  92. package/plugins/skills/context-code-indexer/templates/gateway-facade.md +89 -0
  93. package/plugins/skills/context-code-indexer/templates/monorepo-container.md +124 -0
  94. package/plugins/skills/context-code-indexer/templates/plugin-extension.md +52 -0
  95. package/plugins/skills/context-code-indexer/templates/sdk-library.md +132 -0
  96. package/plugins/skills/context-code-indexer/templates/storage-repository.md +56 -0
  97. package/plugins/skills/context-code-indexer/templates/web-application.md +146 -0
  98. package/plugins/skills/context-code-indexer/tests/fixtures/chapters.json +226 -0
  99. package/plugins/skills/context-code-indexer/tests/fixtures/composers.json +82 -0
  100. package/plugins/skills/context-code-indexer/tests/fixtures/profiles.json +210 -0
  101. package/plugins/skills/context-code-indexer/tests/fixtures/scenarios.json +122 -0
  102. package/plugins/skills/context-markdown-indexer/SKILL.md +20 -0
  103. package/plugins/skills/context-markdown-indexer/context-indexer.yaml +147 -0
  104. package/plugins/skills/context-markdown-indexer/references/classification.md +63 -0
  105. package/plugins/skills/context-markdown-indexer/references/editorial-policy.md +106 -0
  106. package/plugins/skills/context-markdown-indexer/references/indexer.md +23 -0
  107. package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +146 -0
  108. package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
  109. package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
  110. package/plugins/skills/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
  111. package/plugins/skills/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
  112. package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
  113. package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +151 -0
  114. package/providers/context/actions/accept-main-index-run.yaml +7 -0
  115. package/providers/context/actions/accept-material-answer-run.yaml +7 -0
  116. package/providers/context/actions/accept-post-author-composer-run.yaml +7 -0
  117. package/providers/context/actions/actualize-material-answer-bindings.yaml +8 -0
  118. package/providers/context/actions/apply-document-optimization-guidance.yaml +5 -0
  119. package/providers/context/actions/apply-indexer-project.yaml +7 -0
  120. package/providers/context/actions/audit-material-gap-state.yaml +8 -0
  121. package/providers/context/actions/audit-projected-artifact-fan-out.yaml +8 -0
  122. package/providers/context/actions/authorize-indexer-contract-overlay.yaml +7 -0
  123. package/providers/context/actions/authorize-indexer-dependencies.yaml +7 -0
  124. package/providers/context/actions/authorize-indexer-program-execution.yaml +7 -0
  125. package/providers/context/actions/build-main-index-author-worksets.yaml +7 -0
  126. package/providers/context/actions/build-main-index-catalog-fallback.yaml +7 -0
  127. package/providers/context/actions/build-main-index-partition-worksets.yaml +7 -0
  128. package/providers/context/actions/build-material-question-workset.yaml +7 -0
  129. package/providers/context/actions/build-post-author-composer-worksets.yaml +7 -0
  130. package/providers/context/actions/build-question-target-inventory.yaml +7 -0
  131. package/providers/context/actions/build-subject-catalog.yaml +7 -0
  132. package/providers/context/actions/build-target-resolution-views.yaml +7 -0
  133. package/providers/context/actions/checkpoint-material-answer-review.yaml +8 -0
  134. package/providers/context/actions/checkpoint-material-gaps.yaml +8 -0
  135. package/providers/context/actions/close-indexer-approved-knowledge.yaml +8 -0
  136. package/providers/context/actions/compile-indexer-candidates.yaml +8 -0
  137. package/providers/context/actions/compose-indexer-post-author-fragments.yaml +7 -0
  138. package/providers/context/actions/configure-community-indexer-fallback.yaml +6 -0
  139. package/providers/context/actions/configure-indexer-providers.yaml +6 -0
  140. package/providers/context/actions/confirm-index-requirement-workset.yaml +8 -0
  141. package/providers/context/actions/confirm-subject-reidentification.yaml +8 -0
  142. package/providers/context/actions/converge-main-index-partition-run.yaml +7 -0
  143. package/providers/context/actions/discover-markdown-indexer-providers.yaml +6 -0
  144. package/providers/context/actions/evaluate-material-gaps.yaml +8 -0
  145. package/providers/context/actions/fail-main-index-run.yaml +7 -0
  146. package/providers/context/actions/fail-material-answer-run.yaml +7 -0
  147. package/providers/context/actions/fail-post-author-composer-run.yaml +7 -0
  148. package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +8 -0
  149. package/providers/context/actions/inspect-index-profile-failure.yaml +7 -0
  150. package/providers/context/actions/inspect-indexer-dependencies.yaml +7 -0
  151. package/providers/context/actions/inspect-indexer-program-execution.yaml +7 -0
  152. package/providers/context/actions/inspect-indexer-project-proposal.yaml +7 -0
  153. package/providers/context/actions/inspect-markdown-provider-capture.yaml +7 -0
  154. package/providers/context/actions/inspect-material-answer-review.yaml +8 -0
  155. package/providers/context/actions/materialize-indexer-instructions.yaml +7 -0
  156. package/providers/context/actions/observe-indexer-project.yaml +7 -0
  157. package/providers/context/actions/observe-main-index-run-ledger.yaml +7 -0
  158. package/providers/context/actions/observe-material-answer-runs.yaml +7 -0
  159. package/providers/context/actions/observe-post-author-composer-worksets.yaml +7 -0
  160. package/providers/context/actions/override-index-profile-audit.yaml +7 -0
  161. package/providers/context/actions/prepare-indexer-customization-project.yaml +7 -0
  162. package/providers/context/actions/prepare-main-index-run-ledger.yaml +7 -0
  163. package/providers/context/actions/prepare-material-answer-runs.yaml +7 -0
  164. package/providers/context/actions/propose-indexer-customization.yaml +7 -0
  165. package/providers/context/actions/propose-overlay-question-amendment.yaml +7 -0
  166. package/providers/context/actions/rebind-indexer-selection-to-requirement.yaml +7 -0
  167. package/providers/context/actions/reconcile-indexer-results.yaml +7 -0
  168. package/providers/context/actions/record-index-profile-revision.yaml +7 -0
  169. package/providers/context/actions/report-index-profile-failure.yaml +7 -0
  170. package/providers/context/actions/report-indexer-incremental-impact.yaml +8 -0
  171. package/providers/context/actions/resolve-effective-composers.yaml +7 -0
  172. package/providers/context/actions/review-material-answer-candidate.yaml +8 -0
  173. package/providers/context/actions/revise-index-output.yaml +7 -0
  174. package/providers/context/actions/route-index-requirement-confirmation.yaml +8 -0
  175. package/providers/context/actions/route-indexer-provider-selection.yaml +7 -0
  176. package/providers/context/actions/run-indexer-agent-step.yaml +7 -0
  177. package/providers/context/actions/run-indexer-post-author-composer.yaml +7 -0
  178. package/providers/context/actions/run-material-answer-indexers.yaml +7 -0
  179. package/providers/context/actions/start-main-index-run.yaml +7 -0
  180. package/providers/context/actions/start-material-answer-run.yaml +7 -0
  181. package/providers/context/actions/start-post-author-composer-run.yaml +7 -0
  182. package/providers/context/actions/validate-indexer-contract-overlays.yaml +7 -0
  183. package/providers/context/actions/validate-indexer-customization.yaml +7 -0
  184. package/providers/context/actions/validate-indexer-selection-proposal.yaml +7 -0
  185. package/providers/context/actions/validate-main-index-run.yaml +7 -0
  186. package/providers/context/actions/validate-markdown-provider-selection.yaml +7 -0
  187. package/providers/context/actions/validate-subject-key-schemas.yaml +8 -0
  188. package/providers/context/codes.yaml +70 -0
  189. package/providers/context/graphs/indexer.yaml +1068 -0
  190. package/providers/context/graphs/workspace.yaml +20 -1
  191. package/providers/context/manifest.json +1433 -121
  192. package/providers/context/provider.yaml +3 -2
  193. package/providers/context/resources/manuals/reference/code-extractors.md +2 -2
  194. package/providers/context/resources/manuals/reference/project-api.md +2 -2
  195. package/providers/context/resources/procedures/code-extraction.md +6 -2
  196. package/providers/context/resources/procedures/code-index-audit.md +36 -6
  197. package/providers/context/resources/procedures/document-optimization.md +23 -4
  198. package/providers/context/resources/semantic/code-index/templates/adapter.md +9 -0
  199. package/providers/context/resources/semantic/code-index/templates/contracts-and-chains.md +81 -0
  200. package/providers/context/resources/views/resolved-indexer-instructions.yaml +23 -0
  201. package/providers/context/schemas/document-optimization-decisions.schema.json +1 -1
  202. package/providers/context/schemas/indexer-agent-step-input.schema.json +30 -0
  203. package/providers/context/schemas/indexer-agent-step-result.schema.json +47 -0
  204. package/providers/context/schemas/indexer-candidate-compile-input.schema.json +57 -0
  205. package/providers/context/schemas/indexer-candidate-compile-output.schema.json +38 -0
  206. package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +46 -0
  207. package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +104 -0
  208. package/providers/context/schemas/indexer-contract-overlay-authorization-input.schema.json +32 -0
  209. package/providers/context/schemas/indexer-contract-overlay-authorization-result.schema.json +121 -0
  210. package/providers/context/schemas/indexer-contract-overlay-validation-input.schema.json +90 -0
  211. package/providers/context/schemas/indexer-contract-overlay-validation-result.schema.json +158 -0
  212. package/providers/context/schemas/indexer-customization-project-preparation-result.schema.json +44 -0
  213. package/providers/context/schemas/indexer-customization-proposal-draft.schema.json +83 -0
  214. package/providers/context/schemas/indexer-customization-validation-result.schema.json +36 -0
  215. package/providers/context/schemas/indexer-dependency-authorization-input.schema.json +71 -0
  216. package/providers/context/schemas/indexer-dependency-authorization-result.schema.json +138 -0
  217. package/providers/context/schemas/indexer-incremental-impact-input.schema.json +31 -0
  218. package/providers/context/schemas/indexer-incremental-impact-output.schema.json +52 -0
  219. package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +187 -0
  220. package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +180 -0
  221. package/providers/context/schemas/indexer-markdown-provider-capture-input.schema.json +17 -0
  222. package/providers/context/schemas/indexer-markdown-provider-capture-output.schema.json +54 -0
  223. package/providers/context/schemas/indexer-markdown-provider-validation-input.schema.json +34 -0
  224. package/providers/context/schemas/indexer-markdown-provider-validation-output.schema.json +75 -0
  225. package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +90 -0
  226. package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +80 -0
  227. package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +32 -0
  228. package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +32 -0
  229. package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +19 -0
  230. package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +87 -0
  231. package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +86 -0
  232. package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +19 -0
  233. package/providers/context/schemas/indexer-materialize-request.schema.json +53 -0
  234. package/providers/context/schemas/indexer-materialized-resource.schema.json +57 -0
  235. package/providers/context/schemas/indexer-overlay-question-amendment.schema.json +13 -0
  236. package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +40 -0
  237. package/providers/context/schemas/indexer-overlay-question-rebind-input.schema.json +35 -0
  238. package/providers/context/schemas/indexer-overlay-question-rebind-result.schema.json +25 -0
  239. package/providers/context/schemas/indexer-post-author-fragment-request.schema.json +26 -0
  240. package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +18 -0
  241. package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +94 -0
  242. package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +72 -0
  243. package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +13 -0
  244. package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +19 -0
  245. package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +22 -0
  246. package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +49 -0
  247. package/providers/context/schemas/indexer-profile-override-decision.schema.json +20 -0
  248. package/providers/context/schemas/indexer-profile-override-result.schema.json +49 -0
  249. package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +18 -0
  250. package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +31 -0
  251. package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +45 -0
  252. package/providers/context/schemas/indexer-program-execution-authorization-input.schema.json +145 -0
  253. package/providers/context/schemas/indexer-program-execution-authorization-result.schema.json +60 -0
  254. package/providers/context/schemas/indexer-project-action-result.schema.json +19 -0
  255. package/providers/context/schemas/indexer-project-gate-input.schema.json +100 -0
  256. package/providers/context/schemas/indexer-project-observation-input.schema.json +16 -0
  257. package/providers/context/schemas/indexer-project-observation-result.schema.json +42 -0
  258. package/providers/context/schemas/indexer-provider-route-input.schema.json +55 -0
  259. package/providers/context/schemas/indexer-provider-route-report.schema.json +188 -0
  260. package/providers/context/schemas/indexer-requirement-confirmation-input.schema.json +27 -0
  261. package/providers/context/schemas/indexer-requirement-confirmation-output.schema.json +24 -0
  262. package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +59 -0
  263. package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +43 -0
  264. package/providers/context/schemas/indexer-selection-proposal-input.schema.json +12 -0
  265. package/providers/context/schemas/indexer-selection-proposal-validation.schema.json +23 -0
  266. package/providers/context/schemas/indexer-subject-reidentification-input.schema.json +37 -0
  267. package/providers/context/schemas/indexer-subject-reidentification-output.schema.json +31 -0
  268. package/providers/context/skills/configure-indexer-providers/SKILL.md +58 -0
  269. package/providers/context/skills/prepare-indexer-customization-project/SKILL.md +31 -0
  270. package/providers/context/skills/propose-indexer-customization/SKILL.md +40 -0
  271. package/providers/context/skills/revise-index-output/SKILL.md +12 -0
  272. package/providers/context/skills/run-indexer-agent-step/SKILL.md +20 -0
  273. package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +21 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-failure-inspection-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "failure_report_digest", "input_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-failure-inspection-input/v1" },
9
+ "failure_report_digest": { "$ref": "#/$defs/digest" },
10
+ "input_digest": { "$ref": "#/$defs/digest" }
11
+ },
12
+ "$defs": { "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } }
13
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-failure-inspection-result/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "state", "failure_report", "failed_metric_ids", "capability_losses", "options", "graph_outcome", "reason_code", "result_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-failure-inspection-result/v1" },
9
+ "state": { "const": "explicit-decision-required" },
10
+ "failure_report": { "type": "object" },
11
+ "failed_metric_ids": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
12
+ "capability_losses": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } },
13
+ "options": { "type": "array", "minItems": 3, "items": { "type": "string" } },
14
+ "graph_outcome": { "const": "completed" },
15
+ "reason_code": { "const": "index-profile-explicit-override-required" },
16
+ "result_digest": { "$ref": "#/$defs/digest" }
17
+ },
18
+ "$defs": { "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } }
19
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-failure-report-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "lineage_id", "precompile_audit_report_digest", "audit_report_digest", "expected_ledger_digest", "module_profiles", "expected_artifacts", "metrics", "likely_missing_inputs", "capability_losses", "options", "input_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-failure-report-input/v1" },
9
+ "lineage_id": { "$ref": "#/$defs/digest" },
10
+ "precompile_audit_report_digest": { "$ref": "#/$defs/digest" },
11
+ "audit_report_digest": { "$ref": "#/$defs/digest" },
12
+ "expected_ledger_digest": { "$ref": "#/$defs/digest" },
13
+ "module_profiles": { "type": "array", "minItems": 1, "items": { "type": "object" } },
14
+ "expected_artifacts": { "type": "array", "minItems": 1, "items": { "type": "object" } },
15
+ "metrics": { "type": "array", "minItems": 1, "items": { "type": "object" } },
16
+ "likely_missing_inputs": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
17
+ "capability_losses": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
18
+ "options": { "type": "array", "minItems": 3, "uniqueItems": true, "items": { "enum": ["provide-material", "change-scope", "correct-classification", "force-approve-risk"] } },
19
+ "input_digest": { "$ref": "#/$defs/digest" }
20
+ },
21
+ "$defs": { "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } }
22
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-failure-report-result/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "state", "lineage_id", "precompile_audit_report_digest", "audit_report_digest", "failure_report_digest", "failed_metric_ids", "attempts", "capability_losses", "options", "audit_facts", "graph_outcome", "reason_code", "result_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-failure-report-result/v1" },
9
+ "state": { "const": "explicit-decision-required" },
10
+ "lineage_id": { "$ref": "#/$defs/digest" },
11
+ "precompile_audit_report_digest": { "$ref": "#/$defs/digest" },
12
+ "audit_report_digest": { "$ref": "#/$defs/digest" },
13
+ "failure_report_digest": { "$ref": "#/$defs/digest" },
14
+ "failed_metric_ids": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
15
+ "attempts": { "type": "array", "minItems": 3, "maxItems": 3, "items": { "$ref": "#/$defs/digest" } },
16
+ "capability_losses": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } },
17
+ "options": { "type": "array", "minItems": 3, "items": { "type": "string" } },
18
+ "audit_facts": { "$ref": "#/$defs/auditFacts" },
19
+ "graph_outcome": { "const": "completed" },
20
+ "reason_code": { "const": "index-profile-explicit-override-required" },
21
+ "result_digest": { "$ref": "#/$defs/digest" }
22
+ },
23
+ "$defs": {
24
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
25
+ "auditFacts": {
26
+ "type": "object",
27
+ "additionalProperties": false,
28
+ "required": ["protocol", "audit", "facts_digest"],
29
+ "properties": {
30
+ "protocol": { "const": "context.indexer.audit-facts/v1" },
31
+ "audit": {
32
+ "type": "object",
33
+ "additionalProperties": false,
34
+ "required": ["baseline_clear", "profile_state", "problem_lineage_id", "profile_attempt_count", "profile_report_digest", "profile_override_eligible", "profile_override_receipt_digest"],
35
+ "properties": {
36
+ "baseline_clear": { "type": "boolean" },
37
+ "profile_state": { "enum": ["not-applicable", "passed", "revision-required", "human-guidance-required"] },
38
+ "problem_lineage_id": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] },
39
+ "profile_attempt_count": { "type": "integer", "minimum": 0, "maximum": 3 },
40
+ "profile_report_digest": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] },
41
+ "profile_override_eligible": { "type": "boolean" },
42
+ "profile_override_receipt_digest": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] }
43
+ }
44
+ },
45
+ "facts_digest": { "$ref": "#/$defs/digest" }
46
+ }
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-override-decision/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "failure_report_digest", "audit_report_digest", "binding", "indexer_result_fingerprint", "failed_metric_ids", "decision", "confirmed_by", "confirmed_at", "decision_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-override-decision/v1" },
9
+ "failure_report_digest": { "$ref": "#/$defs/digest" },
10
+ "audit_report_digest": { "$ref": "#/$defs/digest" },
11
+ "binding": { "type": "object" },
12
+ "indexer_result_fingerprint": { "$ref": "#/$defs/digest" },
13
+ "failed_metric_ids": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
14
+ "decision": { "const": "force-approve-profile-risk" },
15
+ "confirmed_by": { "type": "string", "minLength": 1 },
16
+ "confirmed_at": { "type": "string", "format": "date-time" },
17
+ "decision_digest": { "$ref": "#/$defs/digest" }
18
+ },
19
+ "$defs": { "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } }
20
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-override-result/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "state", "failure_report_digest", "precompile_audit_report_digest", "audit_report_digest", "profile_override_receipt_digest", "indexer_result_fingerprint", "failed_metric_ids", "confirmed_by", "confirmed_at", "audit_facts", "graph_outcome", "reason_code", "result_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-override-result/v1" },
9
+ "state": { "const": "profile-risk-overridden" },
10
+ "failure_report_digest": { "$ref": "#/$defs/digest" },
11
+ "precompile_audit_report_digest": { "$ref": "#/$defs/digest" },
12
+ "audit_report_digest": { "$ref": "#/$defs/digest" },
13
+ "profile_override_receipt_digest": { "$ref": "#/$defs/digest" },
14
+ "indexer_result_fingerprint": { "$ref": "#/$defs/digest" },
15
+ "failed_metric_ids": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
16
+ "confirmed_by": { "type": "string", "minLength": 1 },
17
+ "confirmed_at": { "type": "string", "format": "date-time" },
18
+ "audit_facts": { "$ref": "#/$defs/auditFacts" },
19
+ "graph_outcome": { "const": "completed" },
20
+ "reason_code": { "const": "index-profile-override-recorded" },
21
+ "result_digest": { "$ref": "#/$defs/digest" }
22
+ },
23
+ "$defs": {
24
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
25
+ "auditFacts": {
26
+ "type": "object",
27
+ "additionalProperties": false,
28
+ "required": ["protocol", "audit", "facts_digest"],
29
+ "properties": {
30
+ "protocol": { "const": "context.indexer.audit-facts/v1" },
31
+ "audit": {
32
+ "type": "object",
33
+ "additionalProperties": false,
34
+ "required": ["baseline_clear", "profile_state", "problem_lineage_id", "profile_attempt_count", "profile_report_digest", "profile_override_eligible", "profile_override_receipt_digest"],
35
+ "properties": {
36
+ "baseline_clear": { "type": "boolean" },
37
+ "profile_state": { "enum": ["not-applicable", "passed", "revision-required", "human-guidance-required"] },
38
+ "problem_lineage_id": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] },
39
+ "profile_attempt_count": { "type": "integer", "minimum": 0, "maximum": 3 },
40
+ "profile_report_digest": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] },
41
+ "profile_override_eligible": { "type": "boolean" },
42
+ "profile_override_receipt_digest": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] }
43
+ }
44
+ },
45
+ "facts_digest": { "$ref": "#/$defs/digest" }
46
+ }
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-revision-agent-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "lineage", "precompile_audit_report_digest", "audit_report_digest", "failed_metric_ids", "current_result_fingerprint", "expected_ledger_digest", "input_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-revision-agent-input/v1" },
9
+ "lineage": { "type": "object" },
10
+ "precompile_audit_report_digest": { "$ref": "#/$defs/digest" },
11
+ "audit_report_digest": { "$ref": "#/$defs/digest" },
12
+ "failed_metric_ids": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
13
+ "current_result_fingerprint": { "$ref": "#/$defs/digest" },
14
+ "expected_ledger_digest": { "$ref": "#/$defs/digest" },
15
+ "input_digest": { "$ref": "#/$defs/digest" }
16
+ },
17
+ "$defs": { "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } }
18
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-revision-record-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "lineage", "precompile_audit_report_digest", "audit_report_digest", "indexer_result_fingerprint", "actions_taken", "unresolved_reasons", "expected_ledger_digest", "input_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-revision-record-input/v1" },
9
+ "lineage": {
10
+ "type": "object",
11
+ "additionalProperties": false,
12
+ "required": ["protocol", "requirement_lineage_id", "source_material_epoch", "unit_ref", "problem_class", "lineage_id"],
13
+ "properties": {
14
+ "protocol": { "const": "context.indexer.profile-problem-lineage/v1" },
15
+ "requirement_lineage_id": { "$ref": "#/$defs/digest" },
16
+ "source_material_epoch": { "$ref": "#/$defs/digest" },
17
+ "unit_ref": { "type": "string", "minLength": 1 },
18
+ "problem_class": { "type": "string", "minLength": 1 },
19
+ "lineage_id": { "$ref": "#/$defs/digest" }
20
+ }
21
+ },
22
+ "precompile_audit_report_digest": { "$ref": "#/$defs/digest" },
23
+ "audit_report_digest": { "$ref": "#/$defs/digest" },
24
+ "indexer_result_fingerprint": { "$ref": "#/$defs/digest" },
25
+ "actions_taken": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
26
+ "unresolved_reasons": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
27
+ "expected_ledger_digest": { "$ref": "#/$defs/digest" },
28
+ "input_digest": { "$ref": "#/$defs/digest" }
29
+ },
30
+ "$defs": { "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } }
31
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.profile-revision-record-result/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "state", "lineage_id", "attempt", "attempt_digest", "ledger_digest", "audit_facts", "graph_outcome", "reason_code", "result_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.profile-revision-record-result/v1" },
9
+ "state": { "enum": ["revision-required", "human-report-required"] },
10
+ "lineage_id": { "$ref": "#/$defs/digest" },
11
+ "attempt": { "type": "integer", "minimum": 1, "maximum": 3 },
12
+ "attempt_digest": { "$ref": "#/$defs/digest" },
13
+ "ledger_digest": { "$ref": "#/$defs/digest" },
14
+ "audit_facts": { "$ref": "#/$defs/auditFacts" },
15
+ "graph_outcome": { "enum": ["partial", "completed"] },
16
+ "reason_code": { "enum": ["index-profile-revision-required", "index-profile-human-report-required"] },
17
+ "result_digest": { "$ref": "#/$defs/digest" }
18
+ },
19
+ "$defs": {
20
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
21
+ "auditFacts": {
22
+ "type": "object",
23
+ "additionalProperties": false,
24
+ "required": ["protocol", "audit", "facts_digest"],
25
+ "properties": {
26
+ "protocol": { "const": "context.indexer.audit-facts/v1" },
27
+ "audit": {
28
+ "type": "object",
29
+ "additionalProperties": false,
30
+ "required": ["baseline_clear", "profile_state", "problem_lineage_id", "profile_attempt_count", "profile_report_digest", "profile_override_eligible", "profile_override_receipt_digest"],
31
+ "properties": {
32
+ "baseline_clear": { "type": "boolean" },
33
+ "profile_state": { "enum": ["not-applicable", "passed", "revision-required", "human-guidance-required"] },
34
+ "problem_lineage_id": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] },
35
+ "profile_attempt_count": { "type": "integer", "minimum": 0, "maximum": 3 },
36
+ "profile_report_digest": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] },
37
+ "profile_override_eligible": { "type": "boolean" },
38
+ "profile_override_receipt_digest": { "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }] }
39
+ }
40
+ },
41
+ "facts_digest": { "$ref": "#/$defs/digest" }
42
+ }
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,145 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.program-execution-authorization-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "report", "authority_ref", "authority_scope_digest", "input_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.program-execution-authorization-input/v1" },
9
+ "report": { "$ref": "#/$defs/report" },
10
+ "authority_ref": { "type": "string", "minLength": 1 },
11
+ "authority_scope_digest": { "$ref": "#/$defs/digest" },
12
+ "input_digest": { "$ref": "#/$defs/digest" }
13
+ },
14
+ "$defs": {
15
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
16
+ "provider": {
17
+ "type": "object",
18
+ "additionalProperties": false,
19
+ "required": [
20
+ "indexer_id",
21
+ "provider_id",
22
+ "skill",
23
+ "version",
24
+ "bundle_integrity",
25
+ "manifest_digest",
26
+ "provider_fingerprint",
27
+ "issuer",
28
+ "declared_trust"
29
+ ],
30
+ "properties": {
31
+ "indexer_id": { "type": "string", "minLength": 1 },
32
+ "provider_id": { "type": "string", "minLength": 1 },
33
+ "skill": { "type": "string", "minLength": 1 },
34
+ "version": { "type": "string", "minLength": 1 },
35
+ "bundle_integrity": { "$ref": "#/$defs/digest" },
36
+ "manifest_digest": { "$ref": "#/$defs/digest" },
37
+ "provider_fingerprint": { "$ref": "#/$defs/digest" },
38
+ "issuer": { "type": "string", "minLength": 1 },
39
+ "declared_trust": {
40
+ "enum": ["first-party", "verified", "project-authorized", "untrusted"]
41
+ }
42
+ }
43
+ },
44
+ "program": {
45
+ "oneOf": [
46
+ {
47
+ "type": "object",
48
+ "additionalProperties": false,
49
+ "required": ["origin", "path", "content_digest", "program_digest"],
50
+ "properties": {
51
+ "origin": { "const": "provider-bundle" },
52
+ "path": { "type": "string", "minLength": 1 },
53
+ "content_digest": { "$ref": "#/$defs/digest" },
54
+ "program_digest": { "$ref": "#/$defs/digest" }
55
+ }
56
+ },
57
+ {
58
+ "type": "object",
59
+ "additionalProperties": false,
60
+ "required": ["origin", "path", "content_digest", "program_digest"],
61
+ "properties": {
62
+ "origin": { "const": "project-local" },
63
+ "path": {
64
+ "type": "string",
65
+ "pattern": "^src/indexer/[a-z0-9][a-z0-9._-]*/index\\.ts$"
66
+ },
67
+ "content_digest": { "$ref": "#/$defs/digest" },
68
+ "program_digest": { "$ref": "#/$defs/digest" }
69
+ }
70
+ }
71
+ ]
72
+ },
73
+ "execution": {
74
+ "type": "object",
75
+ "additionalProperties": false,
76
+ "required": ["runtime", "entry", "args"],
77
+ "properties": {
78
+ "runtime": { "const": "node" },
79
+ "entry": { "type": "string", "minLength": 1 },
80
+ "args": { "type": "array", "items": { "type": "string" } }
81
+ }
82
+ },
83
+ "report": {
84
+ "type": "object",
85
+ "additionalProperties": false,
86
+ "required": [
87
+ "protocol",
88
+ "project_ref",
89
+ "provider",
90
+ "resource",
91
+ "program",
92
+ "execution",
93
+ "execution_digest",
94
+ "capabilities",
95
+ "capability_set_digest",
96
+ "dependency_set_digest",
97
+ "scope_digest",
98
+ "limits",
99
+ "execution_policy_digest",
100
+ "requested_level",
101
+ "sandboxed_program",
102
+ "report_digest"
103
+ ],
104
+ "properties": {
105
+ "protocol": { "const": "context.indexer.program-execution-authorization-report/v1" },
106
+ "project_ref": { "type": "string", "minLength": 1 },
107
+ "provider": { "$ref": "#/$defs/provider" },
108
+ "resource": { "const": "program" },
109
+ "program": { "$ref": "#/$defs/program" },
110
+ "execution": { "$ref": "#/$defs/execution" },
111
+ "execution_digest": { "$ref": "#/$defs/digest" },
112
+ "capabilities": {
113
+ "type": "array",
114
+ "minItems": 1,
115
+ "items": {
116
+ "enum": ["source.read", "parser-facts.read", "indexer-result.write"]
117
+ }
118
+ },
119
+ "capability_set_digest": { "$ref": "#/$defs/digest" },
120
+ "dependency_set_digest": { "$ref": "#/$defs/digest" },
121
+ "scope_digest": { "$ref": "#/$defs/digest" },
122
+ "limits": {
123
+ "type": "object",
124
+ "additionalProperties": false,
125
+ "required": [
126
+ "timeout_ms",
127
+ "max_stdin_bytes",
128
+ "max_stdout_bytes",
129
+ "max_stderr_bytes"
130
+ ],
131
+ "properties": {
132
+ "timeout_ms": { "type": "integer", "minimum": 100, "maximum": 300000 },
133
+ "max_stdin_bytes": { "type": "integer", "minimum": 1 },
134
+ "max_stdout_bytes": { "type": "integer", "minimum": 1 },
135
+ "max_stderr_bytes": { "type": "integer", "minimum": 1 }
136
+ }
137
+ },
138
+ "execution_policy_digest": { "$ref": "#/$defs/digest" },
139
+ "requested_level": { "const": "trusted-program" },
140
+ "sandboxed_program": { "const": false },
141
+ "report_digest": { "$ref": "#/$defs/digest" }
142
+ }
143
+ }
144
+ }
145
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.program-execution-authorization-result/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "report_digest", "authorization", "result_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.program-execution-authorization-result/v1" },
9
+ "report_digest": { "$ref": "#/$defs/digest" },
10
+ "authorization": { "$ref": "#/$defs/authorization" },
11
+ "result_digest": { "$ref": "#/$defs/digest" }
12
+ },
13
+ "$defs": {
14
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
15
+ "authorization": {
16
+ "type": "object",
17
+ "additionalProperties": false,
18
+ "required": [
19
+ "protocol",
20
+ "project_ref",
21
+ "provider_integrity",
22
+ "provider_fingerprint",
23
+ "manifest_digest",
24
+ "resource",
25
+ "program_origin",
26
+ "program_digest",
27
+ "execution_digest",
28
+ "capability_set_digest",
29
+ "dependency_set_digest",
30
+ "scope_digest",
31
+ "execution_policy_digest",
32
+ "report_digest",
33
+ "authority_ref",
34
+ "authority_scope_digest",
35
+ "sandboxed_program",
36
+ "receipt_digest"
37
+ ],
38
+ "properties": {
39
+ "protocol": { "const": "context.indexer.program-authorization/v1" },
40
+ "project_ref": { "type": "string", "minLength": 1 },
41
+ "provider_integrity": { "$ref": "#/$defs/digest" },
42
+ "provider_fingerprint": { "$ref": "#/$defs/digest" },
43
+ "manifest_digest": { "$ref": "#/$defs/digest" },
44
+ "resource": { "const": "program" },
45
+ "program_origin": { "enum": ["provider-bundle", "project-local"] },
46
+ "program_digest": { "$ref": "#/$defs/digest" },
47
+ "execution_digest": { "$ref": "#/$defs/digest" },
48
+ "capability_set_digest": { "$ref": "#/$defs/digest" },
49
+ "dependency_set_digest": { "$ref": "#/$defs/digest" },
50
+ "scope_digest": { "$ref": "#/$defs/digest" },
51
+ "execution_policy_digest": { "$ref": "#/$defs/digest" },
52
+ "report_digest": { "$ref": "#/$defs/digest" },
53
+ "authority_ref": { "type": "string", "minLength": 1 },
54
+ "authority_scope_digest": { "$ref": "#/$defs/digest" },
55
+ "sandboxed_program": { "const": false },
56
+ "receipt_digest": { "$ref": "#/$defs/digest" }
57
+ }
58
+ }
59
+ }
60
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.project-action-result/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "proposal_digest", "state", "receipt_digest"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.project-action-result/v1" },
9
+ "proposal_digest": {
10
+ "type": "string",
11
+ "pattern": "^sha256:[a-f0-9]{64}$"
12
+ },
13
+ "state": { "enum": ["inspected", "applied"] },
14
+ "receipt_digest": {
15
+ "type": "string",
16
+ "pattern": "^sha256:[a-f0-9]{64}$"
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,100 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.project-gate-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "protocol",
8
+ "proposal_digest",
9
+ "requirement_set_digest",
10
+ "mode",
11
+ "target_paths",
12
+ "providers",
13
+ "customizations",
14
+ "dependencies",
15
+ "dependency_intent_digest",
16
+ "capability_gap_digest",
17
+ "managed_confirmation_eligible",
18
+ "managed_confirmation_blockers",
19
+ "validation_report_digests",
20
+ "confirmation_batch_digest",
21
+ "input_digest"
22
+ ],
23
+ "properties": {
24
+ "protocol": { "const": "context.indexer.project-gate-input/v1" },
25
+ "proposal_digest": { "$ref": "#/$defs/digest" },
26
+ "requirement_set_digest": { "$ref": "#/$defs/digest" },
27
+ "mode": { "enum": ["registry-only", "customization"] },
28
+ "target_paths": {
29
+ "type": "array",
30
+ "minItems": 1,
31
+ "items": { "type": "string", "minLength": 1 }
32
+ },
33
+ "providers": {
34
+ "type": "array",
35
+ "minItems": 1,
36
+ "items": {
37
+ "type": "object",
38
+ "additionalProperties": false,
39
+ "required": ["indexer_id", "provider_id", "role", "skill", "version", "integrity"],
40
+ "properties": {
41
+ "indexer_id": { "type": "string", "minLength": 1 },
42
+ "provider_id": { "type": "string", "minLength": 1 },
43
+ "role": { "enum": ["primary", "extension"] },
44
+ "skill": { "type": "string", "minLength": 1 },
45
+ "version": { "type": "string", "minLength": 1 },
46
+ "integrity": { "$ref": "#/$defs/digest" }
47
+ }
48
+ }
49
+ },
50
+ "customizations": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "object",
54
+ "additionalProperties": false,
55
+ "required": ["indexer_id", "mode"],
56
+ "properties": {
57
+ "indexer_id": { "type": "string", "minLength": 1 },
58
+ "mode": { "enum": ["extend", "replace"] }
59
+ }
60
+ }
61
+ },
62
+ "dependencies": {
63
+ "type": "array",
64
+ "items": {
65
+ "type": "object",
66
+ "additionalProperties": false,
67
+ "required": ["package", "version", "state", "install_scripts"],
68
+ "properties": {
69
+ "package": { "type": "string", "minLength": 1 },
70
+ "version": { "type": "string", "minLength": 1 },
71
+ "state": { "enum": ["locked", "requires-authorization"] },
72
+ "install_scripts": { "const": false }
73
+ }
74
+ }
75
+ },
76
+ "dependency_intent_digest": { "$ref": "#/$defs/digest" },
77
+ "capability_gap_digest": {
78
+ "oneOf": [{ "$ref": "#/$defs/digest" }, { "type": "null" }]
79
+ },
80
+ "managed_confirmation_eligible": { "type": "boolean" },
81
+ "managed_confirmation_blockers": {
82
+ "type": "array",
83
+ "uniqueItems": true,
84
+ "items": { "enum": ["replace-customization", "external-dependencies"] }
85
+ },
86
+ "validation_report_digests": {
87
+ "type": "array",
88
+ "minItems": 1,
89
+ "items": { "$ref": "#/$defs/digest" }
90
+ },
91
+ "confirmation_batch_digest": { "$ref": "#/$defs/digest" },
92
+ "input_digest": { "$ref": "#/$defs/digest" }
93
+ },
94
+ "$defs": {
95
+ "digest": {
96
+ "type": "string",
97
+ "pattern": "^sha256:[a-f0-9]{64}$"
98
+ }
99
+ }
100
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.project-observation-input/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "proposal_digest", "apply_receipt_digest", "staging_validation"],
7
+ "properties": {
8
+ "protocol": { "const": "context.indexer.project-observation-input/v1" },
9
+ "proposal_digest": { "$ref": "#/$defs/digest" },
10
+ "apply_receipt_digest": { "$ref": "#/$defs/digest" },
11
+ "staging_validation": { "type": "object" }
12
+ },
13
+ "$defs": {
14
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
15
+ }
16
+ }