@c4a/context-cli 0.6.19 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/README.md +67 -6
  2. package/README.zh-CN.md +42 -5
  3. package/cli.js +75051 -42154
  4. package/indexers/bundles/context-code-indexer/SKILL.md +20 -0
  5. package/indexers/bundles/context-code-indexer/context-indexer.yaml +230 -0
  6. package/indexers/bundles/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
  7. package/indexers/bundles/context-code-indexer/references/composers/cross-module-chain.md +22 -0
  8. package/indexers/bundles/context-code-indexer/references/composers/development-and-delivery.md +22 -0
  9. package/indexers/bundles/context-code-indexer/references/composers/event-flow.md +21 -0
  10. package/indexers/bundles/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
  11. package/indexers/bundles/context-code-indexer/references/composers/persistence-boundary.md +21 -0
  12. package/indexers/bundles/context-code-indexer/references/composers/protocol-boundary.md +22 -0
  13. package/indexers/bundles/context-code-indexer/references/composers/public-contract.md +23 -0
  14. package/indexers/bundles/context-code-indexer/references/indexer.md +49 -0
  15. package/indexers/bundles/context-code-indexer/references/metrics.md +201 -0
  16. package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +119 -0
  17. package/indexers/bundles/context-code-indexer/templates/api-service.md +118 -0
  18. package/indexers/bundles/context-code-indexer/templates/background-runtime.md +109 -0
  19. package/indexers/bundles/context-code-indexer/templates/cli-tool.md +129 -0
  20. package/indexers/bundles/context-code-indexer/templates/component-library.md +99 -0
  21. package/indexers/bundles/context-code-indexer/templates/contract-source.md +73 -0
  22. package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
  23. package/indexers/bundles/context-code-indexer/templates/derived-generated-source.md +117 -0
  24. package/indexers/bundles/context-code-indexer/templates/domain-service.md +109 -0
  25. package/indexers/bundles/context-code-indexer/templates/event-consumer.md +62 -0
  26. package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +89 -0
  27. package/indexers/bundles/context-code-indexer/templates/monorepo-container.md +124 -0
  28. package/indexers/bundles/context-code-indexer/templates/plugin-extension.md +52 -0
  29. package/indexers/bundles/context-code-indexer/templates/sdk-library.md +132 -0
  30. package/indexers/bundles/context-code-indexer/templates/storage-repository.md +56 -0
  31. package/indexers/bundles/context-code-indexer/templates/web-application.md +146 -0
  32. package/indexers/bundles/context-code-indexer/tests/fixtures/chapters.json +226 -0
  33. package/indexers/bundles/context-code-indexer/tests/fixtures/composers.json +82 -0
  34. package/indexers/bundles/context-code-indexer/tests/fixtures/profiles.json +210 -0
  35. package/indexers/bundles/context-code-indexer/tests/fixtures/scenarios.json +122 -0
  36. package/indexers/bundles/context-markdown-indexer/SKILL.md +20 -0
  37. package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +147 -0
  38. package/indexers/bundles/context-markdown-indexer/references/classification.md +63 -0
  39. package/indexers/bundles/context-markdown-indexer/references/editorial-policy.md +106 -0
  40. package/indexers/bundles/context-markdown-indexer/references/indexer.md +23 -0
  41. package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +146 -0
  42. package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
  43. package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
  44. package/indexers/bundles/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
  45. package/indexers/bundles/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
  46. package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
  47. package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +151 -0
  48. package/indexers/capability-manifest.json +40 -0
  49. package/indexers/contracts/hard-rule-conformance.json +2644 -0
  50. package/indexers/contracts/operator-contract.json +35 -0
  51. package/indexers/contracts/profile-contract.json +10162 -0
  52. package/indexers/release-manifest.json +208 -0
  53. package/package.json +5 -4
  54. package/plugins/README.md +17 -109
  55. package/plugins/README_CN.md +11 -89
  56. package/plugins/VERSION +1 -1
  57. package/plugins/claude/.claude-plugin/plugin.json +3 -11
  58. package/plugins/claude/CLAUDE.md +1 -1
  59. package/plugins/claude/README.md +1 -1
  60. package/plugins/claude/commands/context.md +76 -1
  61. package/plugins/codex/.codex-plugin/plugin.json +6 -17
  62. package/plugins/codex/AGENTS.md +1 -1
  63. package/plugins/codex/README.md +1 -1
  64. package/plugins/codex/skills/context/SKILL.md +77 -13
  65. package/plugins/cursor/.cursor-plugin/plugin.json +4 -17
  66. package/plugins/cursor/AGENTS.md +1 -1
  67. package/plugins/cursor/README.md +3 -2
  68. package/plugins/cursor/commands/c4a-context.md +76 -3
  69. package/plugins/skills/{c4a-context → context}/SKILL.md +78 -14
  70. package/plugins/skills/context-code-indexer/SKILL.md +20 -0
  71. package/plugins/skills/context-code-indexer/context-indexer.yaml +230 -0
  72. package/plugins/skills/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
  73. package/plugins/skills/context-code-indexer/references/composers/cross-module-chain.md +22 -0
  74. package/plugins/skills/context-code-indexer/references/composers/development-and-delivery.md +22 -0
  75. package/plugins/skills/context-code-indexer/references/composers/event-flow.md +21 -0
  76. package/plugins/skills/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
  77. package/plugins/skills/context-code-indexer/references/composers/persistence-boundary.md +21 -0
  78. package/plugins/skills/context-code-indexer/references/composers/protocol-boundary.md +22 -0
  79. package/plugins/skills/context-code-indexer/references/composers/public-contract.md +23 -0
  80. package/plugins/skills/context-code-indexer/references/indexer.md +49 -0
  81. package/plugins/skills/context-code-indexer/references/metrics.md +201 -0
  82. package/plugins/skills/context-code-indexer/templates/adapter-integration.md +119 -0
  83. package/plugins/skills/context-code-indexer/templates/api-service.md +118 -0
  84. package/plugins/skills/context-code-indexer/templates/background-runtime.md +109 -0
  85. package/plugins/skills/context-code-indexer/templates/cli-tool.md +129 -0
  86. package/plugins/skills/context-code-indexer/templates/component-library.md +99 -0
  87. package/plugins/skills/context-code-indexer/templates/contract-source.md +73 -0
  88. package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
  89. package/plugins/skills/context-code-indexer/templates/derived-generated-source.md +117 -0
  90. package/plugins/skills/context-code-indexer/templates/domain-service.md +109 -0
  91. package/plugins/skills/context-code-indexer/templates/event-consumer.md +62 -0
  92. package/plugins/skills/context-code-indexer/templates/gateway-facade.md +89 -0
  93. package/plugins/skills/context-code-indexer/templates/monorepo-container.md +124 -0
  94. package/plugins/skills/context-code-indexer/templates/plugin-extension.md +52 -0
  95. package/plugins/skills/context-code-indexer/templates/sdk-library.md +132 -0
  96. package/plugins/skills/context-code-indexer/templates/storage-repository.md +56 -0
  97. package/plugins/skills/context-code-indexer/templates/web-application.md +146 -0
  98. package/plugins/skills/context-code-indexer/tests/fixtures/chapters.json +226 -0
  99. package/plugins/skills/context-code-indexer/tests/fixtures/composers.json +82 -0
  100. package/plugins/skills/context-code-indexer/tests/fixtures/profiles.json +210 -0
  101. package/plugins/skills/context-code-indexer/tests/fixtures/scenarios.json +122 -0
  102. package/plugins/skills/context-markdown-indexer/SKILL.md +20 -0
  103. package/plugins/skills/context-markdown-indexer/context-indexer.yaml +147 -0
  104. package/plugins/skills/context-markdown-indexer/references/classification.md +63 -0
  105. package/plugins/skills/context-markdown-indexer/references/editorial-policy.md +106 -0
  106. package/plugins/skills/context-markdown-indexer/references/indexer.md +23 -0
  107. package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +146 -0
  108. package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
  109. package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
  110. package/plugins/skills/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
  111. package/plugins/skills/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
  112. package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
  113. package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +151 -0
  114. package/providers/context/actions/accept-main-index-run.yaml +7 -0
  115. package/providers/context/actions/accept-material-answer-run.yaml +7 -0
  116. package/providers/context/actions/accept-post-author-composer-run.yaml +7 -0
  117. package/providers/context/actions/actualize-material-answer-bindings.yaml +8 -0
  118. package/providers/context/actions/apply-document-optimization-guidance.yaml +5 -0
  119. package/providers/context/actions/apply-indexer-project.yaml +7 -0
  120. package/providers/context/actions/audit-material-gap-state.yaml +8 -0
  121. package/providers/context/actions/audit-projected-artifact-fan-out.yaml +8 -0
  122. package/providers/context/actions/authorize-indexer-contract-overlay.yaml +7 -0
  123. package/providers/context/actions/authorize-indexer-dependencies.yaml +7 -0
  124. package/providers/context/actions/authorize-indexer-program-execution.yaml +7 -0
  125. package/providers/context/actions/build-main-index-author-worksets.yaml +7 -0
  126. package/providers/context/actions/build-main-index-catalog-fallback.yaml +7 -0
  127. package/providers/context/actions/build-main-index-partition-worksets.yaml +7 -0
  128. package/providers/context/actions/build-material-question-workset.yaml +7 -0
  129. package/providers/context/actions/build-post-author-composer-worksets.yaml +7 -0
  130. package/providers/context/actions/build-question-target-inventory.yaml +7 -0
  131. package/providers/context/actions/build-subject-catalog.yaml +7 -0
  132. package/providers/context/actions/build-target-resolution-views.yaml +7 -0
  133. package/providers/context/actions/checkpoint-material-answer-review.yaml +8 -0
  134. package/providers/context/actions/checkpoint-material-gaps.yaml +8 -0
  135. package/providers/context/actions/close-indexer-approved-knowledge.yaml +8 -0
  136. package/providers/context/actions/compile-indexer-candidates.yaml +8 -0
  137. package/providers/context/actions/compose-indexer-post-author-fragments.yaml +7 -0
  138. package/providers/context/actions/configure-community-indexer-fallback.yaml +6 -0
  139. package/providers/context/actions/configure-indexer-providers.yaml +6 -0
  140. package/providers/context/actions/confirm-index-requirement-workset.yaml +8 -0
  141. package/providers/context/actions/confirm-subject-reidentification.yaml +8 -0
  142. package/providers/context/actions/converge-main-index-partition-run.yaml +7 -0
  143. package/providers/context/actions/discover-markdown-indexer-providers.yaml +6 -0
  144. package/providers/context/actions/evaluate-material-gaps.yaml +8 -0
  145. package/providers/context/actions/fail-main-index-run.yaml +7 -0
  146. package/providers/context/actions/fail-material-answer-run.yaml +7 -0
  147. package/providers/context/actions/fail-post-author-composer-run.yaml +7 -0
  148. package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +8 -0
  149. package/providers/context/actions/inspect-index-profile-failure.yaml +7 -0
  150. package/providers/context/actions/inspect-indexer-dependencies.yaml +7 -0
  151. package/providers/context/actions/inspect-indexer-program-execution.yaml +7 -0
  152. package/providers/context/actions/inspect-indexer-project-proposal.yaml +7 -0
  153. package/providers/context/actions/inspect-markdown-provider-capture.yaml +7 -0
  154. package/providers/context/actions/inspect-material-answer-review.yaml +8 -0
  155. package/providers/context/actions/materialize-indexer-instructions.yaml +7 -0
  156. package/providers/context/actions/observe-indexer-project.yaml +7 -0
  157. package/providers/context/actions/observe-main-index-run-ledger.yaml +7 -0
  158. package/providers/context/actions/observe-material-answer-runs.yaml +7 -0
  159. package/providers/context/actions/observe-post-author-composer-worksets.yaml +7 -0
  160. package/providers/context/actions/override-index-profile-audit.yaml +7 -0
  161. package/providers/context/actions/prepare-indexer-customization-project.yaml +7 -0
  162. package/providers/context/actions/prepare-main-index-run-ledger.yaml +7 -0
  163. package/providers/context/actions/prepare-material-answer-runs.yaml +7 -0
  164. package/providers/context/actions/propose-indexer-customization.yaml +7 -0
  165. package/providers/context/actions/propose-overlay-question-amendment.yaml +7 -0
  166. package/providers/context/actions/rebind-indexer-selection-to-requirement.yaml +7 -0
  167. package/providers/context/actions/reconcile-indexer-results.yaml +7 -0
  168. package/providers/context/actions/record-index-profile-revision.yaml +7 -0
  169. package/providers/context/actions/report-index-profile-failure.yaml +7 -0
  170. package/providers/context/actions/report-indexer-incremental-impact.yaml +8 -0
  171. package/providers/context/actions/resolve-effective-composers.yaml +7 -0
  172. package/providers/context/actions/review-material-answer-candidate.yaml +8 -0
  173. package/providers/context/actions/revise-index-output.yaml +7 -0
  174. package/providers/context/actions/route-index-requirement-confirmation.yaml +8 -0
  175. package/providers/context/actions/route-indexer-provider-selection.yaml +7 -0
  176. package/providers/context/actions/run-indexer-agent-step.yaml +7 -0
  177. package/providers/context/actions/run-indexer-post-author-composer.yaml +7 -0
  178. package/providers/context/actions/run-material-answer-indexers.yaml +7 -0
  179. package/providers/context/actions/start-main-index-run.yaml +7 -0
  180. package/providers/context/actions/start-material-answer-run.yaml +7 -0
  181. package/providers/context/actions/start-post-author-composer-run.yaml +7 -0
  182. package/providers/context/actions/validate-indexer-contract-overlays.yaml +7 -0
  183. package/providers/context/actions/validate-indexer-customization.yaml +7 -0
  184. package/providers/context/actions/validate-indexer-selection-proposal.yaml +7 -0
  185. package/providers/context/actions/validate-main-index-run.yaml +7 -0
  186. package/providers/context/actions/validate-markdown-provider-selection.yaml +7 -0
  187. package/providers/context/actions/validate-subject-key-schemas.yaml +8 -0
  188. package/providers/context/codes.yaml +70 -0
  189. package/providers/context/graphs/indexer.yaml +1068 -0
  190. package/providers/context/graphs/workspace.yaml +20 -1
  191. package/providers/context/manifest.json +1433 -121
  192. package/providers/context/provider.yaml +3 -2
  193. package/providers/context/resources/manuals/reference/code-extractors.md +2 -2
  194. package/providers/context/resources/manuals/reference/project-api.md +2 -2
  195. package/providers/context/resources/procedures/code-extraction.md +6 -2
  196. package/providers/context/resources/procedures/code-index-audit.md +36 -6
  197. package/providers/context/resources/procedures/document-optimization.md +23 -4
  198. package/providers/context/resources/semantic/code-index/templates/adapter.md +9 -0
  199. package/providers/context/resources/semantic/code-index/templates/contracts-and-chains.md +81 -0
  200. package/providers/context/resources/views/resolved-indexer-instructions.yaml +23 -0
  201. package/providers/context/schemas/document-optimization-decisions.schema.json +1 -1
  202. package/providers/context/schemas/indexer-agent-step-input.schema.json +30 -0
  203. package/providers/context/schemas/indexer-agent-step-result.schema.json +47 -0
  204. package/providers/context/schemas/indexer-candidate-compile-input.schema.json +57 -0
  205. package/providers/context/schemas/indexer-candidate-compile-output.schema.json +38 -0
  206. package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +46 -0
  207. package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +104 -0
  208. package/providers/context/schemas/indexer-contract-overlay-authorization-input.schema.json +32 -0
  209. package/providers/context/schemas/indexer-contract-overlay-authorization-result.schema.json +121 -0
  210. package/providers/context/schemas/indexer-contract-overlay-validation-input.schema.json +90 -0
  211. package/providers/context/schemas/indexer-contract-overlay-validation-result.schema.json +158 -0
  212. package/providers/context/schemas/indexer-customization-project-preparation-result.schema.json +44 -0
  213. package/providers/context/schemas/indexer-customization-proposal-draft.schema.json +83 -0
  214. package/providers/context/schemas/indexer-customization-validation-result.schema.json +36 -0
  215. package/providers/context/schemas/indexer-dependency-authorization-input.schema.json +71 -0
  216. package/providers/context/schemas/indexer-dependency-authorization-result.schema.json +138 -0
  217. package/providers/context/schemas/indexer-incremental-impact-input.schema.json +31 -0
  218. package/providers/context/schemas/indexer-incremental-impact-output.schema.json +52 -0
  219. package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +187 -0
  220. package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +180 -0
  221. package/providers/context/schemas/indexer-markdown-provider-capture-input.schema.json +17 -0
  222. package/providers/context/schemas/indexer-markdown-provider-capture-output.schema.json +54 -0
  223. package/providers/context/schemas/indexer-markdown-provider-validation-input.schema.json +34 -0
  224. package/providers/context/schemas/indexer-markdown-provider-validation-output.schema.json +75 -0
  225. package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +90 -0
  226. package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +80 -0
  227. package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +32 -0
  228. package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +32 -0
  229. package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +19 -0
  230. package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +87 -0
  231. package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +86 -0
  232. package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +19 -0
  233. package/providers/context/schemas/indexer-materialize-request.schema.json +53 -0
  234. package/providers/context/schemas/indexer-materialized-resource.schema.json +57 -0
  235. package/providers/context/schemas/indexer-overlay-question-amendment.schema.json +13 -0
  236. package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +40 -0
  237. package/providers/context/schemas/indexer-overlay-question-rebind-input.schema.json +35 -0
  238. package/providers/context/schemas/indexer-overlay-question-rebind-result.schema.json +25 -0
  239. package/providers/context/schemas/indexer-post-author-fragment-request.schema.json +26 -0
  240. package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +18 -0
  241. package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +94 -0
  242. package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +72 -0
  243. package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +13 -0
  244. package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +19 -0
  245. package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +22 -0
  246. package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +49 -0
  247. package/providers/context/schemas/indexer-profile-override-decision.schema.json +20 -0
  248. package/providers/context/schemas/indexer-profile-override-result.schema.json +49 -0
  249. package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +18 -0
  250. package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +31 -0
  251. package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +45 -0
  252. package/providers/context/schemas/indexer-program-execution-authorization-input.schema.json +145 -0
  253. package/providers/context/schemas/indexer-program-execution-authorization-result.schema.json +60 -0
  254. package/providers/context/schemas/indexer-project-action-result.schema.json +19 -0
  255. package/providers/context/schemas/indexer-project-gate-input.schema.json +100 -0
  256. package/providers/context/schemas/indexer-project-observation-input.schema.json +16 -0
  257. package/providers/context/schemas/indexer-project-observation-result.schema.json +42 -0
  258. package/providers/context/schemas/indexer-provider-route-input.schema.json +55 -0
  259. package/providers/context/schemas/indexer-provider-route-report.schema.json +188 -0
  260. package/providers/context/schemas/indexer-requirement-confirmation-input.schema.json +27 -0
  261. package/providers/context/schemas/indexer-requirement-confirmation-output.schema.json +24 -0
  262. package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +59 -0
  263. package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +43 -0
  264. package/providers/context/schemas/indexer-selection-proposal-input.schema.json +12 -0
  265. package/providers/context/schemas/indexer-selection-proposal-validation.schema.json +23 -0
  266. package/providers/context/schemas/indexer-subject-reidentification-input.schema.json +37 -0
  267. package/providers/context/schemas/indexer-subject-reidentification-output.schema.json +31 -0
  268. package/providers/context/skills/configure-indexer-providers/SKILL.md +58 -0
  269. package/providers/context/skills/prepare-indexer-customization-project/SKILL.md +31 -0
  270. package/providers/context/skills/propose-indexer-customization/SKILL.md +40 -0
  271. package/providers/context/skills/revise-index-output/SKILL.md +12 -0
  272. package/providers/context/skills/run-indexer-agent-step/SKILL.md +20 -0
  273. package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +21 -0
@@ -0,0 +1,226 @@
1
+ [
2
+ {
3
+ "protocol": "context.indexer.chapter-fixture/v1",
4
+ "id": "anonymous-monorepo-container-chapter",
5
+ "anonymized": true,
6
+ "profile": "monorepo-container",
7
+ "canonical_facts": { "target": { "eligible": true, "bundle_compact_eligible": true } },
8
+ "artifact_policy_variant": "compact",
9
+ "artifact_kind": "content",
10
+ "reader_question_ref": "question:responsibility-and-entry",
11
+ "title": "Anonymous repository topology",
12
+ "sections": ["Scope and entry", "Project boundaries", "Build and delivery evidence"],
13
+ "evidence_condition": "Render only from a complete project inventory and current build evidence.",
14
+ "empty_behavior": "omit-chapter"
15
+ },
16
+ {
17
+ "protocol": "context.indexer.chapter-fixture/v1",
18
+ "id": "anonymous-web-application-chapter",
19
+ "anonymized": true,
20
+ "profile": "web-application",
21
+ "canonical_facts": { "target": { "eligible": true, "bundle_expanded_eligible": true } },
22
+ "artifact_policy_variant": "expanded",
23
+ "artifact_kind": "content",
24
+ "reader_question_ref": "question:dispatch-and-routing",
25
+ "title": "Anonymous application routes",
26
+ "sections": ["Application entry", "Route and page families", "Data and failure boundaries"],
27
+ "evidence_condition": "Render only from registered entries, routes, and source-backed handoffs.",
28
+ "empty_behavior": "omit-chapter"
29
+ },
30
+ {
31
+ "protocol": "context.indexer.chapter-fixture/v1",
32
+ "id": "anonymous-component-library-chapter",
33
+ "anonymized": true,
34
+ "profile": "component-library",
35
+ "canonical_facts": { "target": { "eligible": true, "bundle_expanded_eligible": true } },
36
+ "artifact_policy_variant": "expanded",
37
+ "artifact_kind": "content",
38
+ "reader_question_ref": "question:public-capability",
39
+ "title": "Anonymous component family",
40
+ "sections": ["Supported imports", "Composition and variants", "Source-backed usage"],
41
+ "evidence_condition": "Render only for a public component family with current contract evidence.",
42
+ "empty_behavior": "omit-chapter"
43
+ },
44
+ {
45
+ "protocol": "context.indexer.chapter-fixture/v1",
46
+ "id": "anonymous-sdk-library-chapter",
47
+ "anonymized": true,
48
+ "profile": "sdk-library",
49
+ "canonical_facts": { "target": { "eligible": true, "bundle_expanded_eligible": true } },
50
+ "artifact_policy_variant": "expanded",
51
+ "artifact_kind": "content",
52
+ "reader_question_ref": "question:examples-and-usage",
53
+ "title": "Anonymous capability family",
54
+ "sections": ["Consumer purpose", "Initialization and lifecycle", "Maintained examples"],
55
+ "evidence_condition": "Render only when the public entry and maintained usage are both evidenced.",
56
+ "empty_behavior": "omit-chapter"
57
+ },
58
+ {
59
+ "protocol": "context.indexer.chapter-fixture/v1",
60
+ "id": "anonymous-cli-tool-chapter",
61
+ "anonymized": true,
62
+ "profile": "cli-tool",
63
+ "canonical_facts": { "target": { "eligible": true } },
64
+ "artifact_policy_variant": "standard",
65
+ "artifact_kind": "content",
66
+ "reader_question_ref": "question:dispatch-and-routing",
67
+ "title": "Anonymous command family",
68
+ "sections": ["Command entry", "Arguments and dispatch", "Exit and recovery behavior"],
69
+ "evidence_condition": "Render only from registered commands and their current handlers.",
70
+ "empty_behavior": "omit-chapter"
71
+ },
72
+ {
73
+ "protocol": "context.indexer.chapter-fixture/v1",
74
+ "id": "anonymous-plugin-extension-chapter",
75
+ "anonymized": true,
76
+ "profile": "plugin-extension",
77
+ "canonical_facts": { "target": { "eligible": true } },
78
+ "artifact_policy_variant": "standard",
79
+ "artifact_kind": "content",
80
+ "reader_question_ref": "question:compatibility-and-extension",
81
+ "title": "Anonymous extension boundary",
82
+ "sections": ["Host contract", "Activation and lifecycle", "Compatibility limits"],
83
+ "evidence_condition": "Render only when host and extension identities are source-backed.",
84
+ "empty_behavior": "omit-chapter"
85
+ },
86
+ {
87
+ "protocol": "context.indexer.chapter-fixture/v1",
88
+ "id": "anonymous-api-service-chapter",
89
+ "anonymized": true,
90
+ "profile": "api-service",
91
+ "canonical_facts": { "target": { "eligible": true, "bundle_expanded_eligible": true } },
92
+ "artifact_policy_variant": "expanded",
93
+ "artifact_kind": "content",
94
+ "reader_question_ref": "question:public-capability",
95
+ "title": "Anonymous service boundary",
96
+ "sections": ["Protocol registration", "Operation families", "Handler and downstream handoff"],
97
+ "evidence_condition": "Render only from a complete operation inventory and authoritative registration.",
98
+ "empty_behavior": "omit-chapter"
99
+ },
100
+ {
101
+ "protocol": "context.indexer.chapter-fixture/v1",
102
+ "id": "anonymous-gateway-facade-chapter",
103
+ "anonymized": true,
104
+ "profile": "gateway-facade",
105
+ "canonical_facts": { "target": { "eligible": true } },
106
+ "artifact_policy_variant": "standard",
107
+ "artifact_kind": "content",
108
+ "reader_question_ref": "question:dependency-handoff",
109
+ "title": "Anonymous gateway handoff",
110
+ "sections": ["Inbound boundary", "Mapping and policy", "Downstream catalog"],
111
+ "evidence_condition": "Render only when both registration and downstream call evidence are current.",
112
+ "empty_behavior": "omit-chapter"
113
+ },
114
+ {
115
+ "protocol": "context.indexer.chapter-fixture/v1",
116
+ "id": "anonymous-domain-service-chapter",
117
+ "anonymized": true,
118
+ "profile": "domain-service",
119
+ "canonical_facts": { "target": { "eligible": true, "bundle_expanded_eligible": true } },
120
+ "artifact_policy_variant": "expanded",
121
+ "artifact_kind": "content",
122
+ "reader_question_ref": "question:state-and-consistency",
123
+ "title": "Anonymous stateful capability",
124
+ "sections": ["Capability entry", "State and transaction boundary", "Failure and consistency"],
125
+ "evidence_condition": "Render only from observed state operations and adjacent consistency evidence.",
126
+ "empty_behavior": "omit-chapter"
127
+ },
128
+ {
129
+ "protocol": "context.indexer.chapter-fixture/v1",
130
+ "id": "anonymous-background-runtime-chapter",
131
+ "anonymized": true,
132
+ "profile": "background-runtime",
133
+ "canonical_facts": { "target": { "eligible": true, "bundle_compact_eligible": true } },
134
+ "artifact_policy_variant": "compact",
135
+ "artifact_kind": "content",
136
+ "reader_question_ref": "question:dispatch-and-routing",
137
+ "title": "Anonymous scheduled runtime",
138
+ "sections": ["Trigger", "Dispatch branches", "Retry and completion"],
139
+ "evidence_condition": "Render only from a registered trigger and complete branch disposition.",
140
+ "empty_behavior": "omit-chapter"
141
+ },
142
+ {
143
+ "protocol": "context.indexer.chapter-fixture/v1",
144
+ "id": "anonymous-event-consumer-chapter",
145
+ "anonymized": true,
146
+ "profile": "event-consumer",
147
+ "canonical_facts": { "target": { "eligible": true } },
148
+ "artifact_policy_variant": "standard",
149
+ "artifact_kind": "content",
150
+ "reader_question_ref": "question:failure-recovery",
151
+ "title": "Anonymous event consumer",
152
+ "sections": ["Subscription and dispatch", "Processing outcome", "Retry and delivery"],
153
+ "evidence_condition": "Render only from source-backed subscription, handler, and failure evidence.",
154
+ "empty_behavior": "omit-chapter"
155
+ },
156
+ {
157
+ "protocol": "context.indexer.chapter-fixture/v1",
158
+ "id": "anonymous-data-sync-reconciliation-chapter",
159
+ "anonymized": true,
160
+ "profile": "data-sync-reconciliation",
161
+ "canonical_facts": { "target": { "eligible": true, "bundle_expanded_eligible": true } },
162
+ "artifact_policy_variant": "expanded",
163
+ "artifact_kind": "content",
164
+ "reader_question_ref": "question:state-and-consistency",
165
+ "title": "Anonymous reconciliation flow",
166
+ "sections": ["Source and trigger", "Transformation and sink", "Checkpoint and repair"],
167
+ "evidence_condition": "Render only when source, transformation, sink, and recovery boundaries are closed.",
168
+ "empty_behavior": "omit-chapter"
169
+ },
170
+ {
171
+ "protocol": "context.indexer.chapter-fixture/v1",
172
+ "id": "anonymous-storage-repository-chapter",
173
+ "anonymized": true,
174
+ "profile": "storage-repository",
175
+ "canonical_facts": { "target": { "eligible": true } },
176
+ "artifact_policy_variant": "standard",
177
+ "artifact_kind": "content",
178
+ "reader_question_ref": "question:public-capability",
179
+ "title": "Anonymous storage boundary",
180
+ "sections": ["Owned data surface", "Read and write capabilities", "Consistency and failure"],
181
+ "evidence_condition": "Render only from current schema, query, or client evidence within scope.",
182
+ "empty_behavior": "omit-chapter"
183
+ },
184
+ {
185
+ "protocol": "context.indexer.chapter-fixture/v1",
186
+ "id": "anonymous-adapter-integration-chapter",
187
+ "anonymized": true,
188
+ "profile": "adapter-integration",
189
+ "canonical_facts": { "target": { "eligible": true, "bundle_compact_eligible": true } },
190
+ "artifact_policy_variant": "compact",
191
+ "artifact_kind": "content",
192
+ "reader_question_ref": "question:dependency-handoff",
193
+ "title": "Anonymous adapter boundary",
194
+ "sections": ["Input contract", "Transformation", "Output and failure mapping"],
195
+ "evidence_condition": "Render only when both sides of the adaptation are explicitly evidenced.",
196
+ "empty_behavior": "omit-chapter"
197
+ },
198
+ {
199
+ "protocol": "context.indexer.chapter-fixture/v1",
200
+ "id": "anonymous-contract-source-chapter",
201
+ "anonymized": true,
202
+ "profile": "contract-source",
203
+ "canonical_facts": { "target": { "eligible": true } },
204
+ "artifact_policy_variant": "standard",
205
+ "artifact_kind": "content",
206
+ "reader_question_ref": "question:authority-and-generation",
207
+ "title": "Anonymous protocol authority",
208
+ "sections": ["Authoritative source", "Services and operations", "Generation and compatibility"],
209
+ "evidence_condition": "Render only from a fixed contract source and explicit generation boundary.",
210
+ "empty_behavior": "omit-chapter"
211
+ },
212
+ {
213
+ "protocol": "context.indexer.chapter-fixture/v1",
214
+ "id": "anonymous-derived-generated-source-chapter",
215
+ "anonymized": true,
216
+ "profile": "derived-generated-source",
217
+ "canonical_facts": { "target": { "eligible": true, "bundle_compact_eligible": true } },
218
+ "artifact_policy_variant": "compact",
219
+ "artifact_kind": "content",
220
+ "reader_question_ref": "question:authority-and-generation",
221
+ "title": "Anonymous generated surface",
222
+ "sections": ["Generated boundary", "Upstream authority", "Runtime consumers"],
223
+ "evidence_condition": "Render only when generator, upstream authority, and consumers are identifiable.",
224
+ "empty_behavior": "omit-chapter"
225
+ }
226
+ ]
@@ -0,0 +1,82 @@
1
+ [
2
+ {
3
+ "protocol": "context.indexer.composer-fixture/v1",
4
+ "id": "anonymous-public-contract",
5
+ "anonymized": true,
6
+ "composer": "public-contract",
7
+ "profile": "component-library",
8
+ "primary_input": { "fact_kinds": ["public-surface"], "artifact_kinds": ["content"] },
9
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "contract" },
10
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
11
+ },
12
+ {
13
+ "protocol": "context.indexer.composer-fixture/v1",
14
+ "id": "anonymous-protocol-boundary",
15
+ "anonymized": true,
16
+ "composer": "protocol-boundary",
17
+ "profile": "web-application",
18
+ "primary_input": { "fact_kinds": ["protocol-operation"], "artifact_kinds": ["contract"] },
19
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "contract" },
20
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
21
+ },
22
+ {
23
+ "protocol": "context.indexer.composer-fixture/v1",
24
+ "id": "anonymous-cross-module-chain",
25
+ "anonymized": true,
26
+ "composer": "cross-module-chain",
27
+ "profile": "monorepo-container",
28
+ "primary_input": { "fact_kinds": ["module-dependency"], "artifact_kinds": ["content"] },
29
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "content" },
30
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
31
+ },
32
+ {
33
+ "protocol": "context.indexer.composer-fixture/v1",
34
+ "id": "anonymous-contracts-and-chains",
35
+ "anonymized": true,
36
+ "composer": "contracts-and-chains",
37
+ "profile": "monorepo-container",
38
+ "primary_input": { "fact_kinds": ["contract-binding", "module-dependency"], "artifact_kinds": ["contract"] },
39
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "contract" },
40
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
41
+ },
42
+ {
43
+ "protocol": "context.indexer.composer-fixture/v1",
44
+ "id": "anonymous-event-flow",
45
+ "anonymized": true,
46
+ "composer": "event-flow",
47
+ "profile": "web-application",
48
+ "primary_input": { "fact_kinds": ["event-binding"], "artifact_kinds": ["content"] },
49
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "content" },
50
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
51
+ },
52
+ {
53
+ "protocol": "context.indexer.composer-fixture/v1",
54
+ "id": "anonymous-persistence-boundary",
55
+ "anonymized": true,
56
+ "composer": "persistence-boundary",
57
+ "profile": "api-service",
58
+ "primary_input": { "fact_kinds": ["persistence-binding"], "artifact_kinds": ["content"] },
59
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "content" },
60
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
61
+ },
62
+ {
63
+ "protocol": "context.indexer.composer-fixture/v1",
64
+ "id": "anonymous-examples-and-documentation",
65
+ "anonymized": true,
66
+ "composer": "examples-and-documentation",
67
+ "profile": "monorepo-container",
68
+ "primary_input": { "fact_kinds": ["example-candidate"], "artifact_kinds": ["content"] },
69
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "examples" },
70
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
71
+ },
72
+ {
73
+ "protocol": "context.indexer.composer-fixture/v1",
74
+ "id": "anonymous-development-and-delivery",
75
+ "anonymized": true,
76
+ "composer": "development-and-delivery",
77
+ "profile": "monorepo-container",
78
+ "primary_input": { "fact_kinds": ["development-entry"], "artifact_kinds": ["content"] },
79
+ "expected_proposal": { "artifact_policy_variant": "standard", "artifact_kind": "content" },
80
+ "empty_result": { "protocol": "context.indexer.layer-fragment-result/v1", "fragments": [] }
81
+ }
82
+ ]
@@ -0,0 +1,210 @@
1
+ [
2
+ {
3
+ "protocol": "context.indexer.authoring-fixture/v1",
4
+ "id": "anonymous-monorepo-container",
5
+ "anonymized": true,
6
+ "profile": "monorepo-container",
7
+ "source_role": "authoritative-source",
8
+ "logical_unit_id": "semantic-subject",
9
+ "logical_unit_ref": "node:anonymous-monorepo-container",
10
+ "canonical_facts": { "target": { "eligible": true } },
11
+ "artifact_policy_variant": "standard",
12
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-monorepo-container-source"] }],
13
+ "evidence_refs": ["evidence:anonymous-monorepo-container-source"]
14
+ },
15
+ {
16
+ "protocol": "context.indexer.authoring-fixture/v1",
17
+ "id": "anonymous-web-application",
18
+ "anonymized": true,
19
+ "profile": "web-application",
20
+ "source_role": "authoritative-source",
21
+ "logical_unit_id": "semantic-subject",
22
+ "logical_unit_ref": "node:anonymous-web-application",
23
+ "canonical_facts": { "target": { "eligible": true } },
24
+ "artifact_policy_variant": "standard",
25
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-web-application-source"] }],
26
+ "evidence_refs": ["evidence:anonymous-web-application-source"]
27
+ },
28
+ {
29
+ "protocol": "context.indexer.authoring-fixture/v1",
30
+ "id": "anonymous-component-library",
31
+ "anonymized": true,
32
+ "profile": "component-library",
33
+ "source_role": "authoritative-source",
34
+ "logical_unit_id": "semantic-subject",
35
+ "logical_unit_ref": "node:anonymous-component-library",
36
+ "canonical_facts": { "target": { "eligible": true } },
37
+ "artifact_policy_variant": "standard",
38
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-component-library-source"] }],
39
+ "evidence_refs": ["evidence:anonymous-component-library-source"]
40
+ },
41
+ {
42
+ "protocol": "context.indexer.authoring-fixture/v1",
43
+ "id": "anonymous-sdk-library",
44
+ "anonymized": true,
45
+ "profile": "sdk-library",
46
+ "source_role": "authoritative-source",
47
+ "logical_unit_id": "semantic-subject",
48
+ "logical_unit_ref": "node:anonymous-sdk-library",
49
+ "canonical_facts": { "target": { "eligible": true } },
50
+ "artifact_policy_variant": "standard",
51
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-sdk-library-source"] }],
52
+ "evidence_refs": ["evidence:anonymous-sdk-library-source"]
53
+ },
54
+ {
55
+ "protocol": "context.indexer.authoring-fixture/v1",
56
+ "id": "anonymous-cli-tool",
57
+ "anonymized": true,
58
+ "profile": "cli-tool",
59
+ "source_role": "authoritative-source",
60
+ "logical_unit_id": "semantic-subject",
61
+ "logical_unit_ref": "node:anonymous-cli-tool",
62
+ "canonical_facts": { "target": { "eligible": true } },
63
+ "artifact_policy_variant": "standard",
64
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-cli-tool-source"] }],
65
+ "evidence_refs": ["evidence:anonymous-cli-tool-source"]
66
+ },
67
+ {
68
+ "protocol": "context.indexer.authoring-fixture/v1",
69
+ "id": "anonymous-plugin-extension",
70
+ "anonymized": true,
71
+ "profile": "plugin-extension",
72
+ "source_role": "authoritative-source",
73
+ "logical_unit_id": "semantic-subject",
74
+ "logical_unit_ref": "node:anonymous-plugin-extension",
75
+ "canonical_facts": { "target": { "eligible": true } },
76
+ "artifact_policy_variant": "standard",
77
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-plugin-extension-source"] }],
78
+ "evidence_refs": ["evidence:anonymous-plugin-extension-source"]
79
+ },
80
+ {
81
+ "protocol": "context.indexer.authoring-fixture/v1",
82
+ "id": "anonymous-api-service",
83
+ "anonymized": true,
84
+ "profile": "api-service",
85
+ "source_role": "authoritative-source",
86
+ "logical_unit_id": "semantic-subject",
87
+ "logical_unit_ref": "node:anonymous-api-service",
88
+ "canonical_facts": { "target": { "eligible": true } },
89
+ "artifact_policy_variant": "standard",
90
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-api-service-source"] }],
91
+ "evidence_refs": ["evidence:anonymous-api-service-source"]
92
+ },
93
+ {
94
+ "protocol": "context.indexer.authoring-fixture/v1",
95
+ "id": "anonymous-gateway-facade",
96
+ "anonymized": true,
97
+ "profile": "gateway-facade",
98
+ "source_role": "authoritative-source",
99
+ "logical_unit_id": "semantic-subject",
100
+ "logical_unit_ref": "node:anonymous-gateway-facade",
101
+ "canonical_facts": { "target": { "eligible": true } },
102
+ "artifact_policy_variant": "standard",
103
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-gateway-facade-source"] }],
104
+ "evidence_refs": ["evidence:anonymous-gateway-facade-source"]
105
+ },
106
+ {
107
+ "protocol": "context.indexer.authoring-fixture/v1",
108
+ "id": "anonymous-domain-service",
109
+ "anonymized": true,
110
+ "profile": "domain-service",
111
+ "source_role": "authoritative-source",
112
+ "logical_unit_id": "semantic-subject",
113
+ "logical_unit_ref": "node:anonymous-domain-service",
114
+ "canonical_facts": { "target": { "eligible": true } },
115
+ "artifact_policy_variant": "standard",
116
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-domain-service-source"] }],
117
+ "evidence_refs": ["evidence:anonymous-domain-service-source"]
118
+ },
119
+ {
120
+ "protocol": "context.indexer.authoring-fixture/v1",
121
+ "id": "anonymous-background-runtime",
122
+ "anonymized": true,
123
+ "profile": "background-runtime",
124
+ "source_role": "authoritative-source",
125
+ "logical_unit_id": "semantic-subject",
126
+ "logical_unit_ref": "node:anonymous-background-runtime",
127
+ "canonical_facts": { "target": { "eligible": true } },
128
+ "artifact_policy_variant": "standard",
129
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-background-runtime-source"] }],
130
+ "evidence_refs": ["evidence:anonymous-background-runtime-source"]
131
+ },
132
+ {
133
+ "protocol": "context.indexer.authoring-fixture/v1",
134
+ "id": "anonymous-event-consumer",
135
+ "anonymized": true,
136
+ "profile": "event-consumer",
137
+ "source_role": "authoritative-source",
138
+ "logical_unit_id": "semantic-subject",
139
+ "logical_unit_ref": "node:anonymous-event-consumer",
140
+ "canonical_facts": { "target": { "eligible": true } },
141
+ "artifact_policy_variant": "standard",
142
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-event-consumer-source"] }],
143
+ "evidence_refs": ["evidence:anonymous-event-consumer-source"]
144
+ },
145
+ {
146
+ "protocol": "context.indexer.authoring-fixture/v1",
147
+ "id": "anonymous-data-sync-reconciliation",
148
+ "anonymized": true,
149
+ "profile": "data-sync-reconciliation",
150
+ "source_role": "authoritative-source",
151
+ "logical_unit_id": "semantic-subject",
152
+ "logical_unit_ref": "node:anonymous-data-sync-reconciliation",
153
+ "canonical_facts": { "target": { "eligible": true } },
154
+ "artifact_policy_variant": "standard",
155
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-data-sync-reconciliation-source"] }],
156
+ "evidence_refs": ["evidence:anonymous-data-sync-reconciliation-source"]
157
+ },
158
+ {
159
+ "protocol": "context.indexer.authoring-fixture/v1",
160
+ "id": "anonymous-storage-repository",
161
+ "anonymized": true,
162
+ "profile": "storage-repository",
163
+ "source_role": "authoritative-source",
164
+ "logical_unit_id": "semantic-subject",
165
+ "logical_unit_ref": "node:anonymous-storage-repository",
166
+ "canonical_facts": { "target": { "eligible": true } },
167
+ "artifact_policy_variant": "standard",
168
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-storage-repository-source"] }],
169
+ "evidence_refs": ["evidence:anonymous-storage-repository-source"]
170
+ },
171
+ {
172
+ "protocol": "context.indexer.authoring-fixture/v1",
173
+ "id": "anonymous-adapter-integration",
174
+ "anonymized": true,
175
+ "profile": "adapter-integration",
176
+ "source_role": "authoritative-source",
177
+ "logical_unit_id": "semantic-subject",
178
+ "logical_unit_ref": "node:anonymous-adapter-integration",
179
+ "canonical_facts": { "target": { "eligible": true } },
180
+ "artifact_policy_variant": "standard",
181
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-adapter-integration-source"] }],
182
+ "evidence_refs": ["evidence:anonymous-adapter-integration-source"]
183
+ },
184
+ {
185
+ "protocol": "context.indexer.authoring-fixture/v1",
186
+ "id": "anonymous-contract-source",
187
+ "anonymized": true,
188
+ "profile": "contract-source",
189
+ "source_role": "authoritative-source",
190
+ "logical_unit_id": "semantic-subject",
191
+ "logical_unit_ref": "node:anonymous-contract-source",
192
+ "canonical_facts": { "target": { "eligible": true } },
193
+ "artifact_policy_variant": "standard",
194
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-contract-source-source"] }],
195
+ "evidence_refs": ["evidence:anonymous-contract-source-source"]
196
+ },
197
+ {
198
+ "protocol": "context.indexer.authoring-fixture/v1",
199
+ "id": "anonymous-derived-generated-source",
200
+ "anonymized": true,
201
+ "profile": "derived-generated-source",
202
+ "source_role": "authoritative-source",
203
+ "logical_unit_id": "semantic-subject",
204
+ "logical_unit_ref": "node:anonymous-derived-generated-source",
205
+ "canonical_facts": { "target": { "eligible": true } },
206
+ "artifact_policy_variant": "standard",
207
+ "artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:failure-recovery"], "evidence_refs": ["evidence:anonymous-derived-generated-source-source"] }],
208
+ "evidence_refs": ["evidence:anonymous-derived-generated-source-source"]
209
+ }
210
+ ]
@@ -0,0 +1,122 @@
1
+ {
2
+ "protocol": "context.indexer.community-scenario-fixture-set/v1",
3
+ "anonymized": true,
4
+ "positive_cases": [
5
+ {
6
+ "scenario_id": "rpc-query-catalog",
7
+ "authoring_fixture_ref": "anonymous-api-service",
8
+ "member_kind": "protocol-method",
9
+ "expected_inventory_disposition": "owned",
10
+ "expected_projection_disposition": "catalog-only",
11
+ "expected_artifact_behavior": "no-standalone-artifact",
12
+ "expected_bundle_artifact_ids": ["content"]
13
+ },
14
+ {
15
+ "scenario_id": "http-handler-flow",
16
+ "authoring_fixture_ref": "anonymous-api-service",
17
+ "member_kind": "handler",
18
+ "expected_inventory_disposition": "owned",
19
+ "expected_projection_disposition": "detailed",
20
+ "expected_artifact_behavior": "evidence-backed-content",
21
+ "expected_bundle_artifact_ids": ["content"]
22
+ },
23
+ {
24
+ "scenario_id": "gateway-handoff",
25
+ "authoring_fixture_ref": "anonymous-gateway-facade",
26
+ "member_kind": "downstream-callsite",
27
+ "expected_inventory_disposition": "owned",
28
+ "expected_projection_disposition": "detailed",
29
+ "expected_artifact_behavior": "evidence-backed-content",
30
+ "expected_bundle_artifact_ids": ["content"]
31
+ },
32
+ {
33
+ "scenario_id": "event-flow",
34
+ "authoring_fixture_ref": "anonymous-event-consumer",
35
+ "member_kind": "event-branch",
36
+ "expected_inventory_disposition": "owned",
37
+ "expected_projection_disposition": "detailed",
38
+ "expected_artifact_behavior": "evidence-backed-content",
39
+ "expected_bundle_artifact_ids": ["content"]
40
+ },
41
+ {
42
+ "scenario_id": "function-runtime",
43
+ "authoring_fixture_ref": "anonymous-background-runtime",
44
+ "member_kind": "event-branch",
45
+ "expected_inventory_disposition": "owned",
46
+ "expected_projection_disposition": "detailed",
47
+ "expected_artifact_behavior": "evidence-backed-content",
48
+ "expected_bundle_artifact_ids": ["content"]
49
+ },
50
+ {
51
+ "scenario_id": "scheduled-worker",
52
+ "authoring_fixture_ref": "anonymous-background-runtime",
53
+ "member_kind": "timer-branch",
54
+ "expected_inventory_disposition": "owned",
55
+ "expected_projection_disposition": "detailed",
56
+ "expected_artifact_behavior": "evidence-backed-content",
57
+ "expected_bundle_artifact_ids": ["content"]
58
+ },
59
+ {
60
+ "scenario_id": "reconciliation-flow",
61
+ "authoring_fixture_ref": "anonymous-data-sync-reconciliation",
62
+ "member_kind": "state-transition",
63
+ "expected_inventory_disposition": "owned",
64
+ "expected_projection_disposition": "detailed",
65
+ "expected_artifact_behavior": "evidence-backed-content",
66
+ "expected_bundle_artifact_ids": ["content"]
67
+ },
68
+ {
69
+ "scenario_id": "stateful-service",
70
+ "authoring_fixture_ref": "anonymous-domain-service",
71
+ "member_kind": "state-transition",
72
+ "expected_inventory_disposition": "owned",
73
+ "expected_projection_disposition": "detailed",
74
+ "expected_artifact_behavior": "evidence-backed-content",
75
+ "expected_bundle_artifact_ids": ["content"]
76
+ },
77
+ {
78
+ "scenario_id": "repository-boundary",
79
+ "authoring_fixture_ref": "anonymous-storage-repository",
80
+ "member_kind": "store",
81
+ "expected_inventory_disposition": "owned",
82
+ "expected_projection_disposition": "boundary-only",
83
+ "expected_artifact_behavior": "evidence-backed-content",
84
+ "expected_bundle_artifact_ids": ["content"]
85
+ },
86
+ {
87
+ "scenario_id": "library-capability",
88
+ "authoring_fixture_ref": "anonymous-sdk-library",
89
+ "member_kind": "method",
90
+ "expected_inventory_disposition": "owned",
91
+ "expected_projection_disposition": "capability-group",
92
+ "expected_artifact_behavior": "capability-family-artifact",
93
+ "expected_bundle_artifact_ids": ["content"]
94
+ }
95
+ ],
96
+ "negative_cases": [
97
+ {
98
+ "scenario_id": "complete-page-stale-source",
99
+ "authoring_fixture_ref": "anonymous-api-service",
100
+ "observed_condition": "source-revision-or-locator-drift",
101
+ "expected_outcome": "reject-stale-evidence"
102
+ },
103
+ {
104
+ "scenario_id": "one-method-one-page-inflation",
105
+ "authoring_fixture_ref": "anonymous-api-service",
106
+ "observed_condition": "method-count-equals-artifact-count",
107
+ "expected_outcome": "reject-artifact-inflation"
108
+ },
109
+ {
110
+ "scenario_id": "unresolved-authoring-placeholder",
111
+ "authoring_fixture_ref": "anonymous-background-runtime",
112
+ "observed_condition": "generated-placeholder-remains",
113
+ "expected_outcome": "block-generated-placeholder"
114
+ },
115
+ {
116
+ "scenario_id": "missing-runtime-platform-fact",
117
+ "authoring_fixture_ref": "anonymous-gateway-facade",
118
+ "observed_condition": "required-runtime-fact-absent",
119
+ "expected_outcome": "request-material"
120
+ }
121
+ ]
122
+ }