@c4a/context-cli 0.6.18 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +73 -8
- package/README.zh-CN.md +47 -7
- package/cli.js +89881 -53821
- package/docs/document-optimization.md +35 -11
- package/docs/document-optimization.zh-CN.md +29 -9
- package/indexers/bundles/context-code-indexer/SKILL.md +20 -0
- package/indexers/bundles/context-code-indexer/context-indexer.yaml +230 -0
- package/indexers/bundles/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
- package/indexers/bundles/context-code-indexer/references/composers/cross-module-chain.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/development-and-delivery.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/event-flow.md +21 -0
- package/indexers/bundles/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/persistence-boundary.md +21 -0
- package/indexers/bundles/context-code-indexer/references/composers/protocol-boundary.md +22 -0
- package/indexers/bundles/context-code-indexer/references/composers/public-contract.md +23 -0
- package/indexers/bundles/context-code-indexer/references/indexer.md +49 -0
- package/indexers/bundles/context-code-indexer/references/metrics.md +201 -0
- package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +119 -0
- package/indexers/bundles/context-code-indexer/templates/api-service.md +118 -0
- package/indexers/bundles/context-code-indexer/templates/background-runtime.md +109 -0
- package/indexers/bundles/context-code-indexer/templates/cli-tool.md +129 -0
- package/indexers/bundles/context-code-indexer/templates/component-library.md +99 -0
- package/indexers/bundles/context-code-indexer/templates/contract-source.md +73 -0
- package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
- package/indexers/bundles/context-code-indexer/templates/derived-generated-source.md +117 -0
- package/indexers/bundles/context-code-indexer/templates/domain-service.md +109 -0
- package/indexers/bundles/context-code-indexer/templates/event-consumer.md +62 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +89 -0
- package/indexers/bundles/context-code-indexer/templates/monorepo-container.md +124 -0
- package/indexers/bundles/context-code-indexer/templates/plugin-extension.md +52 -0
- package/indexers/bundles/context-code-indexer/templates/sdk-library.md +132 -0
- package/indexers/bundles/context-code-indexer/templates/storage-repository.md +56 -0
- package/indexers/bundles/context-code-indexer/templates/web-application.md +146 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/chapters.json +226 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/composers.json +82 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/profiles.json +210 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/scenarios.json +122 -0
- package/indexers/bundles/context-markdown-indexer/SKILL.md +20 -0
- package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +147 -0
- package/indexers/bundles/context-markdown-indexer/references/classification.md +63 -0
- package/indexers/bundles/context-markdown-indexer/references/editorial-policy.md +106 -0
- package/indexers/bundles/context-markdown-indexer/references/indexer.md +23 -0
- package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +146 -0
- package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +151 -0
- package/indexers/capability-manifest.json +40 -0
- package/indexers/contracts/hard-rule-conformance.json +2644 -0
- package/indexers/contracts/operator-contract.json +35 -0
- package/indexers/contracts/profile-contract.json +10162 -0
- package/indexers/release-manifest.json +208 -0
- package/package.json +5 -4
- package/plugins/README.md +17 -109
- package/plugins/README_CN.md +11 -89
- package/plugins/VERSION +1 -1
- package/plugins/claude/.claude-plugin/plugin.json +3 -11
- package/plugins/claude/CLAUDE.md +1 -1
- package/plugins/claude/README.md +1 -1
- package/plugins/claude/commands/context.md +112 -7
- package/plugins/codex/.codex-plugin/plugin.json +6 -17
- package/plugins/codex/AGENTS.md +1 -1
- package/plugins/codex/README.md +1 -1
- package/plugins/codex/skills/context/SKILL.md +113 -19
- package/plugins/cursor/.cursor-plugin/plugin.json +4 -17
- package/plugins/cursor/AGENTS.md +1 -1
- package/plugins/cursor/README.md +3 -2
- package/plugins/cursor/commands/c4a-context.md +112 -9
- package/plugins/skills/{c4a-context → context}/SKILL.md +114 -20
- package/plugins/skills/context-code-indexer/SKILL.md +20 -0
- package/plugins/skills/context-code-indexer/context-indexer.yaml +230 -0
- package/plugins/skills/context-code-indexer/references/composers/contracts-and-chains.md +23 -0
- package/plugins/skills/context-code-indexer/references/composers/cross-module-chain.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/development-and-delivery.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/event-flow.md +21 -0
- package/plugins/skills/context-code-indexer/references/composers/examples-and-documentation.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/persistence-boundary.md +21 -0
- package/plugins/skills/context-code-indexer/references/composers/protocol-boundary.md +22 -0
- package/plugins/skills/context-code-indexer/references/composers/public-contract.md +23 -0
- package/plugins/skills/context-code-indexer/references/indexer.md +49 -0
- package/plugins/skills/context-code-indexer/references/metrics.md +201 -0
- package/plugins/skills/context-code-indexer/templates/adapter-integration.md +119 -0
- package/plugins/skills/context-code-indexer/templates/api-service.md +118 -0
- package/plugins/skills/context-code-indexer/templates/background-runtime.md +109 -0
- package/plugins/skills/context-code-indexer/templates/cli-tool.md +129 -0
- package/plugins/skills/context-code-indexer/templates/component-library.md +99 -0
- package/plugins/skills/context-code-indexer/templates/contract-source.md +73 -0
- package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation.md +77 -0
- package/plugins/skills/context-code-indexer/templates/derived-generated-source.md +117 -0
- package/plugins/skills/context-code-indexer/templates/domain-service.md +109 -0
- package/plugins/skills/context-code-indexer/templates/event-consumer.md +62 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade.md +89 -0
- package/plugins/skills/context-code-indexer/templates/monorepo-container.md +124 -0
- package/plugins/skills/context-code-indexer/templates/plugin-extension.md +52 -0
- package/plugins/skills/context-code-indexer/templates/sdk-library.md +132 -0
- package/plugins/skills/context-code-indexer/templates/storage-repository.md +56 -0
- package/plugins/skills/context-code-indexer/templates/web-application.md +146 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/chapters.json +226 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/composers.json +82 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/profiles.json +210 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/scenarios.json +122 -0
- package/plugins/skills/context-markdown-indexer/SKILL.md +20 -0
- package/plugins/skills/context-markdown-indexer/context-indexer.yaml +147 -0
- package/plugins/skills/context-markdown-indexer/references/classification.md +63 -0
- package/plugins/skills/context-markdown-indexer/references/editorial-policy.md +106 -0
- package/plugins/skills/context-markdown-indexer/references/indexer.md +23 -0
- package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +146 -0
- package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +109 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +31 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/editorial.json +309 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/migration-equivalence.json +186 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +171 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +151 -0
- package/providers/context/actions/accept-main-index-run.yaml +7 -0
- package/providers/context/actions/accept-material-answer-run.yaml +7 -0
- package/providers/context/actions/accept-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/actualize-material-answer-bindings.yaml +8 -0
- package/providers/context/actions/apply-code-index-guidance.yaml +5 -0
- package/providers/context/actions/apply-document-optimization-guidance.yaml +5 -0
- package/providers/context/actions/apply-indexer-project.yaml +7 -0
- package/providers/context/actions/audit-material-gap-state.yaml +8 -0
- package/providers/context/actions/audit-projected-artifact-fan-out.yaml +8 -0
- package/providers/context/actions/authorize-indexer-contract-overlay.yaml +7 -0
- package/providers/context/actions/authorize-indexer-dependencies.yaml +7 -0
- package/providers/context/actions/authorize-indexer-program-execution.yaml +7 -0
- package/providers/context/actions/build-main-index-author-worksets.yaml +7 -0
- package/providers/context/actions/build-main-index-catalog-fallback.yaml +7 -0
- package/providers/context/actions/build-main-index-partition-worksets.yaml +7 -0
- package/providers/context/actions/build-material-question-workset.yaml +7 -0
- package/providers/context/actions/build-post-author-composer-worksets.yaml +7 -0
- package/providers/context/actions/build-question-target-inventory.yaml +7 -0
- package/providers/context/actions/build-subject-catalog.yaml +7 -0
- package/providers/context/actions/build-target-resolution-views.yaml +7 -0
- package/providers/context/actions/checkpoint-material-answer-review.yaml +8 -0
- package/providers/context/actions/checkpoint-material-gaps.yaml +8 -0
- package/providers/context/actions/close-indexer-approved-knowledge.yaml +8 -0
- package/providers/context/actions/compile-indexer-candidates.yaml +8 -0
- package/providers/context/actions/compose-indexer-post-author-fragments.yaml +7 -0
- package/providers/context/actions/configure-community-indexer-fallback.yaml +6 -0
- package/providers/context/actions/configure-indexer-providers.yaml +6 -0
- package/providers/context/actions/confirm-index-requirement-workset.yaml +8 -0
- package/providers/context/actions/confirm-subject-reidentification.yaml +8 -0
- package/providers/context/actions/converge-main-index-partition-run.yaml +7 -0
- package/providers/context/actions/discover-markdown-indexer-providers.yaml +6 -0
- package/providers/context/actions/evaluate-material-gaps.yaml +8 -0
- package/providers/context/actions/fail-main-index-run.yaml +7 -0
- package/providers/context/actions/fail-material-answer-run.yaml +7 -0
- package/providers/context/actions/fail-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +8 -0
- package/providers/context/actions/inspect-index-profile-failure.yaml +7 -0
- package/providers/context/actions/inspect-indexer-dependencies.yaml +7 -0
- package/providers/context/actions/inspect-indexer-program-execution.yaml +7 -0
- package/providers/context/actions/inspect-indexer-project-proposal.yaml +7 -0
- package/providers/context/actions/inspect-markdown-provider-capture.yaml +7 -0
- package/providers/context/actions/inspect-material-answer-review.yaml +8 -0
- package/providers/context/actions/maintain-evidence.yaml +1 -1
- package/providers/context/actions/materialize-indexer-instructions.yaml +7 -0
- package/providers/context/actions/migrate-codeindex.yaml +5 -0
- package/providers/context/actions/observe-indexer-project.yaml +7 -0
- package/providers/context/actions/observe-main-index-run-ledger.yaml +7 -0
- package/providers/context/actions/observe-material-answer-runs.yaml +7 -0
- package/providers/context/actions/observe-post-author-composer-worksets.yaml +7 -0
- package/providers/context/actions/override-index-profile-audit.yaml +7 -0
- package/providers/context/actions/prepare-indexer-customization-project.yaml +7 -0
- package/providers/context/actions/prepare-main-index-run-ledger.yaml +7 -0
- package/providers/context/actions/prepare-material-answer-runs.yaml +7 -0
- package/providers/context/actions/propose-indexer-customization.yaml +7 -0
- package/providers/context/actions/propose-overlay-question-amendment.yaml +7 -0
- package/providers/context/actions/rebind-indexer-selection-to-requirement.yaml +7 -0
- package/providers/context/actions/reconcile-indexer-results.yaml +7 -0
- package/providers/context/actions/record-index-profile-revision.yaml +7 -0
- package/providers/context/actions/register-source-batch.yaml +1 -1
- package/providers/context/actions/report-index-profile-failure.yaml +7 -0
- package/providers/context/actions/report-indexer-incremental-impact.yaml +8 -0
- package/providers/context/actions/resolve-effective-composers.yaml +7 -0
- package/providers/context/actions/restore-repository-sources.yaml +1 -1
- package/providers/context/actions/review-material-answer-candidate.yaml +8 -0
- package/providers/context/actions/revise-index-output.yaml +7 -0
- package/providers/context/actions/route-index-requirement-confirmation.yaml +8 -0
- package/providers/context/actions/route-indexer-provider-selection.yaml +7 -0
- package/providers/context/actions/run-indexer-agent-step.yaml +7 -0
- package/providers/context/actions/run-indexer-post-author-composer.yaml +7 -0
- package/providers/context/actions/run-material-answer-indexers.yaml +7 -0
- package/providers/context/actions/start-main-index-run.yaml +7 -0
- package/providers/context/actions/start-material-answer-run.yaml +7 -0
- package/providers/context/actions/start-post-author-composer-run.yaml +7 -0
- package/providers/context/actions/validate-indexer-contract-overlays.yaml +7 -0
- package/providers/context/actions/validate-indexer-customization.yaml +7 -0
- package/providers/context/actions/validate-indexer-selection-proposal.yaml +7 -0
- package/providers/context/actions/validate-main-index-run.yaml +7 -0
- package/providers/context/actions/validate-markdown-provider-selection.yaml +7 -0
- package/providers/context/actions/validate-subject-key-schemas.yaml +8 -0
- package/providers/context/codes.yaml +72 -0
- package/providers/context/graphs/indexer.yaml +1068 -0
- package/providers/context/graphs/workspace.yaml +52 -3
- package/providers/context/manifest.json +1487 -157
- package/providers/context/provider.yaml +3 -2
- package/providers/context/resources/dialogue/code-extraction.md +12 -0
- package/providers/context/resources/dialogue/document-classification.md +1 -1
- package/providers/context/resources/dialogue/knowledge-review.md +7 -1
- package/providers/context/resources/dialogue/source-boundary.md +9 -1
- package/providers/context/resources/dialogue/workflow-mode-after-capture.md +11 -8
- package/providers/context/resources/dialogue/workflow-mode-after-creation.md +6 -4
- package/providers/context/resources/manuals/guides/lark-resources.md +7 -0
- package/providers/context/resources/manuals/guides/package-outputs.md +3 -3
- package/providers/context/resources/manuals/reference/code-extractors.md +7 -6
- package/providers/context/resources/manuals/reference/package-templates.md +18 -10
- package/providers/context/resources/manuals/reference/project-api.md +49 -24
- package/providers/context/resources/procedures/close-and-build.md +24 -9
- package/providers/context/resources/procedures/code-extraction.md +41 -13
- package/providers/context/resources/procedures/code-index-audit.md +83 -13
- package/providers/context/resources/procedures/document-capture.md +9 -0
- package/providers/context/resources/procedures/document-optimization.md +88 -21
- package/providers/context/resources/procedures/document-revision.md +11 -6
- package/providers/context/resources/procedures/knowledge-review.md +4 -1
- package/providers/context/resources/procedures/source-boundary.md +20 -8
- package/providers/context/resources/semantic/align/structure-planning.md +4 -4
- package/providers/context/resources/semantic/code-index/classification.md +8 -5
- package/providers/context/resources/semantic/code-index/templates/adapter.md +9 -0
- package/providers/context/resources/semantic/code-index/templates/contracts-and-chains.md +81 -0
- package/providers/context/resources/views/resolved-indexer-instructions.yaml +23 -0
- package/providers/context/schemas/document-optimization-decisions.schema.json +29 -6
- package/providers/context/schemas/indexer-agent-step-input.schema.json +30 -0
- package/providers/context/schemas/indexer-agent-step-result.schema.json +47 -0
- package/providers/context/schemas/indexer-candidate-compile-input.schema.json +57 -0
- package/providers/context/schemas/indexer-candidate-compile-output.schema.json +38 -0
- package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +46 -0
- package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +104 -0
- package/providers/context/schemas/indexer-contract-overlay-authorization-input.schema.json +32 -0
- package/providers/context/schemas/indexer-contract-overlay-authorization-result.schema.json +121 -0
- package/providers/context/schemas/indexer-contract-overlay-validation-input.schema.json +90 -0
- package/providers/context/schemas/indexer-contract-overlay-validation-result.schema.json +158 -0
- package/providers/context/schemas/indexer-customization-project-preparation-result.schema.json +44 -0
- package/providers/context/schemas/indexer-customization-proposal-draft.schema.json +83 -0
- package/providers/context/schemas/indexer-customization-validation-result.schema.json +36 -0
- package/providers/context/schemas/indexer-dependency-authorization-input.schema.json +71 -0
- package/providers/context/schemas/indexer-dependency-authorization-result.schema.json +138 -0
- package/providers/context/schemas/indexer-incremental-impact-input.schema.json +31 -0
- package/providers/context/schemas/indexer-incremental-impact-output.schema.json +52 -0
- package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +187 -0
- package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +180 -0
- package/providers/context/schemas/indexer-markdown-provider-capture-input.schema.json +17 -0
- package/providers/context/schemas/indexer-markdown-provider-capture-output.schema.json +54 -0
- package/providers/context/schemas/indexer-markdown-provider-validation-input.schema.json +34 -0
- package/providers/context/schemas/indexer-markdown-provider-validation-output.schema.json +75 -0
- package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +90 -0
- package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +80 -0
- package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +32 -0
- package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +32 -0
- package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +19 -0
- package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +87 -0
- package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +86 -0
- package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +19 -0
- package/providers/context/schemas/indexer-materialize-request.schema.json +53 -0
- package/providers/context/schemas/indexer-materialized-resource.schema.json +57 -0
- package/providers/context/schemas/indexer-overlay-question-amendment.schema.json +13 -0
- package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +40 -0
- package/providers/context/schemas/indexer-overlay-question-rebind-input.schema.json +35 -0
- package/providers/context/schemas/indexer-overlay-question-rebind-result.schema.json +25 -0
- package/providers/context/schemas/indexer-post-author-fragment-request.schema.json +26 -0
- package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +18 -0
- package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +94 -0
- package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +72 -0
- package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +13 -0
- package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +19 -0
- package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +22 -0
- package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +49 -0
- package/providers/context/schemas/indexer-profile-override-decision.schema.json +20 -0
- package/providers/context/schemas/indexer-profile-override-result.schema.json +49 -0
- package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +18 -0
- package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +31 -0
- package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +45 -0
- package/providers/context/schemas/indexer-program-execution-authorization-input.schema.json +145 -0
- package/providers/context/schemas/indexer-program-execution-authorization-result.schema.json +60 -0
- package/providers/context/schemas/indexer-project-action-result.schema.json +19 -0
- package/providers/context/schemas/indexer-project-gate-input.schema.json +100 -0
- package/providers/context/schemas/indexer-project-observation-input.schema.json +16 -0
- package/providers/context/schemas/indexer-project-observation-result.schema.json +42 -0
- package/providers/context/schemas/indexer-provider-route-input.schema.json +55 -0
- package/providers/context/schemas/indexer-provider-route-report.schema.json +188 -0
- package/providers/context/schemas/indexer-requirement-confirmation-input.schema.json +27 -0
- package/providers/context/schemas/indexer-requirement-confirmation-output.schema.json +24 -0
- package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +59 -0
- package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +43 -0
- package/providers/context/schemas/indexer-selection-proposal-input.schema.json +12 -0
- package/providers/context/schemas/indexer-selection-proposal-validation.schema.json +23 -0
- package/providers/context/schemas/indexer-subject-reidentification-input.schema.json +37 -0
- package/providers/context/schemas/indexer-subject-reidentification-output.schema.json +31 -0
- package/providers/context/schemas/source-batch-input.schema.json +18 -3
- package/providers/context/skills/configure-indexer-providers/SKILL.md +58 -0
- package/providers/context/skills/prepare-indexer-customization-project/SKILL.md +31 -0
- package/providers/context/skills/propose-indexer-customization/SKILL.md +40 -0
- package/providers/context/skills/revise-index-output/SKILL.md +12 -0
- package/providers/context/skills/run-indexer-agent-step/SKILL.md +20 -0
- package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +21 -0
|
@@ -0,0 +1,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.
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.monorepo-container
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Monorepo and module-container template
|
|
8
|
+
|
|
9
|
+
Use for `monorepo-container`: a workspace whose stable knowledge is the
|
|
10
|
+
registration, ownership, dependency, build, or release topology of multiple
|
|
11
|
+
child modules. Do not treat the physical repository as one application merely
|
|
12
|
+
because it has one Git remote.
|
|
13
|
+
|
|
14
|
+
Use the exact profile and Artifact policy variant supplied by the workset.
|
|
15
|
+
|
|
16
|
+
## Evidence pass
|
|
17
|
+
|
|
18
|
+
Locate:
|
|
19
|
+
|
|
20
|
+
- workspace/package/service manifests and child-module discovery rules;
|
|
21
|
+
- build graph, task orchestration, cache, dependency, and affected-scope logic;
|
|
22
|
+
- ownership, tags, boundaries, layering, or dependency constraints;
|
|
23
|
+
- shared configuration and tooling inherited by child modules;
|
|
24
|
+
- release groups, independent packages, deployment units, and version policy;
|
|
25
|
+
- generated, mirrored, vendored, fixture, example, and legacy subtrees;
|
|
26
|
+
- cross-module registries or contracts that warrant separate chain units.
|
|
27
|
+
|
|
28
|
+
Use declared manifests as the primary inventory. Directory discovery is a
|
|
29
|
+
fallback and must not silently include generated output or dependency caches.
|
|
30
|
+
|
|
31
|
+
## Questions the knowledge must answer
|
|
32
|
+
|
|
33
|
+
1. How are child modules discovered and identified?
|
|
34
|
+
2. Which modules are applications, services, libraries, tools, or derived
|
|
35
|
+
sources, and who owns them?
|
|
36
|
+
3. What dependency and layering rules connect or constrain them?
|
|
37
|
+
4. How do build, test, cache, release, and deployment boundaries work?
|
|
38
|
+
5. Which configuration is inherited globally versus owned by a child module?
|
|
39
|
+
6. Which cross-module flows are important enough to index separately?
|
|
40
|
+
7. Which large or generated subtrees are intentionally excluded?
|
|
41
|
+
|
|
42
|
+
## Suggested knowledge units
|
|
43
|
+
|
|
44
|
+
- **Module registry**: child identity, path, type, owner, manifest, supported
|
|
45
|
+
entry, build/release unit, and lifecycle.
|
|
46
|
+
- **Dependency/topology map**: declared dependency directions, layering rules,
|
|
47
|
+
shared contracts, and source-backed edges.
|
|
48
|
+
- **Build and release map**: task graph, affected-scope behavior, cache,
|
|
49
|
+
artifacts, release groups, and deployment units.
|
|
50
|
+
- **Shared tooling/configuration**: only stable workspace-level behavior that
|
|
51
|
+
materially affects multiple children.
|
|
52
|
+
- **Cross-module chain unit**: independently owned, source-backed flow joining
|
|
53
|
+
several child modules; do not hide it inside the container summary.
|
|
54
|
+
|
|
55
|
+
Every user-visible child application, service, library, or CLI is classified as
|
|
56
|
+
its own index unit before deeper extraction.
|
|
57
|
+
|
|
58
|
+
Each independently visible child package must have one canonical inventory
|
|
59
|
+
identity and one primary partition owner. If source registration intentionally
|
|
60
|
+
remains at repository level, keep the container registry as an aggregate
|
|
61
|
+
logical unit and let Context build child worksets from canonical package facts;
|
|
62
|
+
do not use file filters to simulate package ownership.
|
|
63
|
+
|
|
64
|
+
## Chapter blueprints
|
|
65
|
+
|
|
66
|
+
```markdown
|
|
67
|
+
# <Workspace> module registry
|
|
68
|
+
## Workspace purpose and discovery rules
|
|
69
|
+
## Child module inventory
|
|
70
|
+
## Module types, ownership, and lifecycle
|
|
71
|
+
## Dependency and layering constraints
|
|
72
|
+
## Shared configuration and tooling
|
|
73
|
+
## Build, test, cache, and release topology
|
|
74
|
+
## Generated/mirrored boundaries and exclusions
|
|
75
|
+
## Cross-module knowledge entrypoints
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
One child-module record may use:
|
|
79
|
+
|
|
80
|
+
```markdown
|
|
81
|
+
## <Module>
|
|
82
|
+
- Path and manifest:
|
|
83
|
+
- Primary/additional types and facets:
|
|
84
|
+
- Responsibility and owner:
|
|
85
|
+
- Stable entrypoints:
|
|
86
|
+
- Direct module dependencies:
|
|
87
|
+
- Build/release unit:
|
|
88
|
+
- Lifecycle/source of truth:
|
|
89
|
+
- Deeper index unit:
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Granularity and relationships
|
|
93
|
+
|
|
94
|
+
Do not perform a repository-wide symbol scan as the container extraction. The
|
|
95
|
+
container owns topology; child units own reader-facing application/service/API
|
|
96
|
+
knowledge. Aggregate the registry when hundreds of children share the same
|
|
97
|
+
shape, but preserve exact identities and locators.
|
|
98
|
+
|
|
99
|
+
A workspace manifest, package registry, build graph, or release manifest is a
|
|
100
|
+
valid stable `entries` locator even when the container has no executable
|
|
101
|
+
process. Every registry page must retain exact child identities and locators;
|
|
102
|
+
a directory listing is not a module map.
|
|
103
|
+
|
|
104
|
+
Use manifest/build-graph evidence for dependency edges. Imports can supplement
|
|
105
|
+
but should not override declared workspace ownership or package boundaries.
|
|
106
|
+
|
|
107
|
+
## Template composition examples
|
|
108
|
+
|
|
109
|
+
- A workspace containing a Web app, API gateway, CLI, and generated client
|
|
110
|
+
produces one registry plus separately classified child units.
|
|
111
|
+
- A workspace with independent release groups reads the
|
|
112
|
+
`development-and-delivery.md` composer contract; retain the release map at
|
|
113
|
+
the container level and package-specific compatibility in each `sdk-library`
|
|
114
|
+
unit.
|
|
115
|
+
- A cross-module request flow reads `cross-module-chain.md` and receives its
|
|
116
|
+
own output owner when it spans several child units.
|
|
117
|
+
|
|
118
|
+
## Revise or stop when
|
|
119
|
+
|
|
120
|
+
- module discovery relies only on a broad filesystem scan;
|
|
121
|
+
- the plan treats all repository files as one index unit;
|
|
122
|
+
- child ownership or source-of-truth boundaries are ambiguous;
|
|
123
|
+
- generated/cache/vendor directories dominate projected output;
|
|
124
|
+
- dependencies are inferred solely from names without manifest or graph proof.
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: context.code-indexer.template.plugin-extension
|
|
3
|
+
kind: procedure
|
|
4
|
+
media-type: text/markdown
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Plugin and extension boundary template
|
|
8
|
+
|
|
9
|
+
Use for `plugin-extension`. This file owns the complete plugin contract
|
|
10
|
+
blueprint. CLI, SDK, and adapter templates should point here and only add their
|
|
11
|
+
module-specific command, public API, or mapping context.
|
|
12
|
+
|
|
13
|
+
## Evidence pass
|
|
14
|
+
|
|
15
|
+
Locate:
|
|
16
|
+
|
|
17
|
+
- discovery mechanism, manifest, registry, or installation contract;
|
|
18
|
+
- activation, deactivation, update, and removal lifecycle;
|
|
19
|
+
- contribution points, commands, hooks, providers, and host services;
|
|
20
|
+
- configuration, identity, compatibility, permissions, and isolation;
|
|
21
|
+
- failure containment, fallback, diagnostics, and version negotiation;
|
|
22
|
+
- public extension API and maintained examples when consumers implement it.
|
|
23
|
+
|
|
24
|
+
## Questions the knowledge must answer
|
|
25
|
+
|
|
26
|
+
1. How does the host discover, install, and activate an extension?
|
|
27
|
+
2. What may the extension contribute or call?
|
|
28
|
+
3. Which configuration, identity, permission, and compatibility rules apply?
|
|
29
|
+
4. How are failures isolated, surfaced, and recovered?
|
|
30
|
+
|
|
31
|
+
## Chapter blueprint
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
# <Plugin boundary>
|
|
35
|
+
## Host and extension responsibilities
|
|
36
|
+
## Discovery and installation
|
|
37
|
+
## Activation and removal lifecycle
|
|
38
|
+
## Contribution and capability contracts
|
|
39
|
+
## Configuration, permissions, and isolation
|
|
40
|
+
## Compatibility, failure, diagnostics, and recovery
|
|
41
|
+
## Source-backed host-to-extension relationships
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Granularity and stop conditions
|
|
45
|
+
|
|
46
|
+
Prefer one contract per host/extension model, with compact records for coherent
|
|
47
|
+
contribution families. Do not create separate copies under CLI, adapter, and
|
|
48
|
+
SDK pages. Every page must name concrete manifests, registries, hooks, or
|
|
49
|
+
capability identities and their source locators.
|
|
50
|
+
|
|
51
|
+
Revise or stop when discovery or activation is inferred, permissions and
|
|
52
|
+
isolation would be guessed, or examples describe an unsupported extension API.
|