@c4a/context-cli 0.7.0 → 0.7.4

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 (219) hide show
  1. package/README.md +18 -39
  2. package/README.zh-CN.md +13 -27
  3. package/cli.js +59230 -80555
  4. package/indexers/bundles/context-code-indexer/SKILL.md +30 -3
  5. package/indexers/bundles/context-code-indexer/context-indexer.yaml +3 -8
  6. package/indexers/bundles/context-code-indexer/references/indexer.md +110 -7
  7. package/indexers/bundles/context-code-indexer/references/metrics.md +143 -37
  8. package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +2 -2
  9. package/indexers/bundles/context-code-indexer/templates/component-library.md +8 -0
  10. package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +16 -0
  11. package/indexers/bundles/context-markdown-indexer/SKILL.md +13 -3
  12. package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +20 -7
  13. package/indexers/bundles/context-markdown-indexer/references/indexer.md +33 -4
  14. package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +30 -14
  15. package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +6 -0
  16. package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +1 -1
  17. package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +13 -13
  18. package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +122 -0
  19. package/indexers/contracts/operator-contract.json +2 -2
  20. package/indexers/contracts/profile-contract.json +3819 -454
  21. package/indexers/release-manifest.json +22 -22
  22. package/package.json +13 -3
  23. package/plugins/VERSION +1 -1
  24. package/plugins/claude/.claude-plugin/plugin.json +1 -1
  25. package/plugins/claude/commands/context.md +44 -85
  26. package/plugins/codex/.codex-plugin/plugin.json +2 -2
  27. package/plugins/codex/skills/context/SKILL.md +44 -85
  28. package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
  29. package/plugins/cursor/commands/c4a-context.md +44 -85
  30. package/plugins/skills/context/SKILL.md +44 -85
  31. package/plugins/skills/context-code-indexer/SKILL.md +30 -3
  32. package/plugins/skills/context-code-indexer/context-indexer.yaml +3 -8
  33. package/plugins/skills/context-code-indexer/references/indexer.md +110 -7
  34. package/plugins/skills/context-code-indexer/references/metrics.md +143 -37
  35. package/plugins/skills/context-code-indexer/templates/adapter-integration.md +2 -2
  36. package/plugins/skills/context-code-indexer/templates/component-library.md +8 -0
  37. package/plugins/skills/context-code-indexer/templates/gateway-facade.md +16 -0
  38. package/plugins/skills/context-markdown-indexer/SKILL.md +13 -3
  39. package/plugins/skills/context-markdown-indexer/context-indexer.yaml +20 -7
  40. package/plugins/skills/context-markdown-indexer/references/indexer.md +33 -4
  41. package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +30 -14
  42. package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +6 -0
  43. package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +1 -1
  44. package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +13 -13
  45. package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +122 -0
  46. package/providers/context/actions/advance-current-indexer-lifecycle.yaml +6 -0
  47. package/providers/context/actions/configure-indexer-providers.yaml +1 -1
  48. package/providers/context/actions/materialize-indexer-workset-view.yaml +7 -0
  49. package/providers/context/actions/run-indexer-lifecycle.yaml +7 -0
  50. package/providers/context/actions/run-indexer-post-author-composer.yaml +1 -1
  51. package/providers/context/codes.yaml +9 -49
  52. package/providers/context/graphs/indexer.yaml +75 -592
  53. package/providers/context/graphs/workspace.yaml +25 -500
  54. package/providers/context/manifest.json +110 -1199
  55. package/providers/context/provider.yaml +2 -2
  56. package/providers/context/resources/diagnostics/projection-stale.md +0 -1
  57. package/providers/context/resources/dialogue/human-gates.md +3 -3
  58. package/providers/context/resources/manuals/reference/package-templates.md +2 -3
  59. package/providers/context/resources/manuals/reference/project-api.md +52 -985
  60. package/providers/context/resources/procedures/close-and-build.md +8 -23
  61. package/providers/context/resources/procedures/knowledge-review.md +13 -4
  62. package/providers/context/resources/procedures/source-capture-detailed.md +6 -8
  63. package/providers/context/resources/views/authorized-indexer-workset-view.yaml +15 -0
  64. package/providers/context/resources/views/package-current.yaml +1 -1
  65. package/providers/context/resources/views/resolved-indexer-instructions.yaml +1 -1
  66. package/providers/context/resources/views/review-current.yaml +1 -1
  67. package/providers/context/resources/views/source-boundary.yaml +1 -1
  68. package/providers/context/resources/views/source-current.yaml +1 -1
  69. package/providers/context/resources/views/verification-current.yaml +1 -1
  70. package/providers/context/resources/views/workspace-current.yaml +1 -1
  71. package/providers/context/schemas/indexer-agent-step-input.schema.json +2 -2
  72. package/providers/context/schemas/indexer-agent-step-result.schema.json +298 -32
  73. package/providers/context/schemas/indexer-authorized-workset-view.schema.json +65 -0
  74. package/providers/context/schemas/indexer-contract-overlay-validation-input.schema.json +0 -42
  75. package/providers/context/schemas/indexer-contract-overlay-validation-result.schema.json +27 -122
  76. package/providers/context/schemas/indexer-lifecycle-continuation.schema.json +15 -0
  77. package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +13 -20
  78. package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +17 -2
  79. package/providers/context/schemas/indexer-materialized-resource.schema.json +8 -1
  80. package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +55 -6
  81. package/providers/context/schemas/indexer-overlay-question-rebind-input.schema.json +4 -4
  82. package/providers/context/schemas/indexer-workset-view-materialization-request.schema.json +32 -0
  83. package/providers/context/skills/configure-indexer-providers/SKILL.md +40 -27
  84. package/providers/context/skills/run-indexer-agent-step/SKILL.md +34 -8
  85. package/providers/context/skills/run-indexer-lifecycle/SKILL.md +37 -0
  86. package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +38 -9
  87. package/docs/document-optimization.md +0 -82
  88. package/docs/document-optimization.zh-CN.md +0 -70
  89. package/indexers/capability-manifest.json +0 -40
  90. package/indexers/contracts/hard-rule-conformance.json +0 -2644
  91. package/providers/context/actions/accept-main-index-run.yaml +0 -7
  92. package/providers/context/actions/accept-material-answer-run.yaml +0 -7
  93. package/providers/context/actions/accept-post-author-composer-run.yaml +0 -7
  94. package/providers/context/actions/actualize-material-answer-bindings.yaml +0 -8
  95. package/providers/context/actions/align-next.yaml +0 -6
  96. package/providers/context/actions/apply-code-index-guidance.yaml +0 -5
  97. package/providers/context/actions/apply-document-optimization-guidance.yaml +0 -5
  98. package/providers/context/actions/apply-structure-confirmation.yaml +0 -5
  99. package/providers/context/actions/audit-material-gap-state.yaml +0 -8
  100. package/providers/context/actions/audit-projected-artifact-fan-out.yaml +0 -8
  101. package/providers/context/actions/authorize-indexer-contract-overlay.yaml +0 -7
  102. package/providers/context/actions/build-main-index-author-worksets.yaml +0 -7
  103. package/providers/context/actions/build-main-index-catalog-fallback.yaml +0 -7
  104. package/providers/context/actions/build-main-index-partition-worksets.yaml +0 -7
  105. package/providers/context/actions/build-material-question-workset.yaml +0 -7
  106. package/providers/context/actions/build-post-author-composer-worksets.yaml +0 -7
  107. package/providers/context/actions/build-question-target-inventory.yaml +0 -7
  108. package/providers/context/actions/build-subject-catalog.yaml +0 -7
  109. package/providers/context/actions/build-target-resolution-views.yaml +0 -7
  110. package/providers/context/actions/checkpoint-material-answer-review.yaml +0 -8
  111. package/providers/context/actions/checkpoint-material-gaps.yaml +0 -8
  112. package/providers/context/actions/close-indexer-approved-knowledge.yaml +0 -8
  113. package/providers/context/actions/compile-next.yaml +0 -5
  114. package/providers/context/actions/compose-indexer-post-author-fragments.yaml +0 -7
  115. package/providers/context/actions/configure-code-extraction.yaml +0 -5
  116. package/providers/context/actions/configure-prose-lifecycle.yaml +0 -5
  117. package/providers/context/actions/converge-main-index-partition-run.yaml +0 -7
  118. package/providers/context/actions/evaluate-material-gaps.yaml +0 -8
  119. package/providers/context/actions/extract-next.yaml +0 -5
  120. package/providers/context/actions/fail-main-index-run.yaml +0 -7
  121. package/providers/context/actions/fail-material-answer-run.yaml +0 -7
  122. package/providers/context/actions/fail-post-author-composer-run.yaml +0 -7
  123. package/providers/context/actions/inspect-code-extraction.yaml +0 -5
  124. package/providers/context/actions/inspect-document-classification.yaml +0 -5
  125. package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +0 -8
  126. package/providers/context/actions/inspect-index-profile-failure.yaml +0 -7
  127. package/providers/context/actions/inspect-material-answer-review.yaml +0 -8
  128. package/providers/context/actions/inspect-structure.yaml +0 -5
  129. package/providers/context/actions/migrate-codeindex.yaml +0 -5
  130. package/providers/context/actions/observe-main-index-run-ledger.yaml +0 -7
  131. package/providers/context/actions/observe-material-answer-runs.yaml +0 -7
  132. package/providers/context/actions/observe-post-author-composer-worksets.yaml +0 -7
  133. package/providers/context/actions/optimize-documents.yaml +0 -6
  134. package/providers/context/actions/override-index-profile-audit.yaml +0 -7
  135. package/providers/context/actions/prepare-main-index-run-ledger.yaml +0 -7
  136. package/providers/context/actions/prepare-material-answer-runs.yaml +0 -7
  137. package/providers/context/actions/preview-extraction-batch.yaml +0 -5
  138. package/providers/context/actions/reconcile-indexer-results.yaml +0 -7
  139. package/providers/context/actions/reconcile-review-identities.yaml +0 -5
  140. package/providers/context/actions/record-index-profile-revision.yaml +0 -7
  141. package/providers/context/actions/report-index-profile-failure.yaml +0 -7
  142. package/providers/context/actions/resolve-effective-composers.yaml +0 -7
  143. package/providers/context/actions/review-material-answer-candidate.yaml +0 -8
  144. package/providers/context/actions/revise-code-index-audit.yaml +0 -5
  145. package/providers/context/actions/revise-document.yaml +0 -5
  146. package/providers/context/actions/revise-index-output.yaml +0 -7
  147. package/providers/context/actions/run-material-answer-indexers.yaml +0 -7
  148. package/providers/context/actions/start-main-index-run.yaml +0 -7
  149. package/providers/context/actions/start-material-answer-run.yaml +0 -7
  150. package/providers/context/actions/start-post-author-composer-run.yaml +0 -7
  151. package/providers/context/actions/submit-code-index-audit.yaml +0 -6
  152. package/providers/context/resources/dialogue/code-extraction.md +0 -87
  153. package/providers/context/resources/dialogue/document-classification.md +0 -33
  154. package/providers/context/resources/dialogue/structure-confirmation.md +0 -44
  155. package/providers/context/resources/dialogue/workflow-mode-after-capture.md +0 -25
  156. package/providers/context/resources/manuals/reference/code-extractors.md +0 -152
  157. package/providers/context/resources/procedures/code-extraction.md +0 -188
  158. package/providers/context/resources/procedures/code-index-audit.md +0 -113
  159. package/providers/context/resources/procedures/document-classification.md +0 -22
  160. package/providers/context/resources/procedures/document-optimization.md +0 -110
  161. package/providers/context/resources/procedures/document-revision.md +0 -36
  162. package/providers/context/resources/procedures/prose-align.md +0 -68
  163. package/providers/context/resources/procedures/prose-compile.md +0 -23
  164. package/providers/context/resources/semantic/align/candidate-resolution.md +0 -106
  165. package/providers/context/resources/semantic/align/density-profile.md +0 -41
  166. package/providers/context/resources/semantic/align/gates.md +0 -276
  167. package/providers/context/resources/semantic/align/structure-planning.md +0 -337
  168. package/providers/context/resources/semantic/code-index/classification.md +0 -270
  169. package/providers/context/resources/semantic/code-index/templates/adapter.md +0 -118
  170. package/providers/context/resources/semantic/code-index/templates/api-service.md +0 -116
  171. package/providers/context/resources/semantic/code-index/templates/background-runtime.md +0 -109
  172. package/providers/context/resources/semantic/code-index/templates/cli-tool.md +0 -129
  173. package/providers/context/resources/semantic/code-index/templates/contract-source.md +0 -73
  174. package/providers/context/resources/semantic/code-index/templates/contracts-and-chains.md +0 -81
  175. package/providers/context/resources/semantic/code-index/templates/cross-module-chain.md +0 -78
  176. package/providers/context/resources/semantic/code-index/templates/derived-source.md +0 -116
  177. package/providers/context/resources/semantic/code-index/templates/domain-service.md +0 -109
  178. package/providers/context/resources/semantic/code-index/templates/event-flow.md +0 -62
  179. package/providers/context/resources/semantic/code-index/templates/monorepo-container.md +0 -124
  180. package/providers/context/resources/semantic/code-index/templates/persistence-boundary.md +0 -56
  181. package/providers/context/resources/semantic/code-index/templates/plugin-extension.md +0 -52
  182. package/providers/context/resources/semantic/code-index/templates/protocol-boundary.md +0 -88
  183. package/providers/context/resources/semantic/code-index/templates/sdk-library.md +0 -132
  184. package/providers/context/resources/semantic/code-index/templates/web-application.md +0 -145
  185. package/providers/context/resources/semantic/compile/index.md +0 -31
  186. package/providers/context/resources/views/code-index-audit.yaml +0 -6
  187. package/providers/context/resources/views/document-optimization-current.yaml +0 -6
  188. package/providers/context/resources/views/extraction-preview.yaml +0 -6
  189. package/providers/context/resources/views/structure-current.yaml +0 -6
  190. package/providers/context/schemas/code-index-audit-decision.schema.json +0 -94
  191. package/providers/context/schemas/document-optimization-decisions.schema.json +0 -57
  192. package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +0 -46
  193. package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +0 -104
  194. package/providers/context/schemas/indexer-contract-overlay-authorization-input.schema.json +0 -32
  195. package/providers/context/schemas/indexer-contract-overlay-authorization-result.schema.json +0 -121
  196. package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +0 -90
  197. package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +0 -80
  198. package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +0 -32
  199. package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +0 -32
  200. package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +0 -19
  201. package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +0 -87
  202. package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +0 -86
  203. package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +0 -19
  204. package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +0 -18
  205. package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +0 -94
  206. package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +0 -72
  207. package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +0 -13
  208. package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +0 -19
  209. package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +0 -22
  210. package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +0 -49
  211. package/providers/context/schemas/indexer-profile-override-decision.schema.json +0 -20
  212. package/providers/context/schemas/indexer-profile-override-result.schema.json +0 -49
  213. package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +0 -18
  214. package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +0 -31
  215. package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +0 -45
  216. package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +0 -59
  217. package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +0 -43
  218. package/providers/context/schemas/prose-structure-batch.schema.json +0 -35
  219. package/providers/context/skills/revise-index-output/SKILL.md +0 -12
@@ -10,9 +10,6 @@
10
10
  "base_contract",
11
11
  "operator_contract",
12
12
  "provider_integrity",
13
- "attestation",
14
- "trust_bundle_envelope",
15
- "project_authorization",
16
13
  "input_digest"
17
14
  ],
18
15
  "properties": {
@@ -43,45 +40,6 @@
43
40
  }
44
41
  },
45
42
  "provider_integrity": { "$ref": "#/$defs/digest" },
46
- "attestation": {
47
- "oneOf": [
48
- { "type": "null" },
49
- {
50
- "type": "object",
51
- "required": ["protocol", "attestation_digest"],
52
- "properties": {
53
- "protocol": { "const": "context.indexer.overlay-attestation/v1" },
54
- "attestation_digest": { "$ref": "#/$defs/digest" }
55
- }
56
- }
57
- ]
58
- },
59
- "trust_bundle_envelope": {
60
- "oneOf": [
61
- { "type": "null" },
62
- {
63
- "type": "object",
64
- "required": ["protocol", "bundle"],
65
- "properties": {
66
- "protocol": { "const": "context.indexer.overlay-trust-bundle-envelope/v1" },
67
- "bundle": { "type": "object" }
68
- }
69
- }
70
- ]
71
- },
72
- "project_authorization": {
73
- "oneOf": [
74
- { "type": "null" },
75
- {
76
- "type": "object",
77
- "required": ["protocol", "authorization_receipt_digest"],
78
- "properties": {
79
- "protocol": { "const": "context.indexer.overlay-project-authorization/v1" },
80
- "authorization_receipt_digest": { "$ref": "#/$defs/digest" }
81
- }
82
- }
83
- ]
84
- },
85
43
  "input_digest": { "$ref": "#/$defs/digest" }
86
44
  },
87
45
  "$defs": {
@@ -12,14 +12,13 @@
12
12
  "overlay",
13
13
  "effective_profile",
14
14
  "conformance_report",
15
- "trust_receipt",
16
- "authorization_request",
15
+ "validation_receipt",
17
16
  "result_digest"
18
17
  ],
19
18
  "properties": {
20
19
  "protocol": { "const": "context.indexer.contract-overlay-validation-result/v1" },
21
- "outcome": { "enum": ["trusted", "authorization-required"] },
22
- "graph_outcome": { "enum": ["completed", "waiting-user"] },
20
+ "outcome": { "const": "valid" },
21
+ "graph_outcome": { "const": "completed" },
23
22
  "validation_input_digest": { "$ref": "#/$defs/digest" },
24
23
  "project_ref": { "type": "string", "minLength": 1 },
25
24
  "overlay": { "type": "object" },
@@ -32,127 +31,33 @@
32
31
  "report_digest": { "$ref": "#/$defs/digest" }
33
32
  }
34
33
  },
35
- "trust_receipt": {
36
- "oneOf": [
37
- { "type": "null" },
38
- {
39
- "type": "object",
40
- "additionalProperties": false,
41
- "required": [
42
- "protocol",
43
- "trust_class",
44
- "project_ref",
45
- "overlay_digest",
46
- "attestation_digest",
47
- "base_contract_digest",
48
- "provider_integrity",
49
- "operator_contract_digest",
50
- "conformance_report_digest",
51
- "trust_adapter",
52
- "trust_adapter_version",
53
- "trust_management_authority_digest",
54
- "trust_policy_digest",
55
- "authorization_receipt_digest",
56
- "receipt_digest"
57
- ],
58
- "properties": {
59
- "protocol": { "const": "context.indexer.overlay-trust-receipt/v1" },
60
- "trust_class": {
61
- "enum": ["enterprise-signed", "project-authorized-exact-digest"]
62
- },
63
- "project_ref": { "type": ["string", "null"] },
64
- "overlay_digest": { "$ref": "#/$defs/digest" },
65
- "attestation_digest": { "$ref": "#/$defs/nullableDigest" },
66
- "base_contract_digest": { "$ref": "#/$defs/digest" },
67
- "provider_integrity": { "$ref": "#/$defs/digest" },
68
- "operator_contract_digest": { "$ref": "#/$defs/digest" },
69
- "conformance_report_digest": { "$ref": "#/$defs/digest" },
70
- "trust_adapter": { "type": ["string", "null"], "minLength": 1 },
71
- "trust_adapter_version": {
72
- "oneOf": [
73
- { "type": "null" },
74
- { "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.-]+)?$" }
75
- ]
76
- },
77
- "trust_management_authority_digest": { "$ref": "#/$defs/nullableDigest" },
78
- "trust_policy_digest": { "$ref": "#/$defs/nullableDigest" },
79
- "authorization_receipt_digest": { "$ref": "#/$defs/nullableDigest" },
80
- "receipt_digest": { "$ref": "#/$defs/digest" }
81
- },
82
- "allOf": [
83
- {
84
- "if": { "properties": { "trust_class": { "const": "enterprise-signed" } } },
85
- "then": {
86
- "properties": {
87
- "project_ref": { "type": "null" },
88
- "attestation_digest": { "$ref": "#/$defs/digest" },
89
- "trust_adapter": { "type": "string", "minLength": 1 },
90
- "trust_adapter_version": { "type": "string" },
91
- "trust_management_authority_digest": { "$ref": "#/$defs/digest" },
92
- "trust_policy_digest": { "$ref": "#/$defs/digest" },
93
- "authorization_receipt_digest": { "type": "null" }
94
- }
95
- }
96
- },
97
- {
98
- "if": { "properties": { "trust_class": { "const": "project-authorized-exact-digest" } } },
99
- "then": {
100
- "properties": {
101
- "project_ref": { "type": "string", "minLength": 1 },
102
- "trust_adapter": { "type": "null" },
103
- "trust_adapter_version": { "type": "null" },
104
- "trust_management_authority_digest": { "type": "null" },
105
- "trust_policy_digest": { "type": "null" },
106
- "authorization_receipt_digest": { "$ref": "#/$defs/digest" }
107
- }
108
- }
109
- }
110
- ]
111
- }
112
- ]
113
- },
114
- "authorization_request": {
115
- "oneOf": [
116
- { "type": "null" },
117
- {
118
- "type": "object",
119
- "additionalProperties": false,
120
- "required": [
121
- "protocol",
122
- "project_ref",
123
- "overlay_digest",
124
- "attestation_digest",
125
- "base_contract_digest",
126
- "provider_integrity",
127
- "operator_contract_digest",
128
- "conformance_report_digest",
129
- "request_digest"
130
- ],
131
- "properties": {
132
- "protocol": {
133
- "const": "context.indexer.contract-overlay-authorization-request/v1"
134
- },
135
- "project_ref": { "type": "string", "minLength": 1 },
136
- "overlay_digest": { "$ref": "#/$defs/digest" },
137
- "attestation_digest": { "$ref": "#/$defs/nullableDigest" },
138
- "base_contract_digest": { "$ref": "#/$defs/digest" },
139
- "provider_integrity": { "$ref": "#/$defs/digest" },
140
- "operator_contract_digest": { "$ref": "#/$defs/digest" },
141
- "conformance_report_digest": { "$ref": "#/$defs/digest" },
142
- "request_digest": { "$ref": "#/$defs/digest" }
143
- }
144
- }
145
- ]
34
+ "validation_receipt": {
35
+ "type": "object",
36
+ "additionalProperties": false,
37
+ "required": [
38
+ "protocol",
39
+ "project_ref",
40
+ "overlay_digest",
41
+ "base_contract_digest",
42
+ "provider_integrity",
43
+ "operator_contract_digest",
44
+ "conformance_report_digest",
45
+ "receipt_digest"
46
+ ],
47
+ "properties": {
48
+ "protocol": { "const": "context.indexer.overlay-validation-receipt/v1" },
49
+ "project_ref": { "type": "string", "minLength": 1 },
50
+ "overlay_digest": { "$ref": "#/$defs/digest" },
51
+ "base_contract_digest": { "$ref": "#/$defs/digest" },
52
+ "provider_integrity": { "$ref": "#/$defs/digest" },
53
+ "operator_contract_digest": { "$ref": "#/$defs/digest" },
54
+ "conformance_report_digest": { "$ref": "#/$defs/digest" },
55
+ "receipt_digest": { "$ref": "#/$defs/digest" }
56
+ }
146
57
  },
147
58
  "result_digest": { "$ref": "#/$defs/digest" }
148
59
  },
149
60
  "$defs": {
150
- "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
151
- "nullableDigest": {
152
- "oneOf": [
153
- { "type": "null" },
154
- { "$ref": "#/$defs/digest" }
155
- ]
156
- }
61
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
157
62
  }
158
63
  }
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.lifecycle-continuation/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": ["protocol", "outcome"],
7
+ "properties": {
8
+ "protocol": {
9
+ "const": "context.indexer.lifecycle-continuation/v1"
10
+ },
11
+ "outcome": {
12
+ "const": "follow-indexer-route"
13
+ }
14
+ }
15
+ }
@@ -4,33 +4,29 @@
4
4
  "oneOf": [
5
5
  {
6
6
  "type": "object",
7
- "required": ["protocol", "requirement_set_digest", "profile_contract_digests", "source_inventory_digests", "items"],
7
+ "required": ["protocol", "requirement_set_digest"],
8
8
  "properties": {
9
9
  "protocol": { "const": "context.indexer.question-target-inventory-input/v1" },
10
- "requirement_set_digest": { "$ref": "#/$defs/digest" },
11
- "profile_contract_digests": { "type": "array", "minItems": 1, "items": { "$ref": "#/$defs/digest" } },
12
- "source_inventory_digests": { "type": "array", "minItems": 1, "items": { "$ref": "#/$defs/digest" } },
13
- "items": { "type": "array", "items": { "type": "object" } }
10
+ "requirement_set_digest": { "$ref": "#/$defs/digest" }
14
11
  },
15
12
  "additionalProperties": false
16
13
  },
17
14
  {
18
15
  "type": "object",
19
- "required": ["protocol", "worksets"],
16
+ "required": ["protocol", "question_target_inventory"],
20
17
  "properties": {
21
18
  "protocol": { "const": "context.indexer.main-partition-workset-build-input/v1" },
22
- "worksets": { "type": "array", "minItems": 1, "items": { "type": "object" } }
19
+ "question_target_inventory": { "type": "object" }
23
20
  },
24
21
  "additionalProperties": false
25
22
  },
26
23
  {
27
24
  "type": "object",
28
- "required": ["protocol", "request", "result", "workset_read_receipts", "validation"],
25
+ "required": ["protocol", "request", "result", "validation"],
29
26
  "properties": {
30
27
  "protocol": { "const": "context.indexer.main-run-validation-input/v1" },
31
28
  "request": { "type": "object" },
32
29
  "result": { "type": "object" },
33
- "workset_read_receipts": { "type": "array", "minItems": 1, "items": { "type": "object" } },
34
30
  "validation": { "type": "object" }
35
31
  },
36
32
  "additionalProperties": false
@@ -60,11 +56,11 @@
60
56
  },
61
57
  {
62
58
  "type": "object",
63
- "required": ["protocol", "partitions", "group_contexts"],
59
+ "required": ["protocol", "partitions", "target_resolution_views"],
64
60
  "properties": {
65
61
  "protocol": { "const": "context.indexer.main-author-workset-build-input/v1" },
66
62
  "partitions": { "type": "array", "minItems": 1, "items": { "type": "object" } },
67
- "group_contexts": { "type": "array", "minItems": 1, "items": { "type": "object" } }
63
+ "target_resolution_views": { "type": "array", "items": { "type": "object" } }
68
64
  },
69
65
  "additionalProperties": false
70
66
  },
@@ -124,38 +120,35 @@
124
120
  },
125
121
  {
126
122
  "type": "object",
127
- "required": ["protocol", "requirement_set_digest", "workset_digest", "result", "workset_read_receipts"],
123
+ "required": ["protocol", "requirement_set_digest", "workset_digest", "result"],
128
124
  "properties": {
129
125
  "protocol": { "const": "context.indexer.main-run-partition-convergence-input/v1" },
130
126
  "requirement_set_digest": { "$ref": "#/$defs/digest" },
131
127
  "workset_digest": { "$ref": "#/$defs/digest" },
132
- "result": { "type": "object" },
133
- "workset_read_receipts": { "type": "array", "minItems": 1, "items": { "type": "object" } }
128
+ "result": { "type": "object" }
134
129
  },
135
130
  "additionalProperties": false
136
131
  },
137
132
  {
138
133
  "type": "object",
139
- "required": ["protocol", "requirement_set_digest", "request", "convergence", "validation", "workset_read_receipts"],
134
+ "required": ["protocol", "requirement_set_digest", "request", "convergence", "validation"],
140
135
  "properties": {
141
136
  "protocol": { "const": "context.indexer.catalog-fallback-build-input/v1" },
142
137
  "requirement_set_digest": { "$ref": "#/$defs/digest" },
143
138
  "request": { "type": "object" },
144
139
  "convergence": { "type": "object" },
145
- "validation": { "type": "object" },
146
- "workset_read_receipts": { "type": "array", "minItems": 1, "items": { "type": "object" } }
140
+ "validation": { "type": "object" }
147
141
  },
148
142
  "additionalProperties": false
149
143
  },
150
144
  {
151
145
  "type": "object",
152
- "required": ["protocol", "requirement_set_digest", "workset_digest", "result", "workset_read_receipts"],
146
+ "required": ["protocol", "requirement_set_digest", "workset_digest", "result"],
153
147
  "properties": {
154
148
  "protocol": { "const": "context.indexer.main-run-store-accept-input/v1" },
155
149
  "requirement_set_digest": { "$ref": "#/$defs/digest" },
156
150
  "workset_digest": { "$ref": "#/$defs/digest" },
157
- "result": { "type": "object" },
158
- "workset_read_receipts": { "type": "array", "minItems": 1, "items": { "type": "object" } }
151
+ "result": { "type": "object" }
159
152
  },
160
153
  "additionalProperties": false
161
154
  },
@@ -17,11 +17,26 @@
17
17
  },
18
18
  {
19
19
  "type": "object",
20
- "required": ["protocol", "worksets", "workset_set"],
20
+ "required": ["protocol", "requirement_set_digest", "worksets", "workset_set", "run_specs", "graph_outcome"],
21
21
  "properties": {
22
- "protocol": { "enum": ["context.indexer.main-partition-workset-build/v1", "context.indexer.main-author-workset-build/v1"] },
22
+ "protocol": { "const": "context.indexer.main-partition-workset-build/v1" },
23
+ "requirement_set_digest": { "$ref": "#/$defs/digest" },
24
+ "worksets": { "type": "array" },
25
+ "workset_set": { "type": "object" },
26
+ "run_specs": { "type": "array", "minItems": 1, "items": { "type": "object" } },
27
+ "graph_outcome": { "const": "completed" }
28
+ },
29
+ "additionalProperties": false
30
+ },
31
+ {
32
+ "type": "object",
33
+ "required": ["protocol", "requirement_set_digest", "worksets", "workset_set", "run_specs", "graph_outcome"],
34
+ "properties": {
35
+ "protocol": { "const": "context.indexer.main-author-workset-build/v1" },
36
+ "requirement_set_digest": { "$ref": "#/$defs/digest" },
23
37
  "worksets": { "type": "array" },
24
38
  "workset_set": { "type": "object" },
39
+ "run_specs": { "type": "array", "minItems": 1, "items": { "type": "object" } },
25
40
  "graph_outcome": { "const": "completed" }
26
41
  },
27
42
  "additionalProperties": false
@@ -23,7 +23,14 @@
23
23
  "additionalProperties": false,
24
24
  "required": ["kind", "resource_ref", "digest", "content"],
25
25
  "properties": {
26
- "kind": { "enum": ["provider", "customization-append"] },
26
+ "kind": {
27
+ "enum": [
28
+ "provider",
29
+ "template",
30
+ "composer",
31
+ "customization-append"
32
+ ]
33
+ },
27
34
  "resource_ref": { "type": "string", "minLength": 1 },
28
35
  "digest": { "$ref": "#/$defs/digest" },
29
36
  "content": { "type": "string" }
@@ -5,15 +5,15 @@
5
5
  "additionalProperties": false,
6
6
  "required": [
7
7
  "protocol",
8
- "trusted_validation_input",
9
- "trusted_validation_result",
8
+ "validation_input",
9
+ "validation_result",
10
10
  "registry",
11
11
  "requirement_id",
12
12
  "input_digest"
13
13
  ],
14
14
  "properties": {
15
15
  "protocol": { "const": "context.indexer.overlay-question-proposal-input/v1" },
16
- "trusted_validation_input": {
16
+ "validation_input": {
17
17
  "type": "object",
18
18
  "required": ["protocol", "input_digest"],
19
19
  "properties": {
@@ -21,12 +21,61 @@
21
21
  "input_digest": { "$ref": "#/$defs/digest" }
22
22
  }
23
23
  },
24
- "trusted_validation_result": {
24
+ "validation_result": {
25
25
  "type": "object",
26
- "required": ["protocol", "outcome", "result_digest"],
26
+ "additionalProperties": false,
27
+ "required": [
28
+ "protocol",
29
+ "outcome",
30
+ "graph_outcome",
31
+ "validation_input_digest",
32
+ "project_ref",
33
+ "overlay",
34
+ "effective_profile",
35
+ "conformance_report",
36
+ "validation_receipt",
37
+ "result_digest"
38
+ ],
27
39
  "properties": {
28
40
  "protocol": { "const": "context.indexer.contract-overlay-validation-result/v1" },
29
- "outcome": { "const": "trusted" },
41
+ "outcome": { "const": "valid" },
42
+ "graph_outcome": { "const": "completed" },
43
+ "validation_input_digest": { "$ref": "#/$defs/digest" },
44
+ "project_ref": { "type": "string", "minLength": 1 },
45
+ "overlay": { "type": "object" },
46
+ "effective_profile": { "type": "object" },
47
+ "conformance_report": {
48
+ "type": "object",
49
+ "required": ["protocol", "report_digest"],
50
+ "properties": {
51
+ "protocol": { "const": "context.indexer.overlay-conformance-report/v1" },
52
+ "report_digest": { "$ref": "#/$defs/digest" }
53
+ }
54
+ },
55
+ "validation_receipt": {
56
+ "type": "object",
57
+ "additionalProperties": false,
58
+ "required": [
59
+ "protocol",
60
+ "project_ref",
61
+ "overlay_digest",
62
+ "base_contract_digest",
63
+ "provider_integrity",
64
+ "operator_contract_digest",
65
+ "conformance_report_digest",
66
+ "receipt_digest"
67
+ ],
68
+ "properties": {
69
+ "protocol": { "const": "context.indexer.overlay-validation-receipt/v1" },
70
+ "project_ref": { "type": "string", "minLength": 1 },
71
+ "overlay_digest": { "$ref": "#/$defs/digest" },
72
+ "base_contract_digest": { "$ref": "#/$defs/digest" },
73
+ "provider_integrity": { "$ref": "#/$defs/digest" },
74
+ "operator_contract_digest": { "$ref": "#/$defs/digest" },
75
+ "conformance_report_digest": { "$ref": "#/$defs/digest" },
76
+ "receipt_digest": { "$ref": "#/$defs/digest" }
77
+ }
78
+ },
30
79
  "result_digest": { "$ref": "#/$defs/digest" }
31
80
  }
32
81
  },
@@ -5,8 +5,8 @@
5
5
  "additionalProperties": false,
6
6
  "required": [
7
7
  "protocol",
8
- "trusted_validation_input",
9
- "trusted_validation_result",
8
+ "validation_input",
9
+ "validation_result",
10
10
  "base_registry",
11
11
  "amendment",
12
12
  "confirmation",
@@ -18,8 +18,8 @@
18
18
  ],
19
19
  "properties": {
20
20
  "protocol": { "const": "context.indexer.overlay-question-rebind-input/v1" },
21
- "trusted_validation_input": { "type": "object" },
22
- "trusted_validation_result": { "type": "object" },
21
+ "validation_input": { "type": "object" },
22
+ "validation_result": { "type": "object" },
23
23
  "base_registry": { "type": "object" },
24
24
  "amendment": { "type": "object" },
25
25
  "confirmation": { "type": "object" },
@@ -0,0 +1,32 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "context.indexer.workset-view-materialization-request/v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "protocol",
8
+ "handler",
9
+ "resource_id",
10
+ "workset_digest",
11
+ "execution_request_digest",
12
+ "view_digest",
13
+ "payload_digest",
14
+ "request_digest"
15
+ ],
16
+ "properties": {
17
+ "protocol": { "const": "context.indexer.workset-view-materialization-request/v1" },
18
+ "handler": { "const": "context.materialize-indexer-workset-view/v1" },
19
+ "resource_id": { "const": "authorized-indexer-workset-view" },
20
+ "workset_digest": { "$ref": "#/$defs/digest" },
21
+ "execution_request_digest": { "$ref": "#/$defs/digest" },
22
+ "view_digest": { "$ref": "#/$defs/digest" },
23
+ "payload_digest": { "$ref": "#/$defs/digest" },
24
+ "request_digest": { "$ref": "#/$defs/digest" }
25
+ },
26
+ "$defs": {
27
+ "digest": {
28
+ "type": "string",
29
+ "pattern": "^sha256:[a-f0-9]{64}$"
30
+ }
31
+ }
32
+ }
@@ -17,17 +17,17 @@ completion conditions. This Action is the entry for
17
17
  the guide's `indexer-provider-unavailable` handling instead of substituting a
18
18
  different version or cache.
19
19
 
20
- Report the exact CLI-bundled catalog together with other Indexer entry Skills
21
- already visible in this conversation. For an exact Skill root already exposed
22
- by the Host, read only `SKILL.md` frontmatter and the sibling
20
+ The current Action input already contains the exact requirements and
21
+ CLI-bundled catalog. Report those bundled entries together with other Indexer
22
+ entry Skills already visible in this conversation. For an exact Skill root
23
+ already exposed by the Host, read only `SKILL.md` frontmatter and the sibling
23
24
  `context-indexer.yaml`: the manifest version is authoritative and
24
25
  `metadata.context-provider-version` must match it. Do not load Provider guidance
25
26
  until selection. Group the same Skill name and exact version into one
26
27
  conversation item with all observed source types; an installed copy of the
27
- same CLI-bundled identity is not another Provider. Preserve distinct source
28
- observations in `visible_skills`, keep different versions separate, and never
29
- use source count or discovery order as precedence. Do not scan plugin caches or
30
- persist this discovery list.
28
+ same CLI-bundled identity is not another Provider. Keep different versions
29
+ separate, never use source count or discovery order as precedence, and do not
30
+ scan plugin caches or persist this discovery list.
31
31
 
32
32
  When the Graph enters through `markdown-provider`, first require the completed
33
33
  capture report and report the visible `context-markdown-indexer*` Skills before
@@ -36,23 +36,36 @@ current evidence. Do not infer semantic ownership from filenames, titles, or
36
36
  headings, and do not persist the discovery list. Capture proves byte/currentness
37
37
  only; the selected Markdown Provider remains responsible for semantic indexing.
38
38
 
39
- Produce `context.indexer.provider-route-input/v1` for the current, unchanged
40
- requirement set. Select portable distribution locators and exact versions and
41
- integrities. Each required requirement/domain/source/module owner cell needs one
42
- primary Indexer; overlapping read scope is allowed for enrichers. One Indexer
43
- may combine a primary layer, supporting profiles, extension layers, and
44
- composers, but Provider array order is not precedence.
45
-
46
- On the first pass set `community_fallback_attempted: false`. If the CLI records
47
- the route Action as `partial`, retry with the applicable CLI-bundled community
48
- profile and set it to `true`. If the CLI reports conflicting primary owner cells,
49
- do not choose one by name order: present the exact conflict and wait for a
50
- decision. If fallback still leaves an unowned required cell, preserve the exact
51
- CLI `capability_gap_proof` and record `blocked`; never invent a Provider or
52
- weaken the requirement. Only the following `propose-indexer-customization`
53
- Action may use that proof to draft a dependency-free minimal `extend`.
54
-
55
- Record the CLI Route Action outcome exactly from `route.graph_outcome`. Only a
56
- `completed` report may pass its `selection_proposal_input` to
57
- `validate-indexer-selection-proposal`. Provider resolution and execution remain
58
- separate Actions.
39
+ Return only the compact current-Action result:
40
+
41
+ ```yaml
42
+ stage: provider-selection
43
+ host_visible_skills: []
44
+ indexers:
45
+ - <one complete selected Indexer registry entry>
46
+ ```
47
+
48
+ `host_visible_skills` contains only non-CLI observations already visible to
49
+ the Host. `indexers` contains the semantic registry entries selected for the
50
+ unchanged requirements in the Action input. Select portable distribution
51
+ locators and exact versions and integrities. Each required
52
+ requirement/domain/source/module owner cell needs one primary Indexer;
53
+ overlapping read scope is allowed for enrichers. One Indexer may combine a
54
+ primary layer, supporting profiles, extension layers, and composers, but
55
+ Provider array order is not precedence.
56
+
57
+ Choose the applicable CLI-bundled community profile directly when no visible
58
+ specialized Provider is required. The CLI constructs the full route input,
59
+ performs fallback/conflict checks, validates the proposal, resolves and stages
60
+ bundles, and atomically applies `src/indexers.yaml`. If the current Route reports
61
+ a primary owner conflict or an uncovered required cell, present that exact
62
+ problem and wait; never invent a Provider or weaken the requirement.
63
+
64
+ Submit the result only through the exact `context action complete-current`
65
+ command returned by the Route. Never call the low-level route, validation,
66
+ resolution, staging or apply commands as a production workflow. If a selected
67
+ external Provider needs Host resolution, the next current Route exposes that
68
+ existing Host Action and its exact request; invoke it once and submit its Host
69
+ result through the next `complete-current` command. If the resolved Bundle carries a
70
+ non-allowlisted program, continue through the returned existing program-execution
71
+ Gate; never bypass it or fall back to its low-level command.