@c4a/context-cli 0.6.18 → 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.
- package/README.md +73 -8
- package/README.zh-CN.md +47 -7
- package/cli.js +89881 -53821
- package/docs/document-optimization.md +35 -11
- package/docs/document-optimization.zh-CN.md +29 -9
- package/indexers/bundles/context-code-indexer/SKILL.md +20 -0
- package/indexers/bundles/context-code-indexer/context-indexer.yaml +230 -0
- package/indexers/bundles/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
- package/indexers/bundles/context-code-indexer/references/composers/cross-module-chain.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/development-and-delivery.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/event-flow.md +21 -0
- package/indexers/bundles/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/persistence-boundary.md +21 -0
- package/indexers/bundles/context-code-indexer/references/composers/protocol-boundary.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/public-contract.md +23 -0
- package/indexers/bundles/context-code-indexer/references/indexer.md +49 -0
- package/indexers/bundles/context-code-indexer/references/metrics.md +201 -0
- package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +119 -0
- package/indexers/bundles/context-code-indexer/templates/api-service.md +118 -0
- package/indexers/bundles/context-code-indexer/templates/background-runtime.md +109 -0
- package/indexers/bundles/context-code-indexer/templates/cli-tool.md +129 -0
- package/indexers/bundles/context-code-indexer/templates/component-library.md +99 -0
- package/indexers/bundles/context-code-indexer/templates/contract-source.md +73 -0
- package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
- package/indexers/bundles/context-code-indexer/templates/derived-generated-source.md +117 -0
- package/indexers/bundles/context-code-indexer/templates/domain-service.md +109 -0
- package/indexers/bundles/context-code-indexer/templates/event-consumer.md +62 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +89 -0
- package/indexers/bundles/context-code-indexer/templates/monorepo-container.md +124 -0
- package/indexers/bundles/context-code-indexer/templates/plugin-extension.md +52 -0
- package/indexers/bundles/context-code-indexer/templates/sdk-library.md +132 -0
- package/indexers/bundles/context-code-indexer/templates/storage-repository.md +56 -0
- package/indexers/bundles/context-code-indexer/templates/web-application.md +146 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/chapters.json +226 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/composers.json +82 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/profiles.json +210 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/scenarios.json +122 -0
- package/indexers/bundles/context-markdown-indexer/SKILL.md +20 -0
- package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +147 -0
- package/indexers/bundles/context-markdown-indexer/references/classification.md +63 -0
- package/indexers/bundles/context-markdown-indexer/references/editorial-policy.md +106 -0
- package/indexers/bundles/context-markdown-indexer/references/indexer.md +23 -0
- package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +146 -0
- package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +151 -0
- package/indexers/capability-manifest.json +40 -0
- package/indexers/contracts/hard-rule-conformance.json +2644 -0
- package/indexers/contracts/operator-contract.json +35 -0
- package/indexers/contracts/profile-contract.json +10162 -0
- package/indexers/release-manifest.json +208 -0
- package/package.json +5 -4
- package/plugins/README.md +17 -109
- package/plugins/README_CN.md +11 -89
- package/plugins/VERSION +1 -1
- package/plugins/claude/.claude-plugin/plugin.json +3 -11
- package/plugins/claude/CLAUDE.md +1 -1
- package/plugins/claude/README.md +1 -1
- package/plugins/claude/commands/context.md +112 -7
- package/plugins/codex/.codex-plugin/plugin.json +6 -17
- package/plugins/codex/AGENTS.md +1 -1
- package/plugins/codex/README.md +1 -1
- package/plugins/codex/skills/context/SKILL.md +113 -19
- package/plugins/cursor/.cursor-plugin/plugin.json +4 -17
- package/plugins/cursor/AGENTS.md +1 -1
- package/plugins/cursor/README.md +3 -2
- package/plugins/cursor/commands/c4a-context.md +112 -9
- package/plugins/skills/{c4a-context → context}/SKILL.md +114 -20
- package/plugins/skills/context-code-indexer/SKILL.md +20 -0
- package/plugins/skills/context-code-indexer/context-indexer.yaml +230 -0
- package/plugins/skills/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
- package/plugins/skills/context-code-indexer/references/composers/cross-module-chain.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/development-and-delivery.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/event-flow.md +21 -0
- package/plugins/skills/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/persistence-boundary.md +21 -0
- package/plugins/skills/context-code-indexer/references/composers/protocol-boundary.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/public-contract.md +23 -0
- package/plugins/skills/context-code-indexer/references/indexer.md +49 -0
- package/plugins/skills/context-code-indexer/references/metrics.md +201 -0
- package/plugins/skills/context-code-indexer/templates/adapter-integration.md +119 -0
- package/plugins/skills/context-code-indexer/templates/api-service.md +118 -0
- package/plugins/skills/context-code-indexer/templates/background-runtime.md +109 -0
- package/plugins/skills/context-code-indexer/templates/cli-tool.md +129 -0
- package/plugins/skills/context-code-indexer/templates/component-library.md +99 -0
- package/plugins/skills/context-code-indexer/templates/contract-source.md +73 -0
- package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
- package/plugins/skills/context-code-indexer/templates/derived-generated-source.md +117 -0
- package/plugins/skills/context-code-indexer/templates/domain-service.md +109 -0
- package/plugins/skills/context-code-indexer/templates/event-consumer.md +62 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade.md +89 -0
- package/plugins/skills/context-code-indexer/templates/monorepo-container.md +124 -0
- package/plugins/skills/context-code-indexer/templates/plugin-extension.md +52 -0
- package/plugins/skills/context-code-indexer/templates/sdk-library.md +132 -0
- package/plugins/skills/context-code-indexer/templates/storage-repository.md +56 -0
- package/plugins/skills/context-code-indexer/templates/web-application.md +146 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/chapters.json +226 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/composers.json +82 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/profiles.json +210 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/scenarios.json +122 -0
- package/plugins/skills/context-markdown-indexer/SKILL.md +20 -0
- package/plugins/skills/context-markdown-indexer/context-indexer.yaml +147 -0
- package/plugins/skills/context-markdown-indexer/references/classification.md +63 -0
- package/plugins/skills/context-markdown-indexer/references/editorial-policy.md +106 -0
- package/plugins/skills/context-markdown-indexer/references/indexer.md +23 -0
- package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +146 -0
- package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +151 -0
- package/providers/context/actions/accept-main-index-run.yaml +7 -0
- package/providers/context/actions/accept-material-answer-run.yaml +7 -0
- package/providers/context/actions/accept-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/actualize-material-answer-bindings.yaml +8 -0
- package/providers/context/actions/apply-code-index-guidance.yaml +5 -0
- package/providers/context/actions/apply-document-optimization-guidance.yaml +5 -0
- package/providers/context/actions/apply-indexer-project.yaml +7 -0
- package/providers/context/actions/audit-material-gap-state.yaml +8 -0
- package/providers/context/actions/audit-projected-artifact-fan-out.yaml +8 -0
- package/providers/context/actions/authorize-indexer-contract-overlay.yaml +7 -0
- package/providers/context/actions/authorize-indexer-dependencies.yaml +7 -0
- package/providers/context/actions/authorize-indexer-program-execution.yaml +7 -0
- package/providers/context/actions/build-main-index-author-worksets.yaml +7 -0
- package/providers/context/actions/build-main-index-catalog-fallback.yaml +7 -0
- package/providers/context/actions/build-main-index-partition-worksets.yaml +7 -0
- package/providers/context/actions/build-material-question-workset.yaml +7 -0
- package/providers/context/actions/build-post-author-composer-worksets.yaml +7 -0
- package/providers/context/actions/build-question-target-inventory.yaml +7 -0
- package/providers/context/actions/build-subject-catalog.yaml +7 -0
- package/providers/context/actions/build-target-resolution-views.yaml +7 -0
- package/providers/context/actions/checkpoint-material-answer-review.yaml +8 -0
- package/providers/context/actions/checkpoint-material-gaps.yaml +8 -0
- package/providers/context/actions/close-indexer-approved-knowledge.yaml +8 -0
- package/providers/context/actions/compile-indexer-candidates.yaml +8 -0
- package/providers/context/actions/compose-indexer-post-author-fragments.yaml +7 -0
- package/providers/context/actions/configure-community-indexer-fallback.yaml +6 -0
- package/providers/context/actions/configure-indexer-providers.yaml +6 -0
- package/providers/context/actions/confirm-index-requirement-workset.yaml +8 -0
- package/providers/context/actions/confirm-subject-reidentification.yaml +8 -0
- package/providers/context/actions/converge-main-index-partition-run.yaml +7 -0
- package/providers/context/actions/discover-markdown-indexer-providers.yaml +6 -0
- package/providers/context/actions/evaluate-material-gaps.yaml +8 -0
- package/providers/context/actions/fail-main-index-run.yaml +7 -0
- package/providers/context/actions/fail-material-answer-run.yaml +7 -0
- package/providers/context/actions/fail-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +8 -0
- package/providers/context/actions/inspect-index-profile-failure.yaml +7 -0
- package/providers/context/actions/inspect-indexer-dependencies.yaml +7 -0
- package/providers/context/actions/inspect-indexer-program-execution.yaml +7 -0
- package/providers/context/actions/inspect-indexer-project-proposal.yaml +7 -0
- package/providers/context/actions/inspect-markdown-provider-capture.yaml +7 -0
- package/providers/context/actions/inspect-material-answer-review.yaml +8 -0
- package/providers/context/actions/maintain-evidence.yaml +1 -1
- package/providers/context/actions/materialize-indexer-instructions.yaml +7 -0
- package/providers/context/actions/migrate-codeindex.yaml +5 -0
- package/providers/context/actions/observe-indexer-project.yaml +7 -0
- package/providers/context/actions/observe-main-index-run-ledger.yaml +7 -0
- package/providers/context/actions/observe-material-answer-runs.yaml +7 -0
- package/providers/context/actions/observe-post-author-composer-worksets.yaml +7 -0
- package/providers/context/actions/override-index-profile-audit.yaml +7 -0
- package/providers/context/actions/prepare-indexer-customization-project.yaml +7 -0
- package/providers/context/actions/prepare-main-index-run-ledger.yaml +7 -0
- package/providers/context/actions/prepare-material-answer-runs.yaml +7 -0
- package/providers/context/actions/propose-indexer-customization.yaml +7 -0
- package/providers/context/actions/propose-overlay-question-amendment.yaml +7 -0
- package/providers/context/actions/rebind-indexer-selection-to-requirement.yaml +7 -0
- package/providers/context/actions/reconcile-indexer-results.yaml +7 -0
- package/providers/context/actions/record-index-profile-revision.yaml +7 -0
- package/providers/context/actions/register-source-batch.yaml +1 -1
- package/providers/context/actions/report-index-profile-failure.yaml +7 -0
- package/providers/context/actions/report-indexer-incremental-impact.yaml +8 -0
- package/providers/context/actions/resolve-effective-composers.yaml +7 -0
- package/providers/context/actions/restore-repository-sources.yaml +1 -1
- package/providers/context/actions/review-material-answer-candidate.yaml +8 -0
- package/providers/context/actions/revise-index-output.yaml +7 -0
- package/providers/context/actions/route-index-requirement-confirmation.yaml +8 -0
- package/providers/context/actions/route-indexer-provider-selection.yaml +7 -0
- package/providers/context/actions/run-indexer-agent-step.yaml +7 -0
- package/providers/context/actions/run-indexer-post-author-composer.yaml +7 -0
- package/providers/context/actions/run-material-answer-indexers.yaml +7 -0
- package/providers/context/actions/start-main-index-run.yaml +7 -0
- package/providers/context/actions/start-material-answer-run.yaml +7 -0
- package/providers/context/actions/start-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/validate-indexer-contract-overlays.yaml +7 -0
- package/providers/context/actions/validate-indexer-customization.yaml +7 -0
- package/providers/context/actions/validate-indexer-selection-proposal.yaml +7 -0
- package/providers/context/actions/validate-main-index-run.yaml +7 -0
- package/providers/context/actions/validate-markdown-provider-selection.yaml +7 -0
- package/providers/context/actions/validate-subject-key-schemas.yaml +8 -0
- package/providers/context/codes.yaml +72 -0
- package/providers/context/graphs/indexer.yaml +1068 -0
- package/providers/context/graphs/workspace.yaml +52 -3
- package/providers/context/manifest.json +1487 -157
- package/providers/context/provider.yaml +3 -2
- package/providers/context/resources/dialogue/code-extraction.md +12 -0
- package/providers/context/resources/dialogue/document-classification.md +1 -1
- package/providers/context/resources/dialogue/knowledge-review.md +7 -1
- package/providers/context/resources/dialogue/source-boundary.md +9 -1
- package/providers/context/resources/dialogue/workflow-mode-after-capture.md +11 -8
- package/providers/context/resources/dialogue/workflow-mode-after-creation.md +6 -4
- package/providers/context/resources/manuals/guides/lark-resources.md +7 -0
- package/providers/context/resources/manuals/guides/package-outputs.md +3 -3
- package/providers/context/resources/manuals/reference/code-extractors.md +7 -6
- package/providers/context/resources/manuals/reference/package-templates.md +18 -10
- package/providers/context/resources/manuals/reference/project-api.md +49 -24
- package/providers/context/resources/procedures/close-and-build.md +24 -9
- package/providers/context/resources/procedures/code-extraction.md +41 -13
- package/providers/context/resources/procedures/code-index-audit.md +83 -13
- package/providers/context/resources/procedures/document-capture.md +9 -0
- package/providers/context/resources/procedures/document-optimization.md +88 -21
- package/providers/context/resources/procedures/document-revision.md +11 -6
- package/providers/context/resources/procedures/knowledge-review.md +4 -1
- package/providers/context/resources/procedures/source-boundary.md +20 -8
- package/providers/context/resources/semantic/align/structure-planning.md +4 -4
- package/providers/context/resources/semantic/code-index/classification.md +8 -5
- package/providers/context/resources/semantic/code-index/templates/adapter.md +9 -0
- package/providers/context/resources/semantic/code-index/templates/contracts-and-chains.md +81 -0
- package/providers/context/resources/views/resolved-indexer-instructions.yaml +23 -0
- package/providers/context/schemas/document-optimization-decisions.schema.json +29 -6
- package/providers/context/schemas/indexer-agent-step-input.schema.json +30 -0
- package/providers/context/schemas/indexer-agent-step-result.schema.json +47 -0
- package/providers/context/schemas/indexer-candidate-compile-input.schema.json +57 -0
- package/providers/context/schemas/indexer-candidate-compile-output.schema.json +38 -0
- package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +46 -0
- package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +104 -0
- package/providers/context/schemas/indexer-contract-overlay-authorization-input.schema.json +32 -0
- package/providers/context/schemas/indexer-contract-overlay-authorization-result.schema.json +121 -0
- package/providers/context/schemas/indexer-contract-overlay-validation-input.schema.json +90 -0
- package/providers/context/schemas/indexer-contract-overlay-validation-result.schema.json +158 -0
- package/providers/context/schemas/indexer-customization-project-preparation-result.schema.json +44 -0
- package/providers/context/schemas/indexer-customization-proposal-draft.schema.json +83 -0
- package/providers/context/schemas/indexer-customization-validation-result.schema.json +36 -0
- package/providers/context/schemas/indexer-dependency-authorization-input.schema.json +71 -0
- package/providers/context/schemas/indexer-dependency-authorization-result.schema.json +138 -0
- package/providers/context/schemas/indexer-incremental-impact-input.schema.json +31 -0
- package/providers/context/schemas/indexer-incremental-impact-output.schema.json +52 -0
- package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +187 -0
- package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +180 -0
- package/providers/context/schemas/indexer-markdown-provider-capture-input.schema.json +17 -0
- package/providers/context/schemas/indexer-markdown-provider-capture-output.schema.json +54 -0
- package/providers/context/schemas/indexer-markdown-provider-validation-input.schema.json +34 -0
- package/providers/context/schemas/indexer-markdown-provider-validation-output.schema.json +75 -0
- package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +90 -0
- package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +80 -0
- package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +32 -0
- package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +32 -0
- package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +19 -0
- package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +87 -0
- package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +86 -0
- package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +19 -0
- package/providers/context/schemas/indexer-materialize-request.schema.json +53 -0
- package/providers/context/schemas/indexer-materialized-resource.schema.json +57 -0
- package/providers/context/schemas/indexer-overlay-question-amendment.schema.json +13 -0
- package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +40 -0
- package/providers/context/schemas/indexer-overlay-question-rebind-input.schema.json +35 -0
- package/providers/context/schemas/indexer-overlay-question-rebind-result.schema.json +25 -0
- package/providers/context/schemas/indexer-post-author-fragment-request.schema.json +26 -0
- package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +18 -0
- package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +94 -0
- package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +72 -0
- package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +13 -0
- package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +19 -0
- package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +22 -0
- package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +49 -0
- package/providers/context/schemas/indexer-profile-override-decision.schema.json +20 -0
- package/providers/context/schemas/indexer-profile-override-result.schema.json +49 -0
- package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +18 -0
- package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +31 -0
- package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +45 -0
- package/providers/context/schemas/indexer-program-execution-authorization-input.schema.json +145 -0
- package/providers/context/schemas/indexer-program-execution-authorization-result.schema.json +60 -0
- package/providers/context/schemas/indexer-project-action-result.schema.json +19 -0
- package/providers/context/schemas/indexer-project-gate-input.schema.json +100 -0
- package/providers/context/schemas/indexer-project-observation-input.schema.json +16 -0
- package/providers/context/schemas/indexer-project-observation-result.schema.json +42 -0
- package/providers/context/schemas/indexer-provider-route-input.schema.json +55 -0
- package/providers/context/schemas/indexer-provider-route-report.schema.json +188 -0
- package/providers/context/schemas/indexer-requirement-confirmation-input.schema.json +27 -0
- package/providers/context/schemas/indexer-requirement-confirmation-output.schema.json +24 -0
- package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +59 -0
- package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +43 -0
- package/providers/context/schemas/indexer-selection-proposal-input.schema.json +12 -0
- package/providers/context/schemas/indexer-selection-proposal-validation.schema.json +23 -0
- package/providers/context/schemas/indexer-subject-reidentification-input.schema.json +37 -0
- package/providers/context/schemas/indexer-subject-reidentification-output.schema.json +31 -0
- package/providers/context/schemas/source-batch-input.schema.json +18 -3
- package/providers/context/skills/configure-indexer-providers/SKILL.md +58 -0
- package/providers/context/skills/prepare-indexer-customization-project/SKILL.md +31 -0
- package/providers/context/skills/propose-indexer-customization/SKILL.md +40 -0
- package/providers/context/skills/revise-index-output/SKILL.md +12 -0
- package/providers/context/skills/run-indexer-agent-step/SKILL.md +20 -0
- package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +21 -0
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.project-observation-result/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"additionalProperties": false,
|
|
6
|
+
"required": [
|
|
7
|
+
"protocol",
|
|
8
|
+
"state",
|
|
9
|
+
"proposal_digest",
|
|
10
|
+
"apply_receipt_digest",
|
|
11
|
+
"target_set_digest",
|
|
12
|
+
"requirement_set_digest",
|
|
13
|
+
"registry_digest",
|
|
14
|
+
"indexer_selection_digest",
|
|
15
|
+
"validation_report_digests",
|
|
16
|
+
"selection_proposal_input",
|
|
17
|
+
"observation_digest",
|
|
18
|
+
"result_digest"
|
|
19
|
+
],
|
|
20
|
+
"properties": {
|
|
21
|
+
"protocol": { "const": "context.indexer.project-observation-result/v1" },
|
|
22
|
+
"state": { "const": "current" },
|
|
23
|
+
"proposal_digest": { "$ref": "#/$defs/digest" },
|
|
24
|
+
"apply_receipt_digest": { "$ref": "#/$defs/digest" },
|
|
25
|
+
"target_set_digest": { "$ref": "#/$defs/digest" },
|
|
26
|
+
"requirement_set_digest": { "$ref": "#/$defs/digest" },
|
|
27
|
+
"registry_digest": { "$ref": "#/$defs/digest" },
|
|
28
|
+
"indexer_selection_digest": { "$ref": "#/$defs/digest" },
|
|
29
|
+
"validation_report_digests": {
|
|
30
|
+
"type": "array",
|
|
31
|
+
"minItems": 1,
|
|
32
|
+
"uniqueItems": true,
|
|
33
|
+
"items": { "$ref": "#/$defs/digest" }
|
|
34
|
+
},
|
|
35
|
+
"selection_proposal_input": { "type": "object" },
|
|
36
|
+
"observation_digest": { "$ref": "#/$defs/digest" },
|
|
37
|
+
"result_digest": { "$ref": "#/$defs/digest" }
|
|
38
|
+
},
|
|
39
|
+
"$defs": {
|
|
40
|
+
"digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.provider-route-input/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"additionalProperties": false,
|
|
6
|
+
"required": [
|
|
7
|
+
"protocol",
|
|
8
|
+
"project_ref",
|
|
9
|
+
"registry",
|
|
10
|
+
"visible_skills",
|
|
11
|
+
"community_fallback_attempted",
|
|
12
|
+
"input_digest"
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"protocol": { "const": "context.indexer.provider-route-input/v1" },
|
|
16
|
+
"project_ref": { "type": "string", "minLength": 1 },
|
|
17
|
+
"registry": { "$ref": "#/$defs/registry" },
|
|
18
|
+
"visible_skills": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"items": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"additionalProperties": false,
|
|
23
|
+
"required": ["skill", "version", "source_type"],
|
|
24
|
+
"properties": {
|
|
25
|
+
"skill": { "$ref": "#/$defs/id" },
|
|
26
|
+
"version": {
|
|
27
|
+
"anyOf": [
|
|
28
|
+
{ "type": "string", "pattern": "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)(?:-[0-9A-Za-z.-]+)?(?:\\+[0-9A-Za-z.-]+)?$" },
|
|
29
|
+
{ "type": "null" }
|
|
30
|
+
]
|
|
31
|
+
},
|
|
32
|
+
"source_type": {
|
|
33
|
+
"enum": ["community-plugin", "cli-bundled", "workspace", "installed-plugin", "marketplace"]
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"community_fallback_attempted": { "type": "boolean" },
|
|
39
|
+
"input_digest": { "$ref": "#/$defs/digest" }
|
|
40
|
+
},
|
|
41
|
+
"$defs": {
|
|
42
|
+
"id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9._/-]*$" },
|
|
43
|
+
"digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
|
|
44
|
+
"registry": {
|
|
45
|
+
"type": "object",
|
|
46
|
+
"additionalProperties": false,
|
|
47
|
+
"required": ["protocol", "requirements", "indexers"],
|
|
48
|
+
"properties": {
|
|
49
|
+
"protocol": { "const": "context.indexer.registry/v1" },
|
|
50
|
+
"requirements": { "type": "array", "minItems": 1, "items": { "type": "object" } },
|
|
51
|
+
"indexers": { "type": "array", "items": { "type": "object" } }
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.provider-route-report/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"additionalProperties": false,
|
|
6
|
+
"required": [
|
|
7
|
+
"protocol",
|
|
8
|
+
"project_ref",
|
|
9
|
+
"input_digest",
|
|
10
|
+
"requirement_set_digest",
|
|
11
|
+
"registry_digest",
|
|
12
|
+
"visible_skill_set_digest",
|
|
13
|
+
"selected_skill_ids",
|
|
14
|
+
"composition_mode",
|
|
15
|
+
"community_fallback_attempted",
|
|
16
|
+
"unowned_required_owner_cells",
|
|
17
|
+
"conflicting_owner_cells",
|
|
18
|
+
"read_scope_overlaps",
|
|
19
|
+
"capability_gaps",
|
|
20
|
+
"capability_gap_proof",
|
|
21
|
+
"route",
|
|
22
|
+
"selection_proposal_input",
|
|
23
|
+
"report_digest"
|
|
24
|
+
],
|
|
25
|
+
"properties": {
|
|
26
|
+
"protocol": { "const": "context.indexer.provider-route-report/v1" },
|
|
27
|
+
"project_ref": { "type": "string", "minLength": 1 },
|
|
28
|
+
"input_digest": { "$ref": "#/$defs/digest" },
|
|
29
|
+
"requirement_set_digest": { "$ref": "#/$defs/digest" },
|
|
30
|
+
"registry_digest": { "$ref": "#/$defs/digest" },
|
|
31
|
+
"visible_skill_set_digest": { "$ref": "#/$defs/digest" },
|
|
32
|
+
"selected_skill_ids": { "type": "array", "items": { "$ref": "#/$defs/id" } },
|
|
33
|
+
"composition_mode": { "enum": ["none", "single-skill", "multi-skill"] },
|
|
34
|
+
"community_fallback_attempted": { "type": "boolean" },
|
|
35
|
+
"unowned_required_owner_cells": { "type": "array", "items": { "type": "string", "minLength": 1 } },
|
|
36
|
+
"conflicting_owner_cells": {
|
|
37
|
+
"type": "array",
|
|
38
|
+
"items": {
|
|
39
|
+
"type": "object",
|
|
40
|
+
"additionalProperties": false,
|
|
41
|
+
"required": ["owner_cell_ref", "indexer_ids", "skill_ids"],
|
|
42
|
+
"properties": {
|
|
43
|
+
"owner_cell_ref": { "type": "string", "minLength": 1 },
|
|
44
|
+
"indexer_ids": { "type": "array", "minItems": 2, "items": { "$ref": "#/$defs/id" } },
|
|
45
|
+
"skill_ids": { "type": "array", "minItems": 1, "items": { "$ref": "#/$defs/id" } }
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"read_scope_overlaps": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"items": {
|
|
52
|
+
"type": "object",
|
|
53
|
+
"additionalProperties": false,
|
|
54
|
+
"required": ["left_indexer_id", "right_indexer_id", "scope_refs"],
|
|
55
|
+
"properties": {
|
|
56
|
+
"left_indexer_id": { "$ref": "#/$defs/id" },
|
|
57
|
+
"right_indexer_id": { "$ref": "#/$defs/id" },
|
|
58
|
+
"scope_refs": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } }
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"capability_gaps": {
|
|
63
|
+
"type": "array",
|
|
64
|
+
"items": {
|
|
65
|
+
"type": "object",
|
|
66
|
+
"additionalProperties": false,
|
|
67
|
+
"required": ["owner_cell_ref", "requirement_ref", "coverage_domain", "capability"],
|
|
68
|
+
"properties": {
|
|
69
|
+
"owner_cell_ref": { "type": ["string", "null"] },
|
|
70
|
+
"requirement_ref": { "anyOf": [{ "$ref": "#/$defs/id" }, { "type": "null" }] },
|
|
71
|
+
"coverage_domain": { "anyOf": [{ "$ref": "#/$defs/id" }, { "type": "null" }] },
|
|
72
|
+
"capability": { "type": "string", "minLength": 1 }
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"capability_gap_proof": {
|
|
77
|
+
"anyOf": [
|
|
78
|
+
{ "$ref": "#/$defs/capabilityGapProof" },
|
|
79
|
+
{ "type": "null" }
|
|
80
|
+
]
|
|
81
|
+
},
|
|
82
|
+
"route": {
|
|
83
|
+
"oneOf": [
|
|
84
|
+
{ "$ref": "#/$defs/selectionRoute" },
|
|
85
|
+
{ "$ref": "#/$defs/fallbackRoute" },
|
|
86
|
+
{ "$ref": "#/$defs/conflictRoute" },
|
|
87
|
+
{ "$ref": "#/$defs/gapRoute" }
|
|
88
|
+
]
|
|
89
|
+
},
|
|
90
|
+
"selection_proposal_input": {
|
|
91
|
+
"anyOf": [
|
|
92
|
+
{
|
|
93
|
+
"type": "object",
|
|
94
|
+
"additionalProperties": false,
|
|
95
|
+
"required": ["protocol", "project_ref", "registry"],
|
|
96
|
+
"properties": {
|
|
97
|
+
"protocol": { "const": "context.indexer.selection-proposal-input/v1" },
|
|
98
|
+
"project_ref": { "type": "string", "minLength": 1 },
|
|
99
|
+
"registry": { "type": "object" }
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
{ "type": "null" }
|
|
103
|
+
]
|
|
104
|
+
},
|
|
105
|
+
"report_digest": { "$ref": "#/$defs/digest" }
|
|
106
|
+
},
|
|
107
|
+
"$defs": {
|
|
108
|
+
"id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9._/-]*$" },
|
|
109
|
+
"digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
|
|
110
|
+
"capabilityGap": {
|
|
111
|
+
"type": "object",
|
|
112
|
+
"additionalProperties": false,
|
|
113
|
+
"required": ["owner_cell_ref", "requirement_ref", "coverage_domain", "capability"],
|
|
114
|
+
"properties": {
|
|
115
|
+
"owner_cell_ref": { "type": ["string", "null"] },
|
|
116
|
+
"requirement_ref": { "anyOf": [{ "$ref": "#/$defs/id" }, { "type": "null" }] },
|
|
117
|
+
"coverage_domain": { "anyOf": [{ "$ref": "#/$defs/id" }, { "type": "null" }] },
|
|
118
|
+
"capability": { "type": "string", "minLength": 1 }
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
"capabilityGapProof": {
|
|
122
|
+
"type": "object",
|
|
123
|
+
"additionalProperties": false,
|
|
124
|
+
"required": [
|
|
125
|
+
"protocol",
|
|
126
|
+
"project_ref",
|
|
127
|
+
"route_input_digest",
|
|
128
|
+
"requirement_set_digest",
|
|
129
|
+
"registry_digest",
|
|
130
|
+
"visible_skill_set_digest",
|
|
131
|
+
"community_fallback_attempted",
|
|
132
|
+
"gaps",
|
|
133
|
+
"gap_digest"
|
|
134
|
+
],
|
|
135
|
+
"properties": {
|
|
136
|
+
"protocol": { "const": "context.indexer.capability-gap-proof/v1" },
|
|
137
|
+
"project_ref": { "type": "string", "minLength": 1 },
|
|
138
|
+
"route_input_digest": { "$ref": "#/$defs/digest" },
|
|
139
|
+
"requirement_set_digest": { "$ref": "#/$defs/digest" },
|
|
140
|
+
"registry_digest": { "$ref": "#/$defs/digest" },
|
|
141
|
+
"visible_skill_set_digest": { "$ref": "#/$defs/digest" },
|
|
142
|
+
"community_fallback_attempted": { "const": true },
|
|
143
|
+
"gaps": {
|
|
144
|
+
"type": "array",
|
|
145
|
+
"minItems": 1,
|
|
146
|
+
"items": { "$ref": "#/$defs/capabilityGap" }
|
|
147
|
+
},
|
|
148
|
+
"gap_digest": { "$ref": "#/$defs/digest" }
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"selectionRoute": {
|
|
152
|
+
"type": "object", "additionalProperties": false,
|
|
153
|
+
"required": ["outcome", "graph_outcome", "next_action"],
|
|
154
|
+
"properties": {
|
|
155
|
+
"outcome": { "const": "selection-validation-required" },
|
|
156
|
+
"graph_outcome": { "const": "completed" },
|
|
157
|
+
"next_action": { "const": "validate-indexer-selection-proposal" }
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"fallbackRoute": {
|
|
161
|
+
"type": "object", "additionalProperties": false,
|
|
162
|
+
"required": ["outcome", "graph_outcome", "next_action"],
|
|
163
|
+
"properties": {
|
|
164
|
+
"outcome": { "const": "community-fallback-required" },
|
|
165
|
+
"graph_outcome": { "const": "partial" },
|
|
166
|
+
"next_action": { "const": "configure-community-indexer-fallback" }
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"conflictRoute": {
|
|
170
|
+
"type": "object", "additionalProperties": false,
|
|
171
|
+
"required": ["outcome", "graph_outcome", "next_action"],
|
|
172
|
+
"properties": {
|
|
173
|
+
"outcome": { "const": "indexer-provider-conflict" },
|
|
174
|
+
"graph_outcome": { "const": "waiting-user" },
|
|
175
|
+
"next_action": { "const": "configure-indexer-providers" }
|
|
176
|
+
}
|
|
177
|
+
},
|
|
178
|
+
"gapRoute": {
|
|
179
|
+
"type": "object", "additionalProperties": false,
|
|
180
|
+
"required": ["outcome", "graph_outcome", "next_action"],
|
|
181
|
+
"properties": {
|
|
182
|
+
"outcome": { "const": "indexer-customization-required" },
|
|
183
|
+
"graph_outcome": { "const": "blocked" },
|
|
184
|
+
"next_action": { "const": "propose-indexer-customization" }
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.requirement-confirmation-input/v1",
|
|
4
|
+
"oneOf": [
|
|
5
|
+
{
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["protocol", "report"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"protocol": { "const": "context.indexer.requirement-confirmation-route-input/v1" },
|
|
10
|
+
"report": { "type": "object" }
|
|
11
|
+
},
|
|
12
|
+
"additionalProperties": false
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "object",
|
|
16
|
+
"required": ["protocol", "report", "authority", "confirmed_by", "confirmed_at"],
|
|
17
|
+
"properties": {
|
|
18
|
+
"protocol": { "const": "context.indexer.requirement-confirmation-action-input/v1" },
|
|
19
|
+
"report": { "type": "object" },
|
|
20
|
+
"authority": { "enum": ["managed", "human"] },
|
|
21
|
+
"confirmed_by": { "type": "string", "minLength": 1 },
|
|
22
|
+
"confirmed_at": { "type": "string", "format": "date-time" }
|
|
23
|
+
},
|
|
24
|
+
"additionalProperties": false
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.requirement-confirmation-output/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": ["protocol", "graph_outcome"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"protocol": {
|
|
8
|
+
"enum": [
|
|
9
|
+
"context.indexer.requirement-confirmation-route-result/v1",
|
|
10
|
+
"context.indexer.requirement-confirmation-action-result/v1"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"report": { "type": "object" },
|
|
14
|
+
"confirmation": { "type": "object" },
|
|
15
|
+
"outcome": {
|
|
16
|
+
"enum": [
|
|
17
|
+
"requirement-confirmation-required",
|
|
18
|
+
"requirement-contraction-confirmation-required"
|
|
19
|
+
]
|
|
20
|
+
},
|
|
21
|
+
"graph_outcome": { "enum": ["completed", "waiting-user", "blocked"] }
|
|
22
|
+
},
|
|
23
|
+
"additionalProperties": false
|
|
24
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.result-reconciliation-input/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": [
|
|
6
|
+
"protocol",
|
|
7
|
+
"requirement_set_digest",
|
|
8
|
+
"question_target_inventory",
|
|
9
|
+
"resolved_questions",
|
|
10
|
+
"target_facts",
|
|
11
|
+
"allowed_selector_fact_paths",
|
|
12
|
+
"registered_material_sources"
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"protocol": { "const": "context.indexer.result-reconciliation-input/v1" },
|
|
16
|
+
"requirement_set_digest": { "$ref": "#/$defs/digest" },
|
|
17
|
+
"question_target_inventory": { "type": "object" },
|
|
18
|
+
"resolved_questions": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"items": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"required": ["requirement_ref", "question"],
|
|
23
|
+
"properties": {
|
|
24
|
+
"requirement_ref": { "type": "string", "minLength": 1 },
|
|
25
|
+
"question": { "type": "object" }
|
|
26
|
+
},
|
|
27
|
+
"additionalProperties": false
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"target_facts": { "type": "object" },
|
|
31
|
+
"allowed_selector_fact_paths": {
|
|
32
|
+
"type": "array",
|
|
33
|
+
"items": { "type": "string", "minLength": 1 },
|
|
34
|
+
"uniqueItems": true
|
|
35
|
+
},
|
|
36
|
+
"registered_material_sources": {
|
|
37
|
+
"type": "array",
|
|
38
|
+
"items": {
|
|
39
|
+
"type": "object",
|
|
40
|
+
"required": ["source_ref", "source_input_digest", "evidence_kinds"],
|
|
41
|
+
"properties": {
|
|
42
|
+
"source_ref": { "type": "string", "minLength": 1 },
|
|
43
|
+
"source_input_digest": { "$ref": "#/$defs/digest" },
|
|
44
|
+
"evidence_kinds": {
|
|
45
|
+
"type": "array",
|
|
46
|
+
"items": { "type": "string", "minLength": 1 },
|
|
47
|
+
"minItems": 1,
|
|
48
|
+
"uniqueItems": true
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"additionalProperties": false
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"additionalProperties": false,
|
|
56
|
+
"$defs": {
|
|
57
|
+
"digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.coverage-completion-report/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"required": [
|
|
6
|
+
"protocol",
|
|
7
|
+
"requirement_set_digest",
|
|
8
|
+
"registry_digest",
|
|
9
|
+
"question_target_inventory_digest",
|
|
10
|
+
"registered_material_source_set_digest",
|
|
11
|
+
"domains",
|
|
12
|
+
"capability_gaps",
|
|
13
|
+
"material_gaps",
|
|
14
|
+
"blocking_count",
|
|
15
|
+
"partial_domain_count",
|
|
16
|
+
"outcome",
|
|
17
|
+
"graph_outcome",
|
|
18
|
+
"can_report_complete",
|
|
19
|
+
"report_digest"
|
|
20
|
+
],
|
|
21
|
+
"properties": {
|
|
22
|
+
"protocol": { "const": "context.indexer.coverage-completion-report/v1" },
|
|
23
|
+
"requirement_set_digest": { "$ref": "#/$defs/digest" },
|
|
24
|
+
"registry_digest": { "$ref": "#/$defs/digest" },
|
|
25
|
+
"question_target_inventory_digest": { "$ref": "#/$defs/digest" },
|
|
26
|
+
"registered_material_source_set_digest": { "$ref": "#/$defs/digest" },
|
|
27
|
+
"domains": { "type": "array", "items": { "type": "object" } },
|
|
28
|
+
"capability_gaps": { "type": "array", "items": { "type": "object" } },
|
|
29
|
+
"material_gaps": { "type": "array", "items": { "type": "object" } },
|
|
30
|
+
"blocking_count": { "type": "integer", "minimum": 0 },
|
|
31
|
+
"partial_domain_count": { "type": "integer", "minimum": 0 },
|
|
32
|
+
"outcome": {
|
|
33
|
+
"enum": ["complete", "index-material-required", "indexer-capability-gap"]
|
|
34
|
+
},
|
|
35
|
+
"graph_outcome": { "enum": ["completed", "partial", "blocked"] },
|
|
36
|
+
"can_report_complete": { "type": "boolean" },
|
|
37
|
+
"report_digest": { "$ref": "#/$defs/digest" }
|
|
38
|
+
},
|
|
39
|
+
"additionalProperties": false,
|
|
40
|
+
"$defs": {
|
|
41
|
+
"digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "context.indexer.selection-proposal-input/v1",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"additionalProperties": false,
|
|
6
|
+
"required": ["protocol", "project_ref", "registry"],
|
|
7
|
+
"properties": {
|
|
8
|
+
"protocol": { "const": "context.indexer.selection-proposal-input/v1" },
|
|
9
|
+
"project_ref": { "type": "string", "minLength": 1 },
|
|
10
|
+
"registry": { "type": "object" }
|
|
11
|
+
}
|
|
12
|
+
}
|