@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.
- package/README.md +67 -6
- package/README.zh-CN.md +42 -5
- package/cli.js +75051 -42154
- package/indexers/bundles/context-code-indexer/SKILL.md +20 -0
- package/indexers/bundles/context-code-indexer/context-indexer.yaml +230 -0
- package/indexers/bundles/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
- package/indexers/bundles/context-code-indexer/references/composers/cross-module-chain.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/development-and-delivery.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/event-flow.md +21 -0
- package/indexers/bundles/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/persistence-boundary.md +21 -0
- package/indexers/bundles/context-code-indexer/references/composers/protocol-boundary.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/public-contract.md +23 -0
- package/indexers/bundles/context-code-indexer/references/indexer.md +49 -0
- package/indexers/bundles/context-code-indexer/references/metrics.md +201 -0
- package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +119 -0
- package/indexers/bundles/context-code-indexer/templates/api-service.md +118 -0
- package/indexers/bundles/context-code-indexer/templates/background-runtime.md +109 -0
- package/indexers/bundles/context-code-indexer/templates/cli-tool.md +129 -0
- package/indexers/bundles/context-code-indexer/templates/component-library.md +99 -0
- package/indexers/bundles/context-code-indexer/templates/contract-source.md +73 -0
- package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
- package/indexers/bundles/context-code-indexer/templates/derived-generated-source.md +117 -0
- package/indexers/bundles/context-code-indexer/templates/domain-service.md +109 -0
- package/indexers/bundles/context-code-indexer/templates/event-consumer.md +62 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +89 -0
- package/indexers/bundles/context-code-indexer/templates/monorepo-container.md +124 -0
- package/indexers/bundles/context-code-indexer/templates/plugin-extension.md +52 -0
- package/indexers/bundles/context-code-indexer/templates/sdk-library.md +132 -0
- package/indexers/bundles/context-code-indexer/templates/storage-repository.md +56 -0
- package/indexers/bundles/context-code-indexer/templates/web-application.md +146 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/chapters.json +226 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/composers.json +82 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/profiles.json +210 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/scenarios.json +122 -0
- package/indexers/bundles/context-markdown-indexer/SKILL.md +20 -0
- package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +147 -0
- package/indexers/bundles/context-markdown-indexer/references/classification.md +63 -0
- package/indexers/bundles/context-markdown-indexer/references/editorial-policy.md +106 -0
- package/indexers/bundles/context-markdown-indexer/references/indexer.md +23 -0
- package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +146 -0
- package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +151 -0
- package/indexers/capability-manifest.json +40 -0
- package/indexers/contracts/hard-rule-conformance.json +2644 -0
- package/indexers/contracts/operator-contract.json +35 -0
- package/indexers/contracts/profile-contract.json +10162 -0
- package/indexers/release-manifest.json +208 -0
- package/package.json +5 -4
- package/plugins/README.md +17 -109
- package/plugins/README_CN.md +11 -89
- package/plugins/VERSION +1 -1
- package/plugins/claude/.claude-plugin/plugin.json +3 -11
- package/plugins/claude/CLAUDE.md +1 -1
- package/plugins/claude/README.md +1 -1
- package/plugins/claude/commands/context.md +76 -1
- package/plugins/codex/.codex-plugin/plugin.json +6 -17
- package/plugins/codex/AGENTS.md +1 -1
- package/plugins/codex/README.md +1 -1
- package/plugins/codex/skills/context/SKILL.md +77 -13
- package/plugins/cursor/.cursor-plugin/plugin.json +4 -17
- package/plugins/cursor/AGENTS.md +1 -1
- package/plugins/cursor/README.md +3 -2
- package/plugins/cursor/commands/c4a-context.md +76 -3
- package/plugins/skills/{c4a-context → context}/SKILL.md +78 -14
- package/plugins/skills/context-code-indexer/SKILL.md +20 -0
- package/plugins/skills/context-code-indexer/context-indexer.yaml +230 -0
- package/plugins/skills/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
- package/plugins/skills/context-code-indexer/references/composers/cross-module-chain.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/development-and-delivery.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/event-flow.md +21 -0
- package/plugins/skills/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/persistence-boundary.md +21 -0
- package/plugins/skills/context-code-indexer/references/composers/protocol-boundary.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/public-contract.md +23 -0
- package/plugins/skills/context-code-indexer/references/indexer.md +49 -0
- package/plugins/skills/context-code-indexer/references/metrics.md +201 -0
- package/plugins/skills/context-code-indexer/templates/adapter-integration.md +119 -0
- package/plugins/skills/context-code-indexer/templates/api-service.md +118 -0
- package/plugins/skills/context-code-indexer/templates/background-runtime.md +109 -0
- package/plugins/skills/context-code-indexer/templates/cli-tool.md +129 -0
- package/plugins/skills/context-code-indexer/templates/component-library.md +99 -0
- package/plugins/skills/context-code-indexer/templates/contract-source.md +73 -0
- package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
- package/plugins/skills/context-code-indexer/templates/derived-generated-source.md +117 -0
- package/plugins/skills/context-code-indexer/templates/domain-service.md +109 -0
- package/plugins/skills/context-code-indexer/templates/event-consumer.md +62 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade.md +89 -0
- package/plugins/skills/context-code-indexer/templates/monorepo-container.md +124 -0
- package/plugins/skills/context-code-indexer/templates/plugin-extension.md +52 -0
- package/plugins/skills/context-code-indexer/templates/sdk-library.md +132 -0
- package/plugins/skills/context-code-indexer/templates/storage-repository.md +56 -0
- package/plugins/skills/context-code-indexer/templates/web-application.md +146 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/chapters.json +226 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/composers.json +82 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/profiles.json +210 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/scenarios.json +122 -0
- package/plugins/skills/context-markdown-indexer/SKILL.md +20 -0
- package/plugins/skills/context-markdown-indexer/context-indexer.yaml +147 -0
- package/plugins/skills/context-markdown-indexer/references/classification.md +63 -0
- package/plugins/skills/context-markdown-indexer/references/editorial-policy.md +106 -0
- package/plugins/skills/context-markdown-indexer/references/indexer.md +23 -0
- package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +146 -0
- package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +151 -0
- package/providers/context/actions/accept-main-index-run.yaml +7 -0
- package/providers/context/actions/accept-material-answer-run.yaml +7 -0
- package/providers/context/actions/accept-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/actualize-material-answer-bindings.yaml +8 -0
- package/providers/context/actions/apply-document-optimization-guidance.yaml +5 -0
- package/providers/context/actions/apply-indexer-project.yaml +7 -0
- package/providers/context/actions/audit-material-gap-state.yaml +8 -0
- package/providers/context/actions/audit-projected-artifact-fan-out.yaml +8 -0
- package/providers/context/actions/authorize-indexer-contract-overlay.yaml +7 -0
- package/providers/context/actions/authorize-indexer-dependencies.yaml +7 -0
- package/providers/context/actions/authorize-indexer-program-execution.yaml +7 -0
- package/providers/context/actions/build-main-index-author-worksets.yaml +7 -0
- package/providers/context/actions/build-main-index-catalog-fallback.yaml +7 -0
- package/providers/context/actions/build-main-index-partition-worksets.yaml +7 -0
- package/providers/context/actions/build-material-question-workset.yaml +7 -0
- package/providers/context/actions/build-post-author-composer-worksets.yaml +7 -0
- package/providers/context/actions/build-question-target-inventory.yaml +7 -0
- package/providers/context/actions/build-subject-catalog.yaml +7 -0
- package/providers/context/actions/build-target-resolution-views.yaml +7 -0
- package/providers/context/actions/checkpoint-material-answer-review.yaml +8 -0
- package/providers/context/actions/checkpoint-material-gaps.yaml +8 -0
- package/providers/context/actions/close-indexer-approved-knowledge.yaml +8 -0
- package/providers/context/actions/compile-indexer-candidates.yaml +8 -0
- package/providers/context/actions/compose-indexer-post-author-fragments.yaml +7 -0
- package/providers/context/actions/configure-community-indexer-fallback.yaml +6 -0
- package/providers/context/actions/configure-indexer-providers.yaml +6 -0
- package/providers/context/actions/confirm-index-requirement-workset.yaml +8 -0
- package/providers/context/actions/confirm-subject-reidentification.yaml +8 -0
- package/providers/context/actions/converge-main-index-partition-run.yaml +7 -0
- package/providers/context/actions/discover-markdown-indexer-providers.yaml +6 -0
- package/providers/context/actions/evaluate-material-gaps.yaml +8 -0
- package/providers/context/actions/fail-main-index-run.yaml +7 -0
- package/providers/context/actions/fail-material-answer-run.yaml +7 -0
- package/providers/context/actions/fail-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +8 -0
- package/providers/context/actions/inspect-index-profile-failure.yaml +7 -0
- package/providers/context/actions/inspect-indexer-dependencies.yaml +7 -0
- package/providers/context/actions/inspect-indexer-program-execution.yaml +7 -0
- package/providers/context/actions/inspect-indexer-project-proposal.yaml +7 -0
- package/providers/context/actions/inspect-markdown-provider-capture.yaml +7 -0
- package/providers/context/actions/inspect-material-answer-review.yaml +8 -0
- package/providers/context/actions/materialize-indexer-instructions.yaml +7 -0
- package/providers/context/actions/observe-indexer-project.yaml +7 -0
- package/providers/context/actions/observe-main-index-run-ledger.yaml +7 -0
- package/providers/context/actions/observe-material-answer-runs.yaml +7 -0
- package/providers/context/actions/observe-post-author-composer-worksets.yaml +7 -0
- package/providers/context/actions/override-index-profile-audit.yaml +7 -0
- package/providers/context/actions/prepare-indexer-customization-project.yaml +7 -0
- package/providers/context/actions/prepare-main-index-run-ledger.yaml +7 -0
- package/providers/context/actions/prepare-material-answer-runs.yaml +7 -0
- package/providers/context/actions/propose-indexer-customization.yaml +7 -0
- package/providers/context/actions/propose-overlay-question-amendment.yaml +7 -0
- package/providers/context/actions/rebind-indexer-selection-to-requirement.yaml +7 -0
- package/providers/context/actions/reconcile-indexer-results.yaml +7 -0
- package/providers/context/actions/record-index-profile-revision.yaml +7 -0
- package/providers/context/actions/report-index-profile-failure.yaml +7 -0
- package/providers/context/actions/report-indexer-incremental-impact.yaml +8 -0
- package/providers/context/actions/resolve-effective-composers.yaml +7 -0
- package/providers/context/actions/review-material-answer-candidate.yaml +8 -0
- package/providers/context/actions/revise-index-output.yaml +7 -0
- package/providers/context/actions/route-index-requirement-confirmation.yaml +8 -0
- package/providers/context/actions/route-indexer-provider-selection.yaml +7 -0
- package/providers/context/actions/run-indexer-agent-step.yaml +7 -0
- package/providers/context/actions/run-indexer-post-author-composer.yaml +7 -0
- package/providers/context/actions/run-material-answer-indexers.yaml +7 -0
- package/providers/context/actions/start-main-index-run.yaml +7 -0
- package/providers/context/actions/start-material-answer-run.yaml +7 -0
- package/providers/context/actions/start-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/validate-indexer-contract-overlays.yaml +7 -0
- package/providers/context/actions/validate-indexer-customization.yaml +7 -0
- package/providers/context/actions/validate-indexer-selection-proposal.yaml +7 -0
- package/providers/context/actions/validate-main-index-run.yaml +7 -0
- package/providers/context/actions/validate-markdown-provider-selection.yaml +7 -0
- package/providers/context/actions/validate-subject-key-schemas.yaml +8 -0
- package/providers/context/codes.yaml +70 -0
- package/providers/context/graphs/indexer.yaml +1068 -0
- package/providers/context/graphs/workspace.yaml +20 -1
- package/providers/context/manifest.json +1433 -121
- package/providers/context/provider.yaml +3 -2
- package/providers/context/resources/manuals/reference/code-extractors.md +2 -2
- package/providers/context/resources/manuals/reference/project-api.md +2 -2
- package/providers/context/resources/procedures/code-extraction.md +6 -2
- package/providers/context/resources/procedures/code-index-audit.md +36 -6
- package/providers/context/resources/procedures/document-optimization.md +23 -4
- package/providers/context/resources/semantic/code-index/templates/adapter.md +9 -0
- package/providers/context/resources/semantic/code-index/templates/contracts-and-chains.md +81 -0
- package/providers/context/resources/views/resolved-indexer-instructions.yaml +23 -0
- package/providers/context/schemas/document-optimization-decisions.schema.json +1 -1
- package/providers/context/schemas/indexer-agent-step-input.schema.json +30 -0
- package/providers/context/schemas/indexer-agent-step-result.schema.json +47 -0
- package/providers/context/schemas/indexer-candidate-compile-input.schema.json +57 -0
- package/providers/context/schemas/indexer-candidate-compile-output.schema.json +38 -0
- package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +46 -0
- package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +104 -0
- package/providers/context/schemas/indexer-contract-overlay-authorization-input.schema.json +32 -0
- package/providers/context/schemas/indexer-contract-overlay-authorization-result.schema.json +121 -0
- package/providers/context/schemas/indexer-contract-overlay-validation-input.schema.json +90 -0
- package/providers/context/schemas/indexer-contract-overlay-validation-result.schema.json +158 -0
- package/providers/context/schemas/indexer-customization-project-preparation-result.schema.json +44 -0
- package/providers/context/schemas/indexer-customization-proposal-draft.schema.json +83 -0
- package/providers/context/schemas/indexer-customization-validation-result.schema.json +36 -0
- package/providers/context/schemas/indexer-dependency-authorization-input.schema.json +71 -0
- package/providers/context/schemas/indexer-dependency-authorization-result.schema.json +138 -0
- package/providers/context/schemas/indexer-incremental-impact-input.schema.json +31 -0
- package/providers/context/schemas/indexer-incremental-impact-output.schema.json +52 -0
- package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +187 -0
- package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +180 -0
- package/providers/context/schemas/indexer-markdown-provider-capture-input.schema.json +17 -0
- package/providers/context/schemas/indexer-markdown-provider-capture-output.schema.json +54 -0
- package/providers/context/schemas/indexer-markdown-provider-validation-input.schema.json +34 -0
- package/providers/context/schemas/indexer-markdown-provider-validation-output.schema.json +75 -0
- package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +90 -0
- package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +80 -0
- package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +32 -0
- package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +32 -0
- package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +19 -0
- package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +87 -0
- package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +86 -0
- package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +19 -0
- package/providers/context/schemas/indexer-materialize-request.schema.json +53 -0
- package/providers/context/schemas/indexer-materialized-resource.schema.json +57 -0
- package/providers/context/schemas/indexer-overlay-question-amendment.schema.json +13 -0
- package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +40 -0
- package/providers/context/schemas/indexer-overlay-question-rebind-input.schema.json +35 -0
- package/providers/context/schemas/indexer-overlay-question-rebind-result.schema.json +25 -0
- package/providers/context/schemas/indexer-post-author-fragment-request.schema.json +26 -0
- package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +18 -0
- package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +94 -0
- package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +72 -0
- package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +13 -0
- package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +19 -0
- package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +22 -0
- package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +49 -0
- package/providers/context/schemas/indexer-profile-override-decision.schema.json +20 -0
- package/providers/context/schemas/indexer-profile-override-result.schema.json +49 -0
- package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +18 -0
- package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +31 -0
- package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +45 -0
- package/providers/context/schemas/indexer-program-execution-authorization-input.schema.json +145 -0
- package/providers/context/schemas/indexer-program-execution-authorization-result.schema.json +60 -0
- package/providers/context/schemas/indexer-project-action-result.schema.json +19 -0
- package/providers/context/schemas/indexer-project-gate-input.schema.json +100 -0
- package/providers/context/schemas/indexer-project-observation-input.schema.json +16 -0
- package/providers/context/schemas/indexer-project-observation-result.schema.json +42 -0
- package/providers/context/schemas/indexer-provider-route-input.schema.json +55 -0
- package/providers/context/schemas/indexer-provider-route-report.schema.json +188 -0
- package/providers/context/schemas/indexer-requirement-confirmation-input.schema.json +27 -0
- package/providers/context/schemas/indexer-requirement-confirmation-output.schema.json +24 -0
- package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +59 -0
- package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +43 -0
- package/providers/context/schemas/indexer-selection-proposal-input.schema.json +12 -0
- package/providers/context/schemas/indexer-selection-proposal-validation.schema.json +23 -0
- package/providers/context/schemas/indexer-subject-reidentification-input.schema.json +37 -0
- package/providers/context/schemas/indexer-subject-reidentification-output.schema.json +31 -0
- package/providers/context/skills/configure-indexer-providers/SKILL.md +58 -0
- package/providers/context/skills/prepare-indexer-customization-project/SKILL.md +31 -0
- package/providers/context/skills/propose-indexer-customization/SKILL.md +40 -0
- package/providers/context/skills/revise-index-output/SKILL.md +12 -0
- package/providers/context/skills/run-indexer-agent-step/SKILL.md +20 -0
- package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +21 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.component-library
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Component library template
|
|
8
|
+
|
|
9
|
+
Use for `component-library`: a supported collection of UI components, tokens,
|
|
10
|
+
hooks, primitives, or design-system packages consumed through documented
|
|
11
|
+
imports and component contracts. A web application that happens to contain
|
|
12
|
+
shared components remains a `web-application` unless the component surface is
|
|
13
|
+
published as an independent consumer boundary.
|
|
14
|
+
|
|
15
|
+
Use the exact profile and Artifact policy variant supplied by the workset.
|
|
16
|
+
|
|
17
|
+
## Evidence pass
|
|
18
|
+
|
|
19
|
+
Locate:
|
|
20
|
+
|
|
21
|
+
- public package exports, component registries, barrels, or documented imports;
|
|
22
|
+
- component props, slots, events, variants, composition, and lifecycle rules;
|
|
23
|
+
- theme, token, styling, accessibility, locale, and provider requirements;
|
|
24
|
+
- maintained examples, stories, visual tests, and consumer integration tests;
|
|
25
|
+
- compatibility, peer dependency, platform, and release constraints;
|
|
26
|
+
- generated declarations, documentation sites, demos, and internal primitives
|
|
27
|
+
that must not become independent reader pages without a public contract.
|
|
28
|
+
|
|
29
|
+
Treat stories and examples as usage evidence, not as authority for unsupported
|
|
30
|
+
props or behavior. When generated declarations disagree with source, identify
|
|
31
|
+
the authoritative source and record the gap.
|
|
32
|
+
|
|
33
|
+
## Questions the knowledge must answer
|
|
34
|
+
|
|
35
|
+
1. Which component families are public, and how are they imported?
|
|
36
|
+
2. What props, events, variants, slots, and composition rules are supported?
|
|
37
|
+
3. Which providers, themes, tokens, runtimes, or peer packages are required?
|
|
38
|
+
4. What accessibility, state, lifecycle, and failure constraints apply?
|
|
39
|
+
5. Which examples demonstrate supported use and important combinations?
|
|
40
|
+
6. Which implementation primitives or demo-only components are excluded?
|
|
41
|
+
|
|
42
|
+
## Suggested knowledge units
|
|
43
|
+
|
|
44
|
+
- **Library map**: purpose, supported entrypoints, providers, component
|
|
45
|
+
families, compatibility, and navigation.
|
|
46
|
+
- **Component-family guide**: shared concepts, composition, variants,
|
|
47
|
+
accessibility, and representative source-backed examples.
|
|
48
|
+
- **Granular component reference**: only when consumers search for the exact
|
|
49
|
+
public component and its contract contains meaningful behavior.
|
|
50
|
+
- **Tokens and theming**: only the stable consumer contract, including scope,
|
|
51
|
+
defaults, override order, and compatibility.
|
|
52
|
+
- **Migration or compatibility guide**: only when maintained sources describe
|
|
53
|
+
version transitions or supported platform constraints.
|
|
54
|
+
|
|
55
|
+
## Chapter blueprints
|
|
56
|
+
|
|
57
|
+
```markdown
|
|
58
|
+
# <Component library> map
|
|
59
|
+
## Purpose and intended consumers
|
|
60
|
+
## Supported imports and providers
|
|
61
|
+
## Component and token families
|
|
62
|
+
## Composition and state model
|
|
63
|
+
## Accessibility and localization
|
|
64
|
+
## Theming and customization
|
|
65
|
+
## Compatibility and release constraints
|
|
66
|
+
## Examples, evidence, and exclusions
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
For a component family:
|
|
70
|
+
|
|
71
|
+
```markdown
|
|
72
|
+
# <Component family>
|
|
73
|
+
## When to use it
|
|
74
|
+
## Supported components and imports
|
|
75
|
+
## Props, events, slots, and variants
|
|
76
|
+
## Composition and state
|
|
77
|
+
## Accessibility and interaction
|
|
78
|
+
## Source-backed examples
|
|
79
|
+
## Related families and evidence
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Granularity and relationships
|
|
83
|
+
|
|
84
|
+
Prefer component families over one page per export. Use a granular page only
|
|
85
|
+
when the exact public identity has a stable consumer contract beyond a type
|
|
86
|
+
signature. Relate components to providers, tokens, accessibility behavior,
|
|
87
|
+
examples, and compatible peers only when source evidence supports the link.
|
|
88
|
+
|
|
89
|
+
Do not copy implementation bodies, generated declarations, every story, or
|
|
90
|
+
every styling variant into reader-facing content. Do not use ordinal batches
|
|
91
|
+
to disguise an enumeration-heavy index.
|
|
92
|
+
|
|
93
|
+
## Revise or stop when
|
|
94
|
+
|
|
95
|
+
- public components cannot be distinguished from internal or demo-only code;
|
|
96
|
+
- component behavior is inferred only from screenshots or names;
|
|
97
|
+
- examples invent combinations that maintained usage does not support;
|
|
98
|
+
- accessibility or provider requirements are asserted without evidence;
|
|
99
|
+
- one-page-per-component expansion has no consumer-navigation justification.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.contract-source
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Authoritative contract source template
|
|
8
|
+
|
|
9
|
+
Use for `contract-source`: a module whose maintained value is an authoritative
|
|
10
|
+
IDL, OpenAPI document, schema registry, message contract, or equivalent
|
|
11
|
+
machine-readable interface definition. It defines contracts consumed by other
|
|
12
|
+
modules but does not need to execute or dispatch them itself.
|
|
13
|
+
|
|
14
|
+
Use the exact profile and Artifact policy variant supplied by the workset.
|
|
15
|
+
Generated projections must point back to this authority and remain supporting
|
|
16
|
+
evidence rather than a second contract authority.
|
|
17
|
+
|
|
18
|
+
## Evidence pass
|
|
19
|
+
|
|
20
|
+
Locate:
|
|
21
|
+
|
|
22
|
+
- schema roots, namespaces/packages, service or message registries, and imports;
|
|
23
|
+
- operation, event, request, response, and error identities;
|
|
24
|
+
- versioning, compatibility, deprecation, and evolution rules;
|
|
25
|
+
- generator configuration, target languages/packages, and generated output
|
|
26
|
+
boundaries;
|
|
27
|
+
- known provider and consumer registrations when those modules are registered;
|
|
28
|
+
- ownership, validation, publication, and release entrypoints.
|
|
29
|
+
|
|
30
|
+
## Questions the knowledge must answer
|
|
31
|
+
|
|
32
|
+
1. Which contracts are authoritative in this module?
|
|
33
|
+
2. How are operations/messages grouped and identified?
|
|
34
|
+
3. What versioning and compatibility rules are declared?
|
|
35
|
+
4. Which generated artifacts and consumers derive from this source?
|
|
36
|
+
5. How is the contract validated, published, and changed?
|
|
37
|
+
|
|
38
|
+
## Suggested knowledge units
|
|
39
|
+
|
|
40
|
+
- **Contract registry**: namespaces, service/message families, authority,
|
|
41
|
+
versions, owners, and navigation.
|
|
42
|
+
- **Operation or message-family reference**: exact identities, payload roles,
|
|
43
|
+
errors, compatibility, and generated targets.
|
|
44
|
+
- **Generation and publication map**: generator inputs/outputs, validation,
|
|
45
|
+
versioning, and release boundary.
|
|
46
|
+
- **Provider-consumer flow**: only when both runtime endpoints are registered
|
|
47
|
+
and source-backed; use the cross-module template.
|
|
48
|
+
|
|
49
|
+
## Chapter blueprint
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
# <Contract module> registry
|
|
53
|
+
## Authority, ownership, and schema roots
|
|
54
|
+
## Namespaces and contract families
|
|
55
|
+
## Operations, messages, and error identities
|
|
56
|
+
## Versioning, compatibility, and deprecation
|
|
57
|
+
## Generated targets and active consumers
|
|
58
|
+
## Validation, publication, and release
|
|
59
|
+
## Evidence and exclusions
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Use the canonical operation record from `protocol-boundary.md` for detailed
|
|
63
|
+
families. Do not duplicate every generated language binding or claim runtime
|
|
64
|
+
behavior from the schema alone.
|
|
65
|
+
|
|
66
|
+
## Granularity and stop conditions
|
|
67
|
+
|
|
68
|
+
Aggregate related operations/messages by authoritative family. Split when
|
|
69
|
+
namespace, owner, version policy, or compatibility behavior differs. Every page
|
|
70
|
+
must contain exact contract identities and source locators, not just filenames.
|
|
71
|
+
|
|
72
|
+
Revise or stop when authority cannot be distinguished from a generated copy,
|
|
73
|
+
imports or versions are unresolved, or compatibility claims are not declared.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.data-sync-reconciliation
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Data synchronization and reconciliation template
|
|
8
|
+
|
|
9
|
+
Use for `data-sync-reconciliation` when a stable reader question crosses source,
|
|
10
|
+
transformation, persistence, delivery, or reconciliation boundaries. The flow
|
|
11
|
+
is an independently owned logical unit; each participating module keeps its own
|
|
12
|
+
non-duplicated responsibility map.
|
|
13
|
+
|
|
14
|
+
## Evidence pass
|
|
15
|
+
|
|
16
|
+
Establish:
|
|
17
|
+
|
|
18
|
+
- an explicit start trigger and terminal outcome;
|
|
19
|
+
- each registered module boundary in execution order;
|
|
20
|
+
- operation, event, repository, command, or plugin identities joining adjacent
|
|
21
|
+
modules;
|
|
22
|
+
- transformations, ownership handoffs, state changes, and failure boundaries;
|
|
23
|
+
- source locators on both sides of every join;
|
|
24
|
+
- authentication, retries, fallback, observability, and recovery only where
|
|
25
|
+
they are explicitly configured.
|
|
26
|
+
|
|
27
|
+
Imports, filenames, symbol co-occurrence, and similar names do not prove a
|
|
28
|
+
runtime chain.
|
|
29
|
+
|
|
30
|
+
## Questions the knowledge must answer
|
|
31
|
+
|
|
32
|
+
1. What reader goal and source-backed trigger start the flow?
|
|
33
|
+
2. Which module owns each step and boundary?
|
|
34
|
+
3. Which exact contract or identity joins each adjacent step?
|
|
35
|
+
4. What state, identity, or data is transformed at every handoff?
|
|
36
|
+
5. Where can the flow fail, retry, fall back, or terminate?
|
|
37
|
+
|
|
38
|
+
## Chapter blueprint
|
|
39
|
+
|
|
40
|
+
```markdown
|
|
41
|
+
# <Cross-module flow>
|
|
42
|
+
## Reader goal and starting trigger
|
|
43
|
+
## Boundary sequence and module ownership
|
|
44
|
+
## Contract and transformation at each handoff
|
|
45
|
+
## State changes and terminal outcome
|
|
46
|
+
## Authentication, failure, retry, and fallback
|
|
47
|
+
## Source-backed edge inventory
|
|
48
|
+
## Known gaps and excluded implementation detail
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Examples include application-to-client-to-endpoint, endpoint-to-service-to-
|
|
52
|
+
repository, producer-to-event-to-consumer, command-to-remote-operation, and
|
|
53
|
+
plugin-host-to-provider.
|
|
54
|
+
|
|
55
|
+
## Partition and ownership rule
|
|
56
|
+
|
|
57
|
+
A flow normally cites sources already owned by module units. Give the flow one
|
|
58
|
+
stable SubjectKey and keep module inventory ownership unchanged; its author
|
|
59
|
+
workset may reference the exact cross-source evidence views but must not claim
|
|
60
|
+
the same inventory members as a second primary owner.
|
|
61
|
+
|
|
62
|
+
The aggregate candidate may cite evidence from every participating source. It
|
|
63
|
+
must cover all Route-reported structural probes selected by the flow profile;
|
|
64
|
+
one page may cover several probes when it carries each exact evidence locator.
|
|
65
|
+
Use `operation` and `handoff` candidate sections and emit source-backed
|
|
66
|
+
`depends_on` edges from the owning module candidate to the next registered
|
|
67
|
+
module candidate. Narrative arrows or a textual sequence do not satisfy the
|
|
68
|
+
structured relationship requirement.
|
|
69
|
+
|
|
70
|
+
## Granularity and stop conditions
|
|
71
|
+
|
|
72
|
+
Emit one deduplicated page per coherent end-to-end flow family. Split when the
|
|
73
|
+
trigger, terminal outcome, ownership, contract, or failure policy differs.
|
|
74
|
+
|
|
75
|
+
Revise or stop when either endpoint or a joining identity is missing, the chain
|
|
76
|
+
crosses unregistered sources, relationships depend on inference, or the output
|
|
77
|
+
repeats module pages without adding a handoff model.
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.derived-generated-source
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Generated, mirrored, vendored, and legacy source template
|
|
8
|
+
|
|
9
|
+
Use for `derived-generated-source` and source states `generated`, `mirrored`,
|
|
10
|
+
`vendored`, or `legacy`. Its main purpose is to prevent derived artifacts from
|
|
11
|
+
being mistaken for independent knowledge authority while preserving useful
|
|
12
|
+
consumer and provenance information.
|
|
13
|
+
|
|
14
|
+
## Evidence pass
|
|
15
|
+
|
|
16
|
+
Locate:
|
|
17
|
+
|
|
18
|
+
- generation, sync, vendoring, migration, or deprecation markers;
|
|
19
|
+
- authoritative repository, schema, template, source directory, or upstream
|
|
20
|
+
package;
|
|
21
|
+
- generator/sync command, configuration, version pin, and output boundary;
|
|
22
|
+
- ownership and update cadence;
|
|
23
|
+
- consumers that still import or execute the derived tree;
|
|
24
|
+
- local modifications, compatibility wrappers, or hand-maintained overlays;
|
|
25
|
+
- release/build artifacts and whether they are committed or reproducible;
|
|
26
|
+
- replacement path for legacy source when one is explicitly maintained.
|
|
27
|
+
|
|
28
|
+
Do not assume all files in a generated-looking directory are derived. Confirm
|
|
29
|
+
markers, build steps, headers, manifests, or source mapping.
|
|
30
|
+
|
|
31
|
+
## Questions the knowledge must answer
|
|
32
|
+
|
|
33
|
+
1. Why does this source exist and what lifecycle category applies?
|
|
34
|
+
2. Where is the authoritative source of truth?
|
|
35
|
+
3. How is the derived content produced, synchronized, or versioned?
|
|
36
|
+
4. Which consumers depend on it and through what supported surface?
|
|
37
|
+
5. Are local edits permitted, overwritten, or layered separately?
|
|
38
|
+
6. What is safe to inspect here, and what knowledge belongs upstream?
|
|
39
|
+
7. For legacy source, what current replacement and migration status are proven?
|
|
40
|
+
|
|
41
|
+
## Suggested knowledge units
|
|
42
|
+
|
|
43
|
+
- **Provenance record**: lifecycle, authority, generator/sync, version relation,
|
|
44
|
+
ownership, output boundary, and consumer summary.
|
|
45
|
+
- **Generated public surface**: only when this tree is the supported consumer
|
|
46
|
+
interface; combine with `sdk-library` and keep the upstream schema explicit.
|
|
47
|
+
- **Compatibility or migration boundary**: when maintained wrappers or legacy
|
|
48
|
+
behavior remain operationally relevant and source-backed.
|
|
49
|
+
- **Update/recovery procedure**: only maintained generation or synchronization
|
|
50
|
+
commands, verification, and overwrite boundaries.
|
|
51
|
+
|
|
52
|
+
Default to a narrow provenance Artifact unless the workset also selects a
|
|
53
|
+
supported consumer surface. A consumer-facing derived unit must bind its
|
|
54
|
+
authority evidence to the confirmed source locator; a missing authority remains
|
|
55
|
+
a material gap rather than a reason to invent semantics or hide the supported
|
|
56
|
+
consumer surface.
|
|
57
|
+
|
|
58
|
+
## Chapter blueprints
|
|
59
|
+
|
|
60
|
+
```markdown
|
|
61
|
+
# <Derived source> provenance
|
|
62
|
+
## Lifecycle classification
|
|
63
|
+
## Authority and ownership
|
|
64
|
+
## Generator, sync, or vendoring mechanism
|
|
65
|
+
## Version and compatibility relationship
|
|
66
|
+
## Output boundary and local-edit policy
|
|
67
|
+
## Active consumers
|
|
68
|
+
## Update, verification, and recovery
|
|
69
|
+
## Reader-facing knowledge owned elsewhere
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
For a generated public client:
|
|
73
|
+
|
|
74
|
+
```markdown
|
|
75
|
+
# <Generated client> consumer surface
|
|
76
|
+
## Intended consumers and supported import
|
|
77
|
+
## Authoritative schema and generation version
|
|
78
|
+
## Client initialization and operation families
|
|
79
|
+
## Generated versus maintained behavior
|
|
80
|
+
## Compatibility and regeneration
|
|
81
|
+
## Evidence and excluded generated detail
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## Granularity and relationships
|
|
85
|
+
|
|
86
|
+
Do not duplicate pages already owned by the authoritative schema,
|
|
87
|
+
implementation, or package. Generated files may provide exact locators and
|
|
88
|
+
cross-checks but should not expand every model, constant, serializer, or method
|
|
89
|
+
into reader-facing Markdown.
|
|
90
|
+
|
|
91
|
+
Relate the derived unit to its authority and active consumers. A relationship
|
|
92
|
+
to an upstream schema must use an explicit locator or generation configuration,
|
|
93
|
+
not a naming guess.
|
|
94
|
+
|
|
95
|
+
If the authority cannot be located, a narrow provenance unit may still record
|
|
96
|
+
confirmed lifecycle markers, generator clues, output boundaries, and active
|
|
97
|
+
consumers. Keep any separate unit that promises field semantics, compatibility,
|
|
98
|
+
or upstream meaning in a `request-material` disposition tied to a blocking
|
|
99
|
+
material-question proposal until the missing authority is provided.
|
|
100
|
+
|
|
101
|
+
## Template composition examples
|
|
102
|
+
|
|
103
|
+
- A generated API client is `sdk-library` + `derived-generated-source` and reads
|
|
104
|
+
`protocol-boundary.md` for protocol authority.
|
|
105
|
+
- A vendored library with no project-owned surface remains one provenance page,
|
|
106
|
+
not a copied API reference.
|
|
107
|
+
- A legacy adapter still serving callers combines this template with
|
|
108
|
+
`adapter-integration.md`; document only proven compatibility and migration behavior.
|
|
109
|
+
|
|
110
|
+
## Revise or stop when
|
|
111
|
+
|
|
112
|
+
- the authoritative source cannot be identified for semantic or compatibility
|
|
113
|
+
claims beyond a narrow provenance record;
|
|
114
|
+
- generated and hand-maintained files cannot be separated;
|
|
115
|
+
- the plan duplicates upstream reference material without consumer value;
|
|
116
|
+
- legacy replacement or deprecation claims are inferred rather than evidenced;
|
|
117
|
+
- generated symbols dominate projected pages.
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.domain-service
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Domain service template
|
|
8
|
+
|
|
9
|
+
Use for `domain-service` modules whose stable value is a domain/use-case boundary or a
|
|
10
|
+
reusable service contract and its first-level orchestration. Do not classify a
|
|
11
|
+
directory as a service merely because it contains classes or functions named
|
|
12
|
+
`Service`.
|
|
13
|
+
|
|
14
|
+
Use the exact profile and Artifact policy variant supplied by the workset.
|
|
15
|
+
|
|
16
|
+
## Evidence pass
|
|
17
|
+
|
|
18
|
+
Locate:
|
|
19
|
+
|
|
20
|
+
- service construction, registration, dependency injection, or public entry;
|
|
21
|
+
- supported operations and their callers or protocol handlers;
|
|
22
|
+
- use-case/domain orchestration and the point where ownership changes;
|
|
23
|
+
- repositories, transactions, caches, downstream clients, and event ports;
|
|
24
|
+
- invariants, idempotency, consistency, permission, or failure boundaries;
|
|
25
|
+
- configuration and runtime wiring that materially change the service;
|
|
26
|
+
- generated clients/models and internal helpers that should remain evidence.
|
|
27
|
+
|
|
28
|
+
Follow representative public operations through one orchestration layer. Stop
|
|
29
|
+
at the first stable domain, persistence, or downstream protocol boundary unless
|
|
30
|
+
the confirmed knowledge goal explicitly needs deeper implementation behavior.
|
|
31
|
+
|
|
32
|
+
## Questions the knowledge must answer
|
|
33
|
+
|
|
34
|
+
1. What responsibility and invariants does this service own?
|
|
35
|
+
2. Which operations form its supported boundary, and who calls them?
|
|
36
|
+
3. How do operations coordinate domain logic and dependencies?
|
|
37
|
+
4. Where are transaction, consistency, idempotency, or state boundaries?
|
|
38
|
+
5. What failures can cross the boundary, and how are they represented?
|
|
39
|
+
6. Which dependencies are stable contracts versus internal implementation?
|
|
40
|
+
|
|
41
|
+
## Suggested knowledge units
|
|
42
|
+
|
|
43
|
+
- **Service boundary**: responsibility, public operations, ownership,
|
|
44
|
+
invariants, callers, and stable dependencies.
|
|
45
|
+
- **Operation/use-case map**: operation to orchestration to first stable
|
|
46
|
+
downstream/persistence/event boundary.
|
|
47
|
+
- **State and consistency contract**: only when transaction, idempotency,
|
|
48
|
+
caching, or durable state is important and evidenced.
|
|
49
|
+
- **Dependency map**: concrete ports/clients/repositories and why each boundary
|
|
50
|
+
matters; avoid a raw import inventory.
|
|
51
|
+
- **Runtime/configuration guide**: only module-owned configuration, startup,
|
|
52
|
+
diagnostics, or release behavior.
|
|
53
|
+
|
|
54
|
+
## Chapter blueprints
|
|
55
|
+
|
|
56
|
+
```markdown
|
|
57
|
+
# <Domain service> boundary
|
|
58
|
+
## Responsibility and non-responsibilities
|
|
59
|
+
## Supported operations and callers
|
|
60
|
+
## Domain rules and invariants
|
|
61
|
+
## Dependency and port boundaries
|
|
62
|
+
## State, transaction, and idempotency behavior
|
|
63
|
+
## Failure and recovery behavior
|
|
64
|
+
## Configuration and runtime wiring
|
|
65
|
+
## Evidence and excluded implementation detail
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
For a use-case family:
|
|
69
|
+
|
|
70
|
+
```markdown
|
|
71
|
+
## <Use-case family>
|
|
72
|
+
- Trigger or caller:
|
|
73
|
+
- Supported operation:
|
|
74
|
+
- Preconditions and invariants:
|
|
75
|
+
- Orchestration steps:
|
|
76
|
+
- Persistence/downstream/event boundary:
|
|
77
|
+
- Result and failure semantics:
|
|
78
|
+
- Source evidence:
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Granularity and relationships
|
|
82
|
+
|
|
83
|
+
Group operations that share responsibility, invariants, and dependency paths.
|
|
84
|
+
Split only when ownership or consistency semantics differ. Do not publish every
|
|
85
|
+
exported method: language visibility is not proof of a supported service API.
|
|
86
|
+
Every retained page must name supported operations, callers, ports, or state
|
|
87
|
+
identities and include source locators; a folder/class inventory is not a
|
|
88
|
+
service boundary.
|
|
89
|
+
|
|
90
|
+
Relationships should connect supported operations to real callers, ports,
|
|
91
|
+
repositories, or downstream operations. Do not infer a domain flow from
|
|
92
|
+
similar names or shared models.
|
|
93
|
+
|
|
94
|
+
## Template composition examples
|
|
95
|
+
|
|
96
|
+
- An RPC implementation reads `api-service.md` for its inbound registration and
|
|
97
|
+
this template for domain orchestration.
|
|
98
|
+
- A service backed by durable storage also selects `storage-repository` and reads
|
|
99
|
+
`persistence-boundary.md`.
|
|
100
|
+
- A service activated only by events also reads `background-runtime.md` and the
|
|
101
|
+
`event-flow.md` template.
|
|
102
|
+
|
|
103
|
+
## Revise or stop when
|
|
104
|
+
|
|
105
|
+
- no stable caller or public service boundary can be found;
|
|
106
|
+
- the proposed content is a class-by-class implementation listing;
|
|
107
|
+
- invariants or data semantics depend on unavailable documentation;
|
|
108
|
+
- generated models are being treated as the domain source of truth;
|
|
109
|
+
- an end-to-end chain crosses undeclared source modules.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.event-consumer
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Event consumer template
|
|
8
|
+
|
|
9
|
+
Use for `event-consumer`. This template supplements the owning runtime, service,
|
|
10
|
+
application, or adapter Artifact; an event signal does not by itself justify a
|
|
11
|
+
separate end-to-end Artifact.
|
|
12
|
+
|
|
13
|
+
## Evidence pass
|
|
14
|
+
|
|
15
|
+
Locate:
|
|
16
|
+
|
|
17
|
+
- topic, stream, queue, hook, notification, or event identity;
|
|
18
|
+
- authoritative schema and versioning source;
|
|
19
|
+
- producer call and publication condition;
|
|
20
|
+
- subscription/consumer registration and handler dispatch;
|
|
21
|
+
- delivery, ordering, partitioning, retry, dead-letter, checkpoint, and
|
|
22
|
+
idempotency configuration;
|
|
23
|
+
- emitted side effects, observability, replay, and recovery entrypoints.
|
|
24
|
+
|
|
25
|
+
Do not derive delivery guarantees from framework defaults.
|
|
26
|
+
|
|
27
|
+
## Questions the knowledge must answer
|
|
28
|
+
|
|
29
|
+
1. What event is emitted or consumed, under what condition, and by whom?
|
|
30
|
+
2. Where is publication or subscription registered?
|
|
31
|
+
3. What delivery and recovery behavior is actually configured?
|
|
32
|
+
4. What state or side effects change, and how can failed work be identified?
|
|
33
|
+
|
|
34
|
+
## Chapter blueprint
|
|
35
|
+
|
|
36
|
+
```markdown
|
|
37
|
+
# <Event flow or family>
|
|
38
|
+
## Event identity and authoritative schema
|
|
39
|
+
## Producer and publication condition
|
|
40
|
+
## Delivery and routing semantics
|
|
41
|
+
## Consumer registration and processing
|
|
42
|
+
## Idempotency, retry, checkpoint, and failure destination
|
|
43
|
+
## Side effects and observability
|
|
44
|
+
## Source-backed producer-to-consumer relationship
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
When only one endpoint is registered, keep an event record inside that
|
|
48
|
+
module's runtime or service map and omit the unavailable endpoint. Create a
|
|
49
|
+
separate event-flow page only when both sides and their shared event identity
|
|
50
|
+
are evidenced, or when one side alone has enough delivery and recovery
|
|
51
|
+
semantics to be a stable operator-facing topic.
|
|
52
|
+
|
|
53
|
+
## Granularity and stop conditions
|
|
54
|
+
|
|
55
|
+
Group events with the same schema authority, delivery policy, ownership, and
|
|
56
|
+
handler family. Do not create pages per event field, generated payload type,
|
|
57
|
+
handler helper, or retry branch.
|
|
58
|
+
|
|
59
|
+
Every retained record must name the event identity, registration or call site,
|
|
60
|
+
and source locator. Revise or stop when delivery semantics would be guessed,
|
|
61
|
+
the shared identity is missing, or the output would contain empty producer or
|
|
62
|
+
consumer sections.
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.gateway-facade
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Gateway and protocol facade template
|
|
8
|
+
|
|
9
|
+
Use for `gateway-facade` when the selected reader goal is the boundary exposed
|
|
10
|
+
or translated by one gateway. This template owns the canonical operation
|
|
11
|
+
record. Application, API, service, SDK, contract-source, and adapter templates
|
|
12
|
+
provide context but must not create a second registry for the same operations.
|
|
13
|
+
|
|
14
|
+
## Evidence pass
|
|
15
|
+
|
|
16
|
+
Locate:
|
|
17
|
+
|
|
18
|
+
- the authoritative IDL, OpenAPI document, schema, service definition, or
|
|
19
|
+
explicit registration;
|
|
20
|
+
- provider operation identity and dispatch when the provider is in scope;
|
|
21
|
+
- consumer client construction and concrete operation call site when the
|
|
22
|
+
consumer is in scope;
|
|
23
|
+
- request, response, message, identity, and context mapping boundaries;
|
|
24
|
+
- authentication, authorization, timeout, retry, compatibility, and error
|
|
25
|
+
translation that are explicitly configured;
|
|
26
|
+
- generated bindings, their generator/version, and their upstream authority.
|
|
27
|
+
|
|
28
|
+
Do not infer protocol semantics from matching type names, generated model
|
|
29
|
+
fields, imports, or transport-library dependencies.
|
|
30
|
+
|
|
31
|
+
## Questions the knowledge must answer
|
|
32
|
+
|
|
33
|
+
1. Which concrete operation or coherent operation family is provided or used?
|
|
34
|
+
2. Where is it registered or called, and where is its contract authoritative?
|
|
35
|
+
3. What request, response, identity, credential, and context mapping occurs?
|
|
36
|
+
4. What timeout, retry, compatibility, and failure behavior is source-backed?
|
|
37
|
+
5. Which generated artifacts are locators rather than independent authority?
|
|
38
|
+
|
|
39
|
+
## Canonical operation record
|
|
40
|
+
|
|
41
|
+
Use this record wherever another selected template asks for an operation,
|
|
42
|
+
route-to-client, or adapter mapping registry. Add type-specific detail around
|
|
43
|
+
it rather than copying the operation into another table.
|
|
44
|
+
|
|
45
|
+
```markdown
|
|
46
|
+
## <Protocol operation or family>
|
|
47
|
+
- Provider identity and registration:
|
|
48
|
+
- Consumer call site:
|
|
49
|
+
- Authoritative contract:
|
|
50
|
+
- Request, identity, and context mapping:
|
|
51
|
+
- Response and error mapping:
|
|
52
|
+
- Timeout, retry, and compatibility:
|
|
53
|
+
- Source-backed relationship:
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Provider-only records omit the consumer line. Consumer-only records omit
|
|
57
|
+
provider dispatch and remain inside the owning module page unless the opposite
|
|
58
|
+
endpoint is also a registered source and an evidenced cross-module flow is a
|
|
59
|
+
separate reader goal.
|
|
60
|
+
|
|
61
|
+
## Generated and authoritative contracts
|
|
62
|
+
|
|
63
|
+
For generated contract material, also select `derived-generated-source` and
|
|
64
|
+
record the upstream schema, generator, version/pin, generated output boundary,
|
|
65
|
+
and runtime consumer. Generated code may locate operations and fields but does
|
|
66
|
+
not become semantic authority by itself.
|
|
67
|
+
|
|
68
|
+
When the upstream authority is unavailable, a separate provenance Artifact may
|
|
69
|
+
still record the generated boundary, generator markers, current consumers, and
|
|
70
|
+
known authority gap. Keep the question that would explain field semantics or
|
|
71
|
+
compatibility unresolved as a material gap; do not block an independently
|
|
72
|
+
supported provenance record.
|
|
73
|
+
|
|
74
|
+
For a `contract-source` module, preserve exact operation identities, namespaces,
|
|
75
|
+
versions, compatibility declarations, imports, and generator targets. Do not
|
|
76
|
+
invent runtime dispatch or consumer behavior that the contract does not define.
|
|
77
|
+
|
|
78
|
+
## Granularity and relationships
|
|
79
|
+
|
|
80
|
+
Aggregate operations by contract, ownership, and execution family. Split when
|
|
81
|
+
authority, mapping, security, versioning, or failure semantics materially
|
|
82
|
+
differ. Do not create pages for every generated request/response type or field.
|
|
83
|
+
|
|
84
|
+
Every page must contain concrete operation or schema identities and source
|
|
85
|
+
locators. A page that only says a module “uses an API” is not sufficient.
|
|
86
|
+
|
|
87
|
+
Revise or stop when operation identity is unavailable, authority is ambiguous,
|
|
88
|
+
security/error behavior would be guessed, or a claimed provider-consumer join
|
|
89
|
+
has no source-backed registration and call evidence.
|