@c4a/context-cli 0.7.5 → 0.7.9
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 +63 -2
- package/README.zh-CN.md +16 -0
- package/cli.js +132471 -111134
- package/docs/context-debug-event-v1.schema.json +3 -1
- package/docs/debug-tracing.md +17 -1
- package/indexers/bundles/context-code-indexer/SKILL.md +10 -1
- package/indexers/bundles/context-code-indexer/context-indexer.yaml +3102 -64
- package/indexers/bundles/context-code-indexer/references/article-catalog/adapter-integration-article-catalog.md +20 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/api-service-article-catalog.md +20 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/background-runtime-article-catalog.md +19 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/cli-tool-article-catalog.md +17 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/component-library-article-catalog.md +18 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/contract-source-article-catalog.md +17 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/data-sync-reconciliation-article-catalog.md +19 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/derived-generated-source-article-catalog.md +17 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/domain-service-article-catalog.md +23 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/event-consumer-article-catalog.md +19 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/gateway-facade-article-catalog.md +21 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/monorepo-container-article-catalog.md +17 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/plugin-extension-article-catalog.md +17 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/sdk-library-article-catalog.md +18 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/storage-repository-article-catalog.md +19 -0
- package/indexers/bundles/context-code-indexer/references/article-catalog/web-application-article-catalog.md +30 -0
- package/indexers/bundles/context-code-indexer/references/composers/public-contract.md +13 -1
- package/indexers/bundles/context-code-indexer/references/diagrams.md +122 -0
- package/indexers/bundles/context-code-indexer/references/indexer.md +184 -8
- package/indexers/bundles/context-code-indexer/references/visual-source-processing.md +42 -0
- package/indexers/bundles/context-code-indexer/templates/adapter-integration-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/adapter-integration-request-adaptation-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/adapter-integration-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/api-service-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/api-service-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/articles/c01.md +49 -0
- package/indexers/bundles/context-code-indexer/templates/articles/c02.md +36 -0
- package/indexers/bundles/context-code-indexer/templates/articles/c03.md +28 -0
- package/indexers/bundles/context-code-indexer/templates/articles/c04.md +29 -0
- package/indexers/bundles/context-code-indexer/templates/articles/c05.md +30 -0
- package/indexers/bundles/context-code-indexer/templates/articles/c07.md +51 -0
- package/indexers/bundles/context-code-indexer/templates/articles/d01.md +31 -0
- package/indexers/bundles/context-code-indexer/templates/articles/d02.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/d03.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/d04.md +38 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f01.md +50 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f02.md +33 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f03.md +38 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f04.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f05.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f06.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f07.md +31 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f08.md +36 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f09.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f10.md +32 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f11.md +39 -0
- package/indexers/bundles/context-code-indexer/templates/articles/f12.md +59 -0
- package/indexers/bundles/context-code-indexer/templates/articles/l01.md +38 -0
- package/indexers/bundles/context-code-indexer/templates/articles/l02.md +103 -0
- package/indexers/bundles/context-code-indexer/templates/articles/l03.md +92 -0
- package/indexers/bundles/context-code-indexer/templates/articles/l04.md +30 -0
- package/indexers/bundles/context-code-indexer/templates/articles/l05.md +50 -0
- package/indexers/bundles/context-code-indexer/templates/articles/q03.md +29 -0
- package/indexers/bundles/context-code-indexer/templates/articles/q05.md +29 -0
- package/indexers/bundles/context-code-indexer/templates/articles/q06.md +29 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s01.md +31 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s02.md +30 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s03.md +34 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s04.md +35 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s05.md +30 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s06.md +30 -0
- package/indexers/bundles/context-code-indexer/templates/articles/s07.md +33 -0
- package/indexers/bundles/context-code-indexer/templates/background-runtime-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/background-runtime-task-runtime-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/cli-tool-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/cli-tool-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/cli-tool-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/component-library-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/component-library-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/component-library-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/component-library.md +40 -3
- package/indexers/bundles/context-code-indexer/templates/contract-source-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/contract-source-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/contract-source.md +49 -0
- package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/data-sync-reconciliation-task-runtime-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/derived-generated-source-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/derived-generated-source-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/derived-generated-source.md +15 -0
- package/indexers/bundles/context-code-indexer/templates/domain-service-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/domain-service-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/event-consumer-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/event-consumer-task-runtime-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade-request-adaptation-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/monorepo-container-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/monorepo-container-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/monorepo-container.md +9 -0
- package/indexers/bundles/context-code-indexer/templates/plugin-extension-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/plugin-extension-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/plugin-extension-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/sdk-library-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/sdk-library-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/sdk-library-usage-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/storage-repository-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/storage-repository-public-api-reference.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/web-application-federation-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/web-application-maintenance-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/templates/web-application-page-task-guide.md +81 -0
- package/indexers/bundles/context-code-indexer/tests/fixtures/composers.json +1 -1
- package/indexers/bundles/context-code-indexer/tests/fixtures/scenarios.json +1 -1
- package/indexers/bundles/context-markdown-indexer/SKILL.md +7 -1
- package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +856 -15
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/decision-record-article-catalog.md +7 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/documentation-site-article-catalog.md +8 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/domain-reference-article-catalog.md +14 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/faq-support-article-catalog.md +8 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/incident-review-article-catalog.md +9 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/product-requirements-article-catalog.md +8 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/public-api-reference-article-catalog.md +10 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/release-migration-guide-article-catalog.md +11 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/runbook-article-catalog.md +12 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/standard-policy-article-catalog.md +10 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/technical-guide-article-catalog.md +20 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/test-validation-article-catalog.md +11 -0
- package/indexers/bundles/context-markdown-indexer/references/article-catalog/user-and-developer-guide-article-catalog.md +13 -0
- package/indexers/bundles/context-markdown-indexer/references/diagrams.md +122 -0
- package/indexers/bundles/context-markdown-indexer/references/editorial-policy.md +19 -29
- package/indexers/bundles/context-markdown-indexer/references/indexer.md +63 -2
- package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +22 -8
- package/indexers/bundles/context-markdown-indexer/references/visual-source-processing.md +42 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c01.md +37 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c02.md +34 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c03.md +26 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c04.md +27 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c05.md +28 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c06.md +28 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/c07.md +27 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/d01.md +29 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/d02.md +30 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/d03.md +30 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/d04.md +44 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/f01.md +30 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/f05.md +30 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/f06.md +30 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/f08.md +34 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/f09.md +30 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/l01.md +35 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/l02.md +101 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/l03.md +90 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/l04.md +28 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/l05.md +48 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q01.md +32 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q02.md +33 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q03.md +27 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q04.md +32 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q05.md +27 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q06.md +27 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/q07.md +32 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s01.md +29 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s02.md +27 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s03.md +31 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s04.md +33 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s05.md +28 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s06.md +28 -0
- package/indexers/bundles/context-markdown-indexer/templates/articles/s07.md +31 -0
- package/indexers/bundles/context-note-indexer/SKILL.md +16 -0
- package/indexers/bundles/context-note-indexer/context-indexer.yaml +1459 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/decision-record-article-catalog.md +7 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/domain-reference-article-catalog.md +14 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/faq-support-article-catalog.md +8 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/incident-review-article-catalog.md +9 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/product-requirements-article-catalog.md +8 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/runbook-article-catalog.md +12 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/technical-guide-article-catalog.md +20 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/test-validation-article-catalog.md +11 -0
- package/indexers/bundles/context-note-indexer/references/article-catalog/user-and-developer-guide-article-catalog.md +13 -0
- package/indexers/bundles/context-note-indexer/references/classification.md +55 -0
- package/indexers/bundles/context-note-indexer/references/customization.md +36 -0
- package/indexers/bundles/context-note-indexer/references/diagrams.md +122 -0
- package/indexers/bundles/context-note-indexer/references/extension-placement.md +57 -0
- package/indexers/bundles/context-note-indexer/references/indexer.md +43 -0
- package/indexers/bundles/context-note-indexer/references/updates-and-composition.md +37 -0
- package/indexers/bundles/context-note-indexer/references/visual-source-processing.md +42 -0
- package/indexers/bundles/context-note-indexer/references/writing.md +57 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c01.md +37 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c02.md +34 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c03.md +26 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c04.md +27 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c05.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c06.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/articles/c07.md +27 -0
- package/indexers/bundles/context-note-indexer/templates/articles/d01.md +29 -0
- package/indexers/bundles/context-note-indexer/templates/articles/d02.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/articles/d03.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/articles/d04.md +36 -0
- package/indexers/bundles/context-note-indexer/templates/articles/f01.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/articles/f06.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/articles/f08.md +34 -0
- package/indexers/bundles/context-note-indexer/templates/articles/f09.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/articles/l01.md +35 -0
- package/indexers/bundles/context-note-indexer/templates/articles/l02.md +101 -0
- package/indexers/bundles/context-note-indexer/templates/articles/l03.md +90 -0
- package/indexers/bundles/context-note-indexer/templates/articles/l04.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/articles/l05.md +48 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q01.md +32 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q02.md +33 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q03.md +27 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q04.md +32 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q05.md +27 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q06.md +27 -0
- package/indexers/bundles/context-note-indexer/templates/articles/q07.md +32 -0
- package/indexers/bundles/context-note-indexer/templates/articles/s01.md +29 -0
- package/indexers/bundles/context-note-indexer/templates/articles/s04.md +33 -0
- package/indexers/bundles/context-note-indexer/templates/articles/s05.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/articles/s06.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/articles/s07.md +31 -0
- package/indexers/bundles/context-note-indexer/templates/decision-record.md +33 -0
- package/indexers/bundles/context-note-indexer/templates/domain-reference.md +31 -0
- package/indexers/bundles/context-note-indexer/templates/faq-support.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/incident-review.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/product-requirements.md +29 -0
- package/indexers/bundles/context-note-indexer/templates/runbook.md +30 -0
- package/indexers/bundles/context-note-indexer/templates/technical-guide.md +31 -0
- package/indexers/bundles/context-note-indexer/templates/test-validation.md +28 -0
- package/indexers/bundles/context-note-indexer/templates/user-and-developer-guide.md +28 -0
- package/indexers/bundles/context-note-indexer/tests/fixtures/profiles.json +281 -0
- package/indexers/bundles/context-sessions-indexer/SKILL.md +16 -0
- package/indexers/bundles/context-sessions-indexer/context-indexer.yaml +1459 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/decision-record-article-catalog.md +7 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/domain-reference-article-catalog.md +14 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/faq-support-article-catalog.md +8 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/incident-review-article-catalog.md +9 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/product-requirements-article-catalog.md +8 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/runbook-article-catalog.md +12 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/technical-guide-article-catalog.md +20 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/test-validation-article-catalog.md +11 -0
- package/indexers/bundles/context-sessions-indexer/references/article-catalog/user-and-developer-guide-article-catalog.md +13 -0
- package/indexers/bundles/context-sessions-indexer/references/classification.md +56 -0
- package/indexers/bundles/context-sessions-indexer/references/customization.md +36 -0
- package/indexers/bundles/context-sessions-indexer/references/diagrams.md +122 -0
- package/indexers/bundles/context-sessions-indexer/references/extension-placement.md +63 -0
- package/indexers/bundles/context-sessions-indexer/references/indexer.md +48 -0
- package/indexers/bundles/context-sessions-indexer/references/updates-and-composition.md +37 -0
- package/indexers/bundles/context-sessions-indexer/references/visual-source-processing.md +42 -0
- package/indexers/bundles/context-sessions-indexer/references/writing.md +63 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c01.md +37 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c02.md +34 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c03.md +26 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c04.md +27 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c05.md +28 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c06.md +28 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/c07.md +27 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/d01.md +29 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/d02.md +30 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/d03.md +30 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/d04.md +36 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/f01.md +30 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/f06.md +30 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/f08.md +34 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/f09.md +30 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/l01.md +35 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/l02.md +101 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/l03.md +90 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/l04.md +28 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/l05.md +48 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q01.md +32 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q02.md +33 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q03.md +27 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q04.md +32 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q05.md +27 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q06.md +27 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/q07.md +32 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/s01.md +29 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/s04.md +33 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/s05.md +28 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/s06.md +28 -0
- package/indexers/bundles/context-sessions-indexer/templates/articles/s07.md +31 -0
- package/indexers/bundles/context-sessions-indexer/templates/decision-record.md +43 -0
- package/indexers/bundles/context-sessions-indexer/templates/domain-reference.md +31 -0
- package/indexers/bundles/context-sessions-indexer/templates/faq-support.md +33 -0
- package/indexers/bundles/context-sessions-indexer/templates/incident-review.md +37 -0
- package/indexers/bundles/context-sessions-indexer/templates/product-requirements.md +35 -0
- package/indexers/bundles/context-sessions-indexer/templates/runbook.md +32 -0
- package/indexers/bundles/context-sessions-indexer/templates/technical-guide.md +31 -0
- package/indexers/bundles/context-sessions-indexer/templates/test-validation.md +37 -0
- package/indexers/bundles/context-sessions-indexer/templates/user-and-developer-guide.md +31 -0
- package/indexers/bundles/context-sessions-indexer/tests/fixtures/profiles.json +281 -0
- package/indexers/contracts/profile-contract.json +657 -277
- package/indexers/release-manifest.json +1120 -32
- package/package.json +14 -12
- package/parserEntryWorker.js +34606 -0
- package/plugins/README.md +24 -6
- package/plugins/README_CN.md +21 -5
- package/plugins/VERSION +1 -1
- package/plugins/claude/.claude-plugin/plugin.json +14 -3
- package/plugins/claude/commands/context-inspect-search.md +159 -0
- package/plugins/claude/commands/context.md +375 -211
- package/plugins/claude/skills/context-indexer-create/SKILL.md +80 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/code-indexer-skill-authoring.md +180 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/indexer-manifest-example.md +103 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/indexer-provider-and-customization.md +471 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/indexer-skill-creation.md +99 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/markdown-indexer-skill-authoring.md +136 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/note.md +37 -0
- package/plugins/claude/skills/context-indexer-create/references/guides/sessions.md +50 -0
- package/plugins/claude/skills/context-indexer-create/references/reference/indexer-provider-protocol.md +854 -0
- package/plugins/codex/.codex-plugin/plugin.json +2 -2
- package/plugins/codex/skills/context/SKILL.md +372 -211
- package/plugins/codex/skills/context/agents/openai.yaml +2 -0
- package/plugins/codex/skills/context-indexer-create/SKILL.md +80 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/code-indexer-skill-authoring.md +180 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/indexer-manifest-example.md +103 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/indexer-provider-and-customization.md +471 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/indexer-skill-creation.md +99 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/markdown-indexer-skill-authoring.md +136 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/note.md +37 -0
- package/plugins/codex/skills/context-indexer-create/references/guides/sessions.md +50 -0
- package/plugins/codex/skills/context-indexer-create/references/reference/indexer-provider-protocol.md +854 -0
- package/plugins/codex/skills/context-inspect-search/SKILL.md +159 -0
- package/plugins/codex/skills/context-inspect-search/agents/openai.yaml +2 -0
- package/plugins/cursor/.cursor-plugin/plugin.json +21 -5
- package/plugins/cursor/commands/c4a-context-inspect-search.md +157 -0
- package/plugins/cursor/commands/c4a-context.md +371 -214
- package/plugins/cursor/skills/context-indexer-create/SKILL.md +80 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/code-indexer-skill-authoring.md +180 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/indexer-manifest-example.md +103 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/indexer-provider-and-customization.md +471 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/indexer-skill-creation.md +99 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/markdown-indexer-skill-authoring.md +136 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/note.md +37 -0
- package/plugins/cursor/skills/context-indexer-create/references/guides/sessions.md +50 -0
- package/plugins/cursor/skills/context-indexer-create/references/reference/indexer-provider-protocol.md +854 -0
- package/plugins/skills/context/SKILL.md +372 -211
- package/plugins/skills/context/agents/openai.yaml +2 -0
- package/plugins/skills/context-code-indexer/SKILL.md +10 -1
- package/plugins/skills/context-code-indexer/context-indexer.yaml +3102 -64
- package/plugins/skills/context-code-indexer/references/article-catalog/adapter-integration-article-catalog.md +20 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/api-service-article-catalog.md +20 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/background-runtime-article-catalog.md +19 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/cli-tool-article-catalog.md +17 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/component-library-article-catalog.md +18 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/contract-source-article-catalog.md +17 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/data-sync-reconciliation-article-catalog.md +19 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/derived-generated-source-article-catalog.md +17 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/domain-service-article-catalog.md +23 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/event-consumer-article-catalog.md +19 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/gateway-facade-article-catalog.md +21 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/monorepo-container-article-catalog.md +17 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/plugin-extension-article-catalog.md +17 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/sdk-library-article-catalog.md +18 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/storage-repository-article-catalog.md +19 -0
- package/plugins/skills/context-code-indexer/references/article-catalog/web-application-article-catalog.md +30 -0
- package/plugins/skills/context-code-indexer/references/composers/public-contract.md +13 -1
- package/plugins/skills/context-code-indexer/references/diagrams.md +122 -0
- package/plugins/skills/context-code-indexer/references/indexer.md +184 -8
- package/plugins/skills/context-code-indexer/references/visual-source-processing.md +42 -0
- package/plugins/skills/context-code-indexer/templates/adapter-integration-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/adapter-integration-request-adaptation-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/adapter-integration-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/api-service-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/api-service-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/articles/c01.md +49 -0
- package/plugins/skills/context-code-indexer/templates/articles/c02.md +36 -0
- package/plugins/skills/context-code-indexer/templates/articles/c03.md +28 -0
- package/plugins/skills/context-code-indexer/templates/articles/c04.md +29 -0
- package/plugins/skills/context-code-indexer/templates/articles/c05.md +30 -0
- package/plugins/skills/context-code-indexer/templates/articles/c07.md +51 -0
- package/plugins/skills/context-code-indexer/templates/articles/d01.md +31 -0
- package/plugins/skills/context-code-indexer/templates/articles/d02.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/d03.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/d04.md +38 -0
- package/plugins/skills/context-code-indexer/templates/articles/f01.md +50 -0
- package/plugins/skills/context-code-indexer/templates/articles/f02.md +33 -0
- package/plugins/skills/context-code-indexer/templates/articles/f03.md +38 -0
- package/plugins/skills/context-code-indexer/templates/articles/f04.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/f05.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/f06.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/f07.md +31 -0
- package/plugins/skills/context-code-indexer/templates/articles/f08.md +36 -0
- package/plugins/skills/context-code-indexer/templates/articles/f09.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/f10.md +32 -0
- package/plugins/skills/context-code-indexer/templates/articles/f11.md +39 -0
- package/plugins/skills/context-code-indexer/templates/articles/f12.md +59 -0
- package/plugins/skills/context-code-indexer/templates/articles/l01.md +38 -0
- package/plugins/skills/context-code-indexer/templates/articles/l02.md +103 -0
- package/plugins/skills/context-code-indexer/templates/articles/l03.md +92 -0
- package/plugins/skills/context-code-indexer/templates/articles/l04.md +30 -0
- package/plugins/skills/context-code-indexer/templates/articles/l05.md +50 -0
- package/plugins/skills/context-code-indexer/templates/articles/q03.md +29 -0
- package/plugins/skills/context-code-indexer/templates/articles/q05.md +29 -0
- package/plugins/skills/context-code-indexer/templates/articles/q06.md +29 -0
- package/plugins/skills/context-code-indexer/templates/articles/s01.md +31 -0
- package/plugins/skills/context-code-indexer/templates/articles/s02.md +30 -0
- package/plugins/skills/context-code-indexer/templates/articles/s03.md +34 -0
- package/plugins/skills/context-code-indexer/templates/articles/s04.md +35 -0
- package/plugins/skills/context-code-indexer/templates/articles/s05.md +30 -0
- package/plugins/skills/context-code-indexer/templates/articles/s06.md +30 -0
- package/plugins/skills/context-code-indexer/templates/articles/s07.md +33 -0
- package/plugins/skills/context-code-indexer/templates/background-runtime-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/background-runtime-task-runtime-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/cli-tool-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/cli-tool-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/cli-tool-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/component-library-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/component-library-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/component-library-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/component-library.md +40 -3
- package/plugins/skills/context-code-indexer/templates/contract-source-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/contract-source-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/contract-source.md +49 -0
- package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/data-sync-reconciliation-task-runtime-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/derived-generated-source-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/derived-generated-source-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/derived-generated-source.md +15 -0
- package/plugins/skills/context-code-indexer/templates/domain-service-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/domain-service-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/event-consumer-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/event-consumer-task-runtime-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade-request-adaptation-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/monorepo-container-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/monorepo-container-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/monorepo-container.md +9 -0
- package/plugins/skills/context-code-indexer/templates/plugin-extension-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/plugin-extension-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/plugin-extension-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/sdk-library-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/sdk-library-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/sdk-library-usage-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/storage-repository-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/storage-repository-public-api-reference.md +81 -0
- package/plugins/skills/context-code-indexer/templates/web-application-federation-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/web-application-maintenance-guide.md +81 -0
- package/plugins/skills/context-code-indexer/templates/web-application-page-task-guide.md +81 -0
- package/plugins/skills/context-code-indexer/tests/fixtures/composers.json +1 -1
- package/plugins/skills/context-code-indexer/tests/fixtures/scenarios.json +1 -1
- package/plugins/skills/context-indexer-create/SKILL.md +80 -0
- package/plugins/skills/context-indexer-create/references/guides/code-indexer-skill-authoring.md +180 -0
- package/plugins/skills/context-indexer-create/references/guides/indexer-manifest-example.md +103 -0
- package/plugins/skills/context-indexer-create/references/guides/indexer-provider-and-customization.md +471 -0
- package/plugins/skills/context-indexer-create/references/guides/indexer-skill-creation.md +99 -0
- package/plugins/skills/context-indexer-create/references/guides/markdown-indexer-skill-authoring.md +136 -0
- package/plugins/skills/context-indexer-create/references/guides/note.md +37 -0
- package/plugins/skills/context-indexer-create/references/guides/sessions.md +50 -0
- package/plugins/skills/context-indexer-create/references/reference/indexer-provider-protocol.md +854 -0
- package/plugins/skills/context-inspect-search/SKILL.md +159 -0
- package/plugins/skills/context-inspect-search/agents/openai.yaml +2 -0
- package/plugins/skills/context-markdown-indexer/SKILL.md +7 -1
- package/plugins/skills/context-markdown-indexer/context-indexer.yaml +856 -15
- package/plugins/skills/context-markdown-indexer/references/article-catalog/decision-record-article-catalog.md +7 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/documentation-site-article-catalog.md +8 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/domain-reference-article-catalog.md +14 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/faq-support-article-catalog.md +8 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/incident-review-article-catalog.md +9 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/product-requirements-article-catalog.md +8 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/public-api-reference-article-catalog.md +10 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/release-migration-guide-article-catalog.md +11 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/runbook-article-catalog.md +12 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/standard-policy-article-catalog.md +10 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/technical-guide-article-catalog.md +20 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/test-validation-article-catalog.md +11 -0
- package/plugins/skills/context-markdown-indexer/references/article-catalog/user-and-developer-guide-article-catalog.md +13 -0
- package/plugins/skills/context-markdown-indexer/references/diagrams.md +122 -0
- package/plugins/skills/context-markdown-indexer/references/editorial-policy.md +19 -29
- package/plugins/skills/context-markdown-indexer/references/indexer.md +63 -2
- package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +22 -8
- package/plugins/skills/context-markdown-indexer/references/visual-source-processing.md +42 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c01.md +37 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c02.md +34 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c03.md +26 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c04.md +27 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c05.md +28 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c06.md +28 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/c07.md +27 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/d01.md +29 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/d02.md +30 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/d03.md +30 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/d04.md +44 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/f01.md +30 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/f05.md +30 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/f06.md +30 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/f08.md +34 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/f09.md +30 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/l01.md +35 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/l02.md +101 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/l03.md +90 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/l04.md +28 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/l05.md +48 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q01.md +32 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q02.md +33 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q03.md +27 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q04.md +32 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q05.md +27 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q06.md +27 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/q07.md +32 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s01.md +29 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s02.md +27 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s03.md +31 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s04.md +33 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s05.md +28 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s06.md +28 -0
- package/plugins/skills/context-markdown-indexer/templates/articles/s07.md +31 -0
- package/plugins/skills/context-note-indexer/SKILL.md +16 -0
- package/plugins/skills/context-note-indexer/context-indexer.yaml +1459 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/decision-record-article-catalog.md +7 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/domain-reference-article-catalog.md +14 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/faq-support-article-catalog.md +8 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/incident-review-article-catalog.md +9 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/product-requirements-article-catalog.md +8 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/runbook-article-catalog.md +12 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/technical-guide-article-catalog.md +20 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/test-validation-article-catalog.md +11 -0
- package/plugins/skills/context-note-indexer/references/article-catalog/user-and-developer-guide-article-catalog.md +13 -0
- package/plugins/skills/context-note-indexer/references/classification.md +55 -0
- package/plugins/skills/context-note-indexer/references/customization.md +36 -0
- package/plugins/skills/context-note-indexer/references/diagrams.md +122 -0
- package/plugins/skills/context-note-indexer/references/extension-placement.md +57 -0
- package/plugins/skills/context-note-indexer/references/indexer.md +43 -0
- package/plugins/skills/context-note-indexer/references/updates-and-composition.md +37 -0
- package/plugins/skills/context-note-indexer/references/visual-source-processing.md +42 -0
- package/plugins/skills/context-note-indexer/references/writing.md +57 -0
- package/plugins/skills/context-note-indexer/templates/articles/c01.md +37 -0
- package/plugins/skills/context-note-indexer/templates/articles/c02.md +34 -0
- package/plugins/skills/context-note-indexer/templates/articles/c03.md +26 -0
- package/plugins/skills/context-note-indexer/templates/articles/c04.md +27 -0
- package/plugins/skills/context-note-indexer/templates/articles/c05.md +28 -0
- package/plugins/skills/context-note-indexer/templates/articles/c06.md +28 -0
- package/plugins/skills/context-note-indexer/templates/articles/c07.md +27 -0
- package/plugins/skills/context-note-indexer/templates/articles/d01.md +29 -0
- package/plugins/skills/context-note-indexer/templates/articles/d02.md +30 -0
- package/plugins/skills/context-note-indexer/templates/articles/d03.md +30 -0
- package/plugins/skills/context-note-indexer/templates/articles/d04.md +36 -0
- package/plugins/skills/context-note-indexer/templates/articles/f01.md +30 -0
- package/plugins/skills/context-note-indexer/templates/articles/f06.md +30 -0
- package/plugins/skills/context-note-indexer/templates/articles/f08.md +34 -0
- package/plugins/skills/context-note-indexer/templates/articles/f09.md +30 -0
- package/plugins/skills/context-note-indexer/templates/articles/l01.md +35 -0
- package/plugins/skills/context-note-indexer/templates/articles/l02.md +101 -0
- package/plugins/skills/context-note-indexer/templates/articles/l03.md +90 -0
- package/plugins/skills/context-note-indexer/templates/articles/l04.md +28 -0
- package/plugins/skills/context-note-indexer/templates/articles/l05.md +48 -0
- package/plugins/skills/context-note-indexer/templates/articles/q01.md +32 -0
- package/plugins/skills/context-note-indexer/templates/articles/q02.md +33 -0
- package/plugins/skills/context-note-indexer/templates/articles/q03.md +27 -0
- package/plugins/skills/context-note-indexer/templates/articles/q04.md +32 -0
- package/plugins/skills/context-note-indexer/templates/articles/q05.md +27 -0
- package/plugins/skills/context-note-indexer/templates/articles/q06.md +27 -0
- package/plugins/skills/context-note-indexer/templates/articles/q07.md +32 -0
- package/plugins/skills/context-note-indexer/templates/articles/s01.md +29 -0
- package/plugins/skills/context-note-indexer/templates/articles/s04.md +33 -0
- package/plugins/skills/context-note-indexer/templates/articles/s05.md +28 -0
- package/plugins/skills/context-note-indexer/templates/articles/s06.md +28 -0
- package/plugins/skills/context-note-indexer/templates/articles/s07.md +31 -0
- package/plugins/skills/context-note-indexer/templates/decision-record.md +33 -0
- package/plugins/skills/context-note-indexer/templates/domain-reference.md +31 -0
- package/plugins/skills/context-note-indexer/templates/faq-support.md +30 -0
- package/plugins/skills/context-note-indexer/templates/incident-review.md +28 -0
- package/plugins/skills/context-note-indexer/templates/product-requirements.md +29 -0
- package/plugins/skills/context-note-indexer/templates/runbook.md +30 -0
- package/plugins/skills/context-note-indexer/templates/technical-guide.md +31 -0
- package/plugins/skills/context-note-indexer/templates/test-validation.md +28 -0
- package/plugins/skills/context-note-indexer/templates/user-and-developer-guide.md +28 -0
- package/plugins/skills/context-note-indexer/tests/fixtures/profiles.json +281 -0
- package/plugins/skills/context-sessions-indexer/SKILL.md +16 -0
- package/plugins/skills/context-sessions-indexer/context-indexer.yaml +1459 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/decision-record-article-catalog.md +7 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/domain-reference-article-catalog.md +14 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/faq-support-article-catalog.md +8 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/incident-review-article-catalog.md +9 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/product-requirements-article-catalog.md +8 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/runbook-article-catalog.md +12 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/technical-guide-article-catalog.md +20 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/test-validation-article-catalog.md +11 -0
- package/plugins/skills/context-sessions-indexer/references/article-catalog/user-and-developer-guide-article-catalog.md +13 -0
- package/plugins/skills/context-sessions-indexer/references/classification.md +56 -0
- package/plugins/skills/context-sessions-indexer/references/customization.md +36 -0
- package/plugins/skills/context-sessions-indexer/references/diagrams.md +122 -0
- package/plugins/skills/context-sessions-indexer/references/extension-placement.md +63 -0
- package/plugins/skills/context-sessions-indexer/references/indexer.md +48 -0
- package/plugins/skills/context-sessions-indexer/references/updates-and-composition.md +37 -0
- package/plugins/skills/context-sessions-indexer/references/visual-source-processing.md +42 -0
- package/plugins/skills/context-sessions-indexer/references/writing.md +63 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c01.md +37 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c02.md +34 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c03.md +26 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c04.md +27 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c05.md +28 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c06.md +28 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/c07.md +27 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/d01.md +29 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/d02.md +30 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/d03.md +30 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/d04.md +36 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/f01.md +30 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/f06.md +30 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/f08.md +34 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/f09.md +30 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/l01.md +35 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/l02.md +101 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/l03.md +90 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/l04.md +28 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/l05.md +48 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q01.md +32 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q02.md +33 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q03.md +27 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q04.md +32 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q05.md +27 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q06.md +27 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/q07.md +32 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/s01.md +29 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/s04.md +33 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/s05.md +28 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/s06.md +28 -0
- package/plugins/skills/context-sessions-indexer/templates/articles/s07.md +31 -0
- package/plugins/skills/context-sessions-indexer/templates/decision-record.md +43 -0
- package/plugins/skills/context-sessions-indexer/templates/domain-reference.md +31 -0
- package/plugins/skills/context-sessions-indexer/templates/faq-support.md +33 -0
- package/plugins/skills/context-sessions-indexer/templates/incident-review.md +37 -0
- package/plugins/skills/context-sessions-indexer/templates/product-requirements.md +35 -0
- package/plugins/skills/context-sessions-indexer/templates/runbook.md +32 -0
- package/plugins/skills/context-sessions-indexer/templates/technical-guide.md +31 -0
- package/plugins/skills/context-sessions-indexer/templates/test-validation.md +37 -0
- package/plugins/skills/context-sessions-indexer/templates/user-and-developer-guide.md +31 -0
- package/plugins/skills/context-sessions-indexer/tests/fixtures/profiles.json +281 -0
- package/providers/context/actions/advance-knowledge-maintenance.yaml +5 -0
- package/providers/context/actions/author-approved-revision.yaml +6 -0
- package/providers/context/actions/finish-rollback.yaml +5 -0
- package/providers/context/actions/inspect-source-update.yaml +6 -0
- package/providers/context/actions/inspect-task-recovery.yaml +5 -0
- package/providers/context/actions/record-workspace-version.yaml +5 -0
- package/providers/context/actions/register-source-batch.yaml +1 -1
- package/providers/context/actions/repair-project-entry.yaml +9 -0
- package/providers/context/actions/resume-workspace-task.yaml +5 -0
- package/providers/context/codes.yaml +11 -0
- package/providers/context/graphs/indexer.yaml +93 -2
- package/providers/context/graphs/workspace.yaml +86 -6
- package/providers/context/manifest.json +371 -59
- package/providers/context/provider.yaml +1 -1
- package/providers/context/resources/contracts/indexer-provider-guide.yaml +6 -0
- package/providers/context/resources/contracts/indexer-registry-bootstrap.yaml +6 -0
- package/providers/context/resources/diagnostics/verification.md +6 -4
- package/providers/context/resources/dialogue/knowledge-review.md +16 -9
- package/providers/context/resources/dialogue/package-output.md +18 -5
- package/providers/context/resources/dialogue/source-boundary.md +12 -2
- package/providers/context/resources/dialogue/workflow-mode-after-creation.md +15 -17
- package/providers/context/resources/manuals/guides/knowledge-updates.md +428 -0
- package/providers/context/resources/manuals/guides/lark-resources.md +5 -1
- package/providers/context/resources/manuals/guides/note.md +43 -0
- package/providers/context/resources/manuals/guides/package-outputs.md +231 -60
- package/providers/context/resources/manuals/guides/sessions.md +56 -0
- package/providers/context/resources/manuals/guides/workspace-commit.md +51 -0
- package/providers/context/resources/manuals/guides/workspace-prepare.md +78 -0
- package/providers/context/resources/manuals/guides/workspace-restore.md +65 -0
- package/providers/context/resources/manuals/reference/code-extractors.md +57 -0
- package/providers/context/resources/manuals/reference/package-templates.md +10 -9
- package/providers/context/resources/manuals/reference/project-api.md +100 -13
- package/providers/context/resources/manuals/reference/template-variables.md +7 -7
- package/providers/context/resources/procedures/approved-revision.md +159 -0
- package/providers/context/resources/procedures/close-and-build.md +58 -1
- package/providers/context/resources/procedures/homogeneous-source-review.md +123 -0
- package/providers/context/resources/procedures/knowledge-maintenance.md +68 -0
- package/providers/context/resources/procedures/knowledge-review.md +69 -6
- package/providers/context/resources/procedures/knowledge-updates.md +428 -0
- package/providers/context/resources/procedures/note.md +43 -0
- package/providers/context/resources/procedures/package-output.md +20 -1
- package/providers/context/resources/procedures/parallel-agent-batch.md +140 -0
- package/providers/context/resources/procedures/project-configuration.md +6 -0
- package/providers/context/resources/procedures/sessions.md +56 -0
- package/providers/context/resources/procedures/source-boundary.md +24 -1
- package/providers/context/resources/procedures/source-capture-detailed.md +36 -2
- package/providers/context/resources/procedures/source-update.md +50 -0
- package/providers/context/resources/procedures/task-recovery.md +71 -0
- package/providers/context/resources/procedures/verify-and-repair.md +5 -0
- package/providers/context/resources/procedures/work-start-report.md +419 -0
- package/providers/context/resources/procedures/workspace-commit.md +51 -0
- package/providers/context/resources/procedures/workspace-prepare.md +78 -0
- package/providers/context/resources/procedures/workspace-restore.md +65 -0
- package/providers/context/resources/templates/indexer-agent-worker.md +67 -0
- package/providers/context/resources/templates/recovery-issue.md +54 -0
- package/providers/context/resources/templates/work-start-report.md +302 -0
- package/providers/context/schemas/approved-revision-result.schema.json +88 -0
- package/providers/context/schemas/indexer-agent-step-result.schema.json +2232 -318
- package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +1 -2
- package/providers/context/schemas/indexer-registry-bootstrap.schema.json +227 -0
- package/providers/context/schemas/source-batch-input.schema.json +15 -8
- package/providers/context/schemas/source-update-result.schema.json +83 -0
- package/providers/context/skills/configure-indexer-providers/SKILL.md +70 -5
- package/providers/context/skills/configure-indexer-providers/references/guides/code-indexer-skill-authoring.md +180 -0
- package/providers/context/skills/configure-indexer-providers/references/guides/indexer-provider-and-customization.md +471 -0
- package/providers/context/skills/configure-indexer-providers/references/guides/markdown-indexer-skill-authoring.md +136 -0
- package/providers/context/skills/configure-indexer-providers/references/guides/note.md +37 -0
- package/providers/context/skills/configure-indexer-providers/references/guides/sessions.md +50 -0
- package/providers/context/skills/configure-indexer-providers/references/reference/indexer-provider-protocol.md +854 -0
- package/providers/context/skills/prepare-indexer-customization-project/SKILL.md +1 -1
- package/providers/context/skills/propose-indexer-customization/SKILL.md +1 -1
- package/providers/context/skills/record-workspace-version/SKILL.md +46 -0
- package/providers/context/skills/recover-workspace/SKILL.md +15 -0
- package/providers/context/skills/resolve-current-indexer-gate/SKILL.md +33 -1
- package/providers/context/skills/run-indexer-agent-step/SKILL.md +403 -26
- package/providers/context/skills/run-indexer-lifecycle/SKILL.md +188 -1
- package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +60 -0
|
@@ -0,0 +1,854 @@
|
|
|
1
|
+
# Indexer Provider protocol
|
|
2
|
+
|
|
3
|
+
Context defines one Provider manifest, `context-indexer.yaml`, with protocol
|
|
4
|
+
`context.indexer.provider/v1`. Code, Markdown, Note and Sessions Providers use the same field
|
|
5
|
+
tree; `domains`, profiles and declared operations describe their applicable
|
|
6
|
+
inputs.
|
|
7
|
+
|
|
8
|
+
This page documents the protocol surface currently exposed by `@c4a/context`.
|
|
9
|
+
Use the current CLI Route for executable inputs, schemas and selected resources.
|
|
10
|
+
A protocol validator exported by the SDK is not a separate production workflow.
|
|
11
|
+
|
|
12
|
+
## Articles supported by approved knowledge
|
|
13
|
+
|
|
14
|
+
An article plan may declare `knowledge_dependencies`: stable `artifact_ref`,
|
|
15
|
+
optional `section_refs` (empty means the approved article), and `required`.
|
|
16
|
+
Use references supplied by Context; reader titles and output paths are not
|
|
17
|
+
article identities. Each article keeps its existing primary subject and owned
|
|
18
|
+
members. Referencing another article does not assign its members again.
|
|
19
|
+
|
|
20
|
+
The current Partition/Author workflow delivers ready upstream articles before
|
|
21
|
+
dependent required articles. An unavailable dependency remains visible in the
|
|
22
|
+
structure preview; `request-adjustment` returns to planning. It cannot finish
|
|
23
|
+
as an empty Author wave. Optional Composer output does not satisfy a required
|
|
24
|
+
article plan.
|
|
25
|
+
|
|
26
|
+
Review saves the approved fact payloads, evidence coordinates and versions with
|
|
27
|
+
the approved Markdown transaction. These remain in `knowledge/structure.yaml`
|
|
28
|
+
after close and temporary-cache cleanup. Author receives authorized supporting
|
|
29
|
+
facts separately from approved interpretation. Current source captures, the
|
|
30
|
+
Provider's accepted evidence kinds and the approved article version constrain
|
|
31
|
+
that projection. A stored snapshot alone never expands source access.
|
|
32
|
+
|
|
33
|
+
Previously approved dependencies can reuse their registered source reader even
|
|
34
|
+
when that source has no owned Partition group in the current wave. Only the
|
|
35
|
+
referenced authorized files enter the supporting projection. Missing or changed
|
|
36
|
+
source files remain an upstream update task.
|
|
37
|
+
|
|
38
|
+
An approved dependency change produces a verification warning for downstream
|
|
39
|
+
articles. Use the existing `context revise` action on an affected article; its
|
|
40
|
+
current route exposes `knowledge_input` with supporting facts and interpretations.
|
|
41
|
+
Review accepts the refreshed supporting version even when the Agent confirms
|
|
42
|
+
that the wording can stay the same. A plain edit with unavailable support does
|
|
43
|
+
not clear the warning. `--regenerate` remains the existing program-block rebuild
|
|
44
|
+
option, not a prerequisite for revising a prose synthesis.
|
|
45
|
+
|
|
46
|
+
Writing style, chapter drift and ordinary Provider version differences remain
|
|
47
|
+
guidance. Changed source/approval identities invalidate an in-flight supporting
|
|
48
|
+
projection; they are not semantic content judgments.
|
|
49
|
+
|
|
50
|
+
## Current CLI Author batches
|
|
51
|
+
|
|
52
|
+
Use the current Route's task keys and supplied scaffold. Within a CLI batch,
|
|
53
|
+
`group_key` may be omitted: preview and completion inherit it from the selected
|
|
54
|
+
current task. An explicitly different group is rejected. Standalone SDK semantic
|
|
55
|
+
results still require `group_key`. Intent and eligible policy use the existing
|
|
56
|
+
page-plan defaults; changing a page's purpose is not a metadata repair.
|
|
57
|
+
|
|
58
|
+
The inventory reading joins exact member/fact identities to parser names, kinds
|
|
59
|
+
and explicit `propsType` values. These are navigation references, not proof that
|
|
60
|
+
a symbol is public or a member has been covered. Keep semantic dispositions and
|
|
61
|
+
source evidence explicit.
|
|
62
|
+
|
|
63
|
+
On a stale revision, the CLI exposes a current Route snapshot and current tasks,
|
|
64
|
+
plus accepted identities available from the current main ledger and its Composers.
|
|
65
|
+
Task keys are local to each Route. Compare stable workset/request identities,
|
|
66
|
+
read the new Route and do not replay accepted work. Missing historical records
|
|
67
|
+
are not evidence that old work is unaccepted.
|
|
68
|
+
|
|
69
|
+
## Resources and execution
|
|
70
|
+
|
|
71
|
+
A Provider may contain a controlled program, profile-bound instructions,
|
|
72
|
+
templates, an activation detector and an authoring inspector. Executable
|
|
73
|
+
resources use only:
|
|
74
|
+
|
|
75
|
+
```yaml
|
|
76
|
+
execution:
|
|
77
|
+
runtime: node
|
|
78
|
+
entry: scripts/index.mjs
|
|
79
|
+
args: [--format=json]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
`entry` is a portable path inside the verified Bundle. `args` are literal
|
|
83
|
+
arguments. A free-form command, shell expression, environment interpolation,
|
|
84
|
+
absolute path or parent traversal is invalid.
|
|
85
|
+
|
|
86
|
+
The CLI never launches an executable from a discovered Skill installation
|
|
87
|
+
directory. A Host or the CLI first resolves an exact Provider envelope, verifies
|
|
88
|
+
the complete file ledger, and copies it to a content-addressed runtime stage.
|
|
89
|
+
The controlled launch then revalidates that stage and resolves the declared
|
|
90
|
+
entry there with `shell: false` and an empty inherited environment.
|
|
91
|
+
|
|
92
|
+
Allowlisted first-party and verified Bundle programs may enter the trusted
|
|
93
|
+
path directly. Every other Provider program, and every project-local program
|
|
94
|
+
even when it extends an allowlisted Provider, requires an exact
|
|
95
|
+
`context.indexer.program-authorization/v1` receipt from the independent
|
|
96
|
+
program-execution authority. The receipt binds the project, Provider
|
|
97
|
+
fingerprint and manifest, program origin/path/content digest, structured
|
|
98
|
+
execution, requested capabilities, fixed dependencies, source scope, limits
|
|
99
|
+
and policy digest. A local program is restricted to
|
|
100
|
+
`src/indexer/<indexer-id>/index.ts`; the CLI reads a regular non-symlink file
|
|
101
|
+
from the workspace before producing its report.
|
|
102
|
+
|
|
103
|
+
The controlled invocation rechecks the complete receipt and program identity.
|
|
104
|
+
Changing local bytes, the Provider Bundle, entry or arguments, capabilities,
|
|
105
|
+
dependencies, scope or limits invalidates the authorization. An ordinary
|
|
106
|
+
managed authority cannot issue this receipt, and the receipt always records
|
|
107
|
+
`sandboxed_program: false`: it authorizes trusted execution but does not claim
|
|
108
|
+
malicious-code isolation.
|
|
109
|
+
|
|
110
|
+
Optional external reads are declared separately under
|
|
111
|
+
`provides.tool_sources[]`. Each declaration contains only a stable id, a
|
|
112
|
+
versioned Host handler and request protocol, the fixed
|
|
113
|
+
`context.indexer.tool-snapshot/v1` output protocol, a closed operation list and
|
|
114
|
+
`optional: true`. It cannot contain an executable path or command. The
|
|
115
|
+
declaration is copied into the Agent-visible Skill capability and the final
|
|
116
|
+
Provider composition plan with its owning Provider layer; it does not grant
|
|
117
|
+
execution authority. The Host validates and executes its own installed adapter,
|
|
118
|
+
while Context validates the resulting tool snapshot and keeps the local parser
|
|
119
|
+
baseline independent from optional tool availability.
|
|
120
|
+
|
|
121
|
+
## Two-stage selection validation
|
|
122
|
+
|
|
123
|
+
`validateIndexerSelectionStatic` accepts only the proposed registry. It closes
|
|
124
|
+
requirement ownership, read scope, profile composition, portable distribution,
|
|
125
|
+
exact Provider identity/version/integrity and the data shape of stable config.
|
|
126
|
+
Its output is a canonical list of Provider resolution requests. This phase does
|
|
127
|
+
not resolve, read, stage or execute a Provider resource.
|
|
128
|
+
|
|
129
|
+
After the resolver returns and the CLI creates a content-addressed stage,
|
|
130
|
+
`validateIndexerSelectionFinal` consumes the exact static report. It rechecks
|
|
131
|
+
the resolved envelope and actual staged file ledger, loads the sole Provider
|
|
132
|
+
manifest, verifies profile/operation/composer/extension bindings, validates
|
|
133
|
+
config against the Bundle's closed data-only schema, binds the project-local
|
|
134
|
+
customization fingerprint and requires a policy digest for executable
|
|
135
|
+
resources. Missing, duplicate, stale or extra inputs fail closed.
|
|
136
|
+
|
|
137
|
+
Selection validation is not an upgrade gate on an instruction-only bundled
|
|
138
|
+
Provider. On resume, the CLI resolves that Provider by Skill and portable
|
|
139
|
+
distribution from the current installation, checks the required capabilities,
|
|
140
|
+
and refreshes instruction delivery without comparing it to the registry's
|
|
141
|
+
historical version/integrity. Compatible persisted tasks keep their original
|
|
142
|
+
request/result identities. The current Route revision still prevents stale
|
|
143
|
+
submissions. This does not change staged program execution authorization or
|
|
144
|
+
allow results to be reused across changed source, config or result contracts.
|
|
145
|
+
|
|
146
|
+
The final stable report excludes transport paths, delivery timestamps and
|
|
147
|
+
runtime receipt digests. Those values remain in a separate runtime receipt
|
|
148
|
+
projection, so rematerializing identical content does not make the selection
|
|
149
|
+
stale. The workflow Route must use the static report as the hard predecessor of
|
|
150
|
+
resolution; the protocol functions alone do not authorize Host materialization.
|
|
151
|
+
|
|
152
|
+
The only default persistent selection authority is `src/indexers.yaml`.
|
|
153
|
+
Distribution locators are portable identities such as `cli-bundled://`,
|
|
154
|
+
`plugin://`, `workspace://`, `package://` or `marketplace://`; a discovered
|
|
155
|
+
Skill installation path and a runtime transport/stage path never enter the
|
|
156
|
+
registry or stable report. The workspace persistence audit rejects the legacy
|
|
157
|
+
`package.json.context.codeIndex.extensions` field. Provider-only projects also
|
|
158
|
+
cannot persist a `src/indexer/` directory; declared local customization is
|
|
159
|
+
limited to the fixed project-relative resource set.
|
|
160
|
+
|
|
161
|
+
Minimal local customization runs as a resumable subloop. An Agent draft must
|
|
162
|
+
consume a final CLI capability-gap proof. The CLI validates and
|
|
163
|
+
content-address stages the draft, then project preparation revalidates the
|
|
164
|
+
target selection and exact staged Providers before creating a CAS-bound
|
|
165
|
+
proposal. Project-local programs stop for independent execution authorization;
|
|
166
|
+
dependency authorization creates a new locked successor proposal instead of a
|
|
167
|
+
detached result. After the single transactional apply, the CLI records a
|
|
168
|
+
durable apply observation, verifies every target digest, reruns finalized
|
|
169
|
+
selection validation, and returns the applied registry for one final static
|
|
170
|
+
selection audit.
|
|
171
|
+
|
|
172
|
+
## Skill capability and Provider composition
|
|
173
|
+
|
|
174
|
+
Context normalizes every verified manifest to
|
|
175
|
+
`context.indexer.skill-capability/v1`. This Agent-visible view contains the
|
|
176
|
+
Skill's profiles, operations, accepted extension fragments, source roles,
|
|
177
|
+
logical units, composers, program capabilities and supported customization
|
|
178
|
+
steps. It is canonical and content-digested; it does not expose a discovered
|
|
179
|
+
installation path or grant execution authority.
|
|
180
|
+
|
|
181
|
+
Final selection builds one
|
|
182
|
+
`context.indexer.provider-composition-plan/v1` for each Indexer owner. The plan
|
|
183
|
+
binds every active profile to its exact Provider layer, keeps one primary
|
|
184
|
+
authority for each enabled operation, admits only declared pre-authority
|
|
185
|
+
fragments, merges identical source-role and logical-unit capabilities, and
|
|
186
|
+
rejects conflicting logical-unit definitions. Provider instruction resources
|
|
187
|
+
remain independently attributed instead of being concatenated implicitly,
|
|
188
|
+
layer configs remain separately digested, and an exact project template
|
|
189
|
+
override replaces only its matching template id/profile. Input array order is
|
|
190
|
+
not authority: all projections use canonical identity sorting.
|
|
191
|
+
|
|
192
|
+
The complete composition plans are part of the stable final selection report,
|
|
193
|
+
so downstream workset and authoring steps consume a validated composition
|
|
194
|
+
rather than rediscovering Provider precedence.
|
|
195
|
+
|
|
196
|
+
## Partition strategy authority
|
|
197
|
+
|
|
198
|
+
A Provider may declare profile-bound partition strategies under
|
|
199
|
+
`provides.partition_strategies[]` with a stable id and non-negative priority.
|
|
200
|
+
The manifest does not provide its own authority digest. Context derives the
|
|
201
|
+
implementation identity from the verified Bundle and manifest; a validated
|
|
202
|
+
local customization uses its exact file digest, while a CLI builtin is bound to
|
|
203
|
+
the current CLI release digest.
|
|
204
|
+
|
|
205
|
+
`context.indexer.partition-strategy-resolution/v1` binds the Indexer and
|
|
206
|
+
registry fingerprints, selected profiles, Provider integrity, optional local
|
|
207
|
+
customization and every strategy authority. A local declaration with the same
|
|
208
|
+
id replaces only that Provider strategy. All effective project strategies are
|
|
209
|
+
ordered by declared priority and id before any CLI builtin. A CLI builtin
|
|
210
|
+
cannot shadow a project strategy, and an undeclared profile or ambiguous
|
|
211
|
+
per-profile priority fails validation. The order-sensitive strategy-set digest
|
|
212
|
+
is copied into the partition workset, so reordering or changing any authority
|
|
213
|
+
makes prior work stale.
|
|
214
|
+
|
|
215
|
+
## Source roles and Artifact policy
|
|
216
|
+
|
|
217
|
+
A Provider may declare source-role and logical-unit identifiers, but the
|
|
218
|
+
selected CLI profile contract owns Artifact kinds, metrics, thresholds and
|
|
219
|
+
policy variants. Final selection rejects `quality_guidance.metric_ids`,
|
|
220
|
+
`logical_units[].artifacts.recommended` kinds and
|
|
221
|
+
`supported_policy_variants` that are not registered by the selected base
|
|
222
|
+
profile. A namespaced extension inherits this check from its declared base
|
|
223
|
+
profile. The strict manifest schema has no numeric limit or threshold field.
|
|
224
|
+
|
|
225
|
+
Before authoring a logical unit, the CLI evaluates each selected policy
|
|
226
|
+
variant's restricted eligibility selector over an allowlisted canonical-fact
|
|
227
|
+
projection. The resulting
|
|
228
|
+
`context.indexer.artifact-policy-eligibility/v1` binds the profile and operator
|
|
229
|
+
contracts, canonical facts, Provider-supported variant set, eligible Artifact
|
|
230
|
+
kinds and derived thresholds. `inflation-sensitive` maximums use the fixed CLI
|
|
231
|
+
rule; the Provider cannot return a threshold or self-report a pass.
|
|
232
|
+
|
|
233
|
+
An author Result declares one validated source role and, when it emits
|
|
234
|
+
Artifacts, one `context.indexer.artifact-bundle/v1` for its logical unit. The
|
|
235
|
+
Bundle chooses exactly one eligible variant and classifies each Artifact as
|
|
236
|
+
required, discretionary or a semantic split. The CLI requires exact agreement
|
|
237
|
+
between the Bundle and Result payload, registered required/discretionary kinds,
|
|
238
|
+
known evidence, authorized reader questions and the derived discretionary
|
|
239
|
+
fan-out limit. Semantic split parts retain `split_of`, the parent's kind and a
|
|
240
|
+
non-overlapping stable boundary. An empty Result has no Bundle; a non-empty
|
|
241
|
+
Result cannot omit it. There is no global hard limit on total valid logical
|
|
242
|
+
units or physical Artifacts.
|
|
243
|
+
|
|
244
|
+
Before author worksets can materialize Candidate content, Context requires a
|
|
245
|
+
canonical `context.indexer.projected-artifact-plan/v1` and runs
|
|
246
|
+
`context.indexer.projected-artifact-fan-out-audit/v1`. Each projection binds a
|
|
247
|
+
stable projection key to an exact PartitionPlan group, Bundle digest, current
|
|
248
|
+
CLI policy-eligibility digest and evidence justification. Missing or mismatched
|
|
249
|
+
owner, Bundle variant or evidence increments the unassigned count; complete
|
|
250
|
+
Bundles, expanded variants, semantic split parts and the single CLI
|
|
251
|
+
`catalog-fallback` parent do not. Counts up to 100 continue, 101 through 300
|
|
252
|
+
continue with a warning, and counts above 300 return the non-Gate
|
|
253
|
+
`indexer-plan-revision-required` outcome before any author workset runs. That
|
|
254
|
+
partial outcome reopens the owning semantic step; it does not create a profile
|
|
255
|
+
revision ledger or an override route.
|
|
256
|
+
|
|
257
|
+
Artifact content has three mechanically separate layers. `facts[]` contains
|
|
258
|
+
canonical, source-bound values and never reader prose. A structured
|
|
259
|
+
`deterministic-block` contains only a registered renderer and `fact_refs`; the
|
|
260
|
+
CLI resolves those Facts and derives both Markdown and evidence, so a Provider
|
|
261
|
+
cannot relabel arbitrary JSON or prose as a catalog. A `semantic-prose` block
|
|
262
|
+
contains evidence-bound Markdown and cannot cite Facts as a way to increase
|
|
263
|
+
deterministic coverage. The normalized rendered Section retains ordered
|
|
264
|
+
`content_blocks` with the layer, Fact refs, evidence refs and per-block digest;
|
|
265
|
+
its Section digest covers that ledger and the exact reader-visible Markdown.
|
|
266
|
+
|
|
267
|
+
`ArtifactResult` also carries
|
|
268
|
+
`context.indexer.capability-group-evidence/v1`. It repeats the complete member
|
|
269
|
+
set bound by the author workset even when no capability group is selected. A
|
|
270
|
+
non-empty capability group has a stable ref derived only from the logical unit
|
|
271
|
+
and capability key, at least two explicit member-to-evidence bindings, and one
|
|
272
|
+
or more actual Artifact Section evidence bindings. A member cannot belong to
|
|
273
|
+
two capability groups. Every member evidence ref must be a current Result
|
|
274
|
+
evidence binding and must be visible in one of the declared Sections. Unknown
|
|
275
|
+
members or Sections, page-level evidence without Section consumption, and
|
|
276
|
+
workset/member-set drift are rejected. This protocol does not assign projection
|
|
277
|
+
dispositions to members outside capability groups.
|
|
278
|
+
|
|
279
|
+
## Full-path example identity
|
|
280
|
+
|
|
281
|
+
Providers report normalized example observations through
|
|
282
|
+
`context.indexer.example-inventory/v1`. The stable `example_ref` is derived
|
|
283
|
+
only from the public target ref, scenario key and full path relative to the
|
|
284
|
+
authorized source/module root. Paths use Unicode NFC and `/`; absolute paths
|
|
285
|
+
and parent traversal are invalid. Source/module identity, content digest and
|
|
286
|
+
evidence form a separate observation ref, so additional evidence for the same
|
|
287
|
+
observation can merge without changing the example identity.
|
|
288
|
+
|
|
289
|
+
Context recomputes `context.indexer.example-identity-audit/v1`. Equal basenames
|
|
290
|
+
under different full paths are distinct examples, as are equal paths for
|
|
291
|
+
different targets or scenarios. Multiple distinct source/content observations
|
|
292
|
+
for the same complete example identity are a hard
|
|
293
|
+
`example-identity-collision`; a Provider cannot override the audit result or
|
|
294
|
+
forge an empty collision list. Candidate disposition and linkage are separate
|
|
295
|
+
downstream contracts.
|
|
296
|
+
|
|
297
|
+
## SubjectKey schema authority
|
|
298
|
+
|
|
299
|
+
Community profile identity rules have one authority: the top-level
|
|
300
|
+
`subject_key_schemas` array in the CLI profile contract. A community Provider
|
|
301
|
+
manifest cannot copy or replace that schema. A namespaced additional profile
|
|
302
|
+
has the other allowed authority: the exact owner Provider's
|
|
303
|
+
`composition.extensions[].subject_key_schema`. The extension declaration is
|
|
304
|
+
required and may use only the CLI's closed namespace/local-key derivation
|
|
305
|
+
operators, kind identifiers and normalization rules.
|
|
306
|
+
|
|
307
|
+
Final selection resolves both forms to
|
|
308
|
+
`context.indexer.resolved-subject-key-schema/v1`. The record binds the Indexer,
|
|
309
|
+
profile, base-contract or Provider authority, schema digest and resolution
|
|
310
|
+
digest. Its canonical set digest is part of the stable final selection report;
|
|
311
|
+
transport paths and runtime receipts are not. Subject keys must match a kind in
|
|
312
|
+
the resolved schema and satisfy its normalization before they can become a
|
|
313
|
+
canonical NodeRef.
|
|
314
|
+
|
|
315
|
+
An unchanged schema is equivalent. Adding a kind while preserving the existing
|
|
316
|
+
namespace, normalization and local-key operators is compatible. Removing or
|
|
317
|
+
changing an existing identity derivation is identity-breaking: the owning
|
|
318
|
+
authority must advance its major version and the schema version must increase.
|
|
319
|
+
When approved Nodes exist, Context requires a non-delegable
|
|
320
|
+
`confirm-subject-reidentification` authorization bound to the exact old/new
|
|
321
|
+
schema digests, approved catalog, complete deterministic mapping and report.
|
|
322
|
+
Missing mappings, one old Node mapping to multiple Nodes, multiple old Nodes
|
|
323
|
+
colliding on one new Node, stale authorization or digest drift blocks
|
|
324
|
+
activation. With no approved Node, the human Gate is omitted but conformance
|
|
325
|
+
and major-version checks still apply.
|
|
326
|
+
|
|
327
|
+
## Requirement change authority
|
|
328
|
+
|
|
329
|
+
`context.indexer.requirement-change-report/v1` retains both complete
|
|
330
|
+
requirements, their digests, the canonical comparator inputs, the recomputed
|
|
331
|
+
comparison and its report digest. Equivalent and strengthening changes use
|
|
332
|
+
`confirm-index-requirements` and may follow managed review authority.
|
|
333
|
+
Contraction or incomparable replacement instead uses
|
|
334
|
+
`confirm-index-requirement-contraction`; its confirmation is always human and
|
|
335
|
+
non-delegable, and binds the exact old/new requirement, comparison and report
|
|
336
|
+
digests. A self-digested caller classification is insufficient because Context
|
|
337
|
+
recomputes the comparator before issuing or consuming the confirmation.
|
|
338
|
+
|
|
339
|
+
Material-gap severity remains derived from the current requirement domain:
|
|
340
|
+
`required` is blocking, `optional` is recommended and `out-of-scope` creates no
|
|
341
|
+
gap. Severity is not written into worksets or the retained ledger, so a domain
|
|
342
|
+
change must pass the requirement Gate instead of editing a stored severity.
|
|
343
|
+
|
|
344
|
+
## Provider discovery and composition Route
|
|
345
|
+
|
|
346
|
+
`configure-indexer-providers` is a static Agent Action. It reports the exact
|
|
347
|
+
CLI-bundled catalog together with other Indexer entry Skills already visible to
|
|
348
|
+
the current Host, then returns a path-free
|
|
349
|
+
`context.indexer.provider-route-input/v1`. The visible list remains
|
|
350
|
+
conversation-only: the protocol carries names, readable versions and source
|
|
351
|
+
types, never installation or cache paths, and the CLI does not scan for more
|
|
352
|
+
Skills. When the Host exposes an exact Skill root, discovery may read only the
|
|
353
|
+
Skill frontmatter and sibling `context-indexer.yaml`; the manifest version is
|
|
354
|
+
authoritative and its `metadata.context-provider-version` copy must match.
|
|
355
|
+
Conversational output groups the same Skill name and exact version into one
|
|
356
|
+
item with all observed source types, while `visible_skills` retains distinct
|
|
357
|
+
source observations because its `source_type` field is singular. Identical
|
|
358
|
+
bundled and installed observations are not separate Providers and never create
|
|
359
|
+
selection precedence; different exact versions remain separate identities.
|
|
360
|
+
|
|
361
|
+
`route-indexer-provider-selection` recomputes required
|
|
362
|
+
requirement/domain/source/module owner cells against the unchanged applied
|
|
363
|
+
requirement set. Read-scope overlap is reported but remains legal. A closed
|
|
364
|
+
selection may contain multiple fixed Skill identities and continues as one
|
|
365
|
+
`multi-skill` composition to `validate-indexer-selection-proposal`. Duplicate
|
|
366
|
+
primary owners instead return `indexer-provider-conflict` and cannot be
|
|
367
|
+
resolved by YAML or discovery order.
|
|
368
|
+
|
|
369
|
+
If a first pass leaves an owner cell unmatched, the Graph records `partial` and
|
|
370
|
+
runs `configure-community-indexer-fallback`. The second pass is explicitly
|
|
371
|
+
marked `community_fallback_attempted: true`; any remaining unowned required
|
|
372
|
+
cell becomes `indexer-customization-required` with its exact owner cell,
|
|
373
|
+
coverage capability and `context.indexer.capability-gap-proof/v1`. This is the
|
|
374
|
+
only Provider-discovery outcome that authorizes the local-customization Route;
|
|
375
|
+
the proof protocol remains a capability audit artifact rather than a second
|
|
376
|
+
Graph outcome. Only `selection-validation-required` returns a selection
|
|
377
|
+
proposal input. The Route writes no workspace or runtime state, and neither a
|
|
378
|
+
visible-Skill claim nor the Route report authorizes Bundle materialization.
|
|
379
|
+
|
|
380
|
+
## Contract overlay validation
|
|
381
|
+
|
|
382
|
+
`validate-indexer-contract-overlays` recomputes the complete data-only overlay
|
|
383
|
+
against the exact CLI base and operator contracts. Invalid DSL, executable
|
|
384
|
+
fields, identity redefinition, threshold weakening, digest drift or a partial
|
|
385
|
+
Provider identity fails validation. The selected Provider Bundle integrity is
|
|
386
|
+
an exact input, not a self-reported trust assertion.
|
|
387
|
+
|
|
388
|
+
Successful validation emits
|
|
389
|
+
`context.indexer.overlay-validation-receipt/v1`. The receipt binds the exact
|
|
390
|
+
project, overlay, base contract, operator contract, Provider Bundle integrity
|
|
391
|
+
and canonical conformance report. There is no signature, KMS, trust-bundle or
|
|
392
|
+
overlay-authorization protocol. Changing any bound digest requires
|
|
393
|
+
revalidation; a stale receipt cannot be reused.
|
|
394
|
+
|
|
395
|
+
## Question amendment back-edge
|
|
396
|
+
|
|
397
|
+
A CLI base-contract question can be expanded and confirmed before Provider
|
|
398
|
+
resolution. `context.indexer.base-question-amendment/v1` copies the complete
|
|
399
|
+
canonical contract from the selected base profile, changes only the requirement
|
|
400
|
+
question binding, and applies the confirmed snapshot with an expected-base CAS
|
|
401
|
+
and durable single-file journal. A Skill question ref is guidance only; it
|
|
402
|
+
cannot provide or alter the contract payload.
|
|
403
|
+
|
|
404
|
+
An overlay-backed question follows a different sequence. Context first
|
|
405
|
+
recomputes overlay DSL conformance and verifies the exact validation receipt.
|
|
406
|
+
Only then may
|
|
407
|
+
`context.indexer.overlay-question-amendment/v1` expand namespaced question and
|
|
408
|
+
target-domain additions from that overlay. The target coverage domain must
|
|
409
|
+
already be in scope and have one existing primary owner. The amendment is a
|
|
410
|
+
pure strengthening and remains in runtime staging after confirmation; it is not
|
|
411
|
+
written as a standalone requirement update.
|
|
412
|
+
|
|
413
|
+
The executable sequence is
|
|
414
|
+
`propose-overlay-question-amendment`,
|
|
415
|
+
`confirm-overlay-question-amendment`, then
|
|
416
|
+
`rebind-indexer-selection-to-requirement`. Proposal and rebind inputs carry the
|
|
417
|
+
exact overlay validation input and result; Context recomputes and
|
|
418
|
+
compares that pair instead of accepting a detached receipt. Confirmation emits
|
|
419
|
+
the exact amendment decision and performs no project write.
|
|
420
|
+
|
|
421
|
+
The rebind Action then proves that Indexer/provider
|
|
422
|
+
identity, operations, scopes, profile composition, requirement bindings, owner
|
|
423
|
+
closure and read authority are byte-identical. It revalidates overlay
|
|
424
|
+
conformance,
|
|
425
|
+
reuses the exact staged Bundles, and reruns both static and final selection
|
|
426
|
+
against the target requirement digest. Provider and SubjectKey authority must
|
|
427
|
+
remain unchanged. Final selection resolves every CLI-base question back to its
|
|
428
|
+
exact selected profile contract and requires one current validation proof
|
|
429
|
+
for every overlay question; forged bindings and duplicate, stale, or unused
|
|
430
|
+
proofs fail before the final report is issued. The report binds the resulting
|
|
431
|
+
question authority set digest. The resulting
|
|
432
|
+
`context.indexer.overlay-question-registry-apply-proposal/v1` contains the full
|
|
433
|
+
target `src/indexers.yaml` snapshot and binds the amendment, confirmation,
|
|
434
|
+
overlay validation, rebound selection, SubjectKey schema set and finalized reports.
|
|
435
|
+
The proposal goes through the same `stage-indexer-project-proposal` and
|
|
436
|
+
`apply-indexer-project` Actions as ordinary registry/customization proposals.
|
|
437
|
+
The latter dispatches this typed proposal to one expected-base CAS, project
|
|
438
|
+
write lock and persistent journal, so the requirement binding and rebound
|
|
439
|
+
registry are committed by one complete file replacement. Recovery observes
|
|
440
|
+
only the old or new registry snapshot; it never reconstructs authority from a
|
|
441
|
+
temporary Provider path.
|
|
442
|
+
|
|
443
|
+
## Controlled invocation
|
|
444
|
+
|
|
445
|
+
Author result acceptance checks the actual task, source/module, subject and
|
|
446
|
+
Provider layer. Provider integrity, bundle/config/customization fingerprints
|
|
447
|
+
remain recorded metadata, not byte-equality gates between a resumed request and
|
|
448
|
+
its result. Selected Facts are resolved by their supplied identity and source
|
|
449
|
+
references; their current values are recorded without comparing a previous
|
|
450
|
+
parser payload digest. Source-span line ranges may expand within the same file
|
|
451
|
+
content. Structured declarations resolve actual file/item identities, not a
|
|
452
|
+
previous inventory or signature fingerprint. Source file content checks,
|
|
453
|
+
unknown-reference rejection and atomic write protection remain in force.
|
|
454
|
+
|
|
455
|
+
These continuation rules do not relax executable program authorization or allow
|
|
456
|
+
an Agent to select undeclared sources.
|
|
457
|
+
|
|
458
|
+
`context.indexer.controlled-invocation/v1` binds:
|
|
459
|
+
|
|
460
|
+
- the exact Indexer, Provider, version, Bundle integrity and stable Provider
|
|
461
|
+
fingerprint;
|
|
462
|
+
- the manifest-declared `runtime + entry + args`;
|
|
463
|
+
- requested and granted Context SDK capabilities;
|
|
464
|
+
- an exact fixed dependency set with package, version, lock integrity and
|
|
465
|
+
resolved content digest;
|
|
466
|
+
- one authorized source/module scope;
|
|
467
|
+
- a stable trust-policy and authority digest;
|
|
468
|
+
- timeout and stdin/stdout/stderr byte limits.
|
|
469
|
+
|
|
470
|
+
The built-in Host capability is `sandboxed_program: false`. A first-party,
|
|
471
|
+
verified or exact project-authorized program may use the `trusted-program` path,
|
|
472
|
+
which is not an isolation claim. An untrusted program without a real sandbox is
|
|
473
|
+
not executable.
|
|
474
|
+
|
|
475
|
+
The program input is `context.indexer.run-request/v2` with the single
|
|
476
|
+
`main-index` operation. Its output is `context.indexer.run-result/v1`, wrapped by
|
|
477
|
+
`context.indexer.controlled-program-result/v1` to bind the exact invocation and
|
|
478
|
+
payload digest. Context still validates the operation-specific Result and
|
|
479
|
+
recomputes mechanical gates independently.
|
|
480
|
+
|
|
481
|
+
## Primary execution identity and workset reads
|
|
482
|
+
|
|
483
|
+
Context derives `context.indexer.primary-registry-projection/v1` from the
|
|
484
|
+
finalized registry. The projection contains the selected Indexer's requirement
|
|
485
|
+
bindings, read scope, `main-index` operation, primary/additional profiles,
|
|
486
|
+
primary or pre-authority Provider layers and customization mode. It excludes
|
|
487
|
+
`profile.composers[]` and Provider layers used only after primary authoring.
|
|
488
|
+
`context.indexer.primary-execution-projection/v1` separately binds the primary
|
|
489
|
+
program, instructions, templates, config, CLI/profile contracts and only
|
|
490
|
+
`primary | pre-authority` resources. Its resource subprojection produces
|
|
491
|
+
`primary_resource_binding_digest`; a post-author resource cannot satisfy that
|
|
492
|
+
schema.
|
|
493
|
+
|
|
494
|
+
`context.indexer.main-workset/v2` digests its complete canonical payload. A
|
|
495
|
+
workset set permits only one author workset for an Indexer, owner cohort and
|
|
496
|
+
group key. `context.indexer.main-transport-batch/v2` may carry several complete
|
|
497
|
+
worksets but intentionally has no batch identity, digest, page number or
|
|
498
|
+
reader-facing name. Regrouping worksets for Host transport therefore cannot
|
|
499
|
+
change an individual workset or Result identity.
|
|
500
|
+
|
|
501
|
+
Each partition run request also carries one exact
|
|
502
|
+
`partition_strategy_attempt`: its resolution order, strategy reference and
|
|
503
|
+
digest, plus the previous attempt digest after a retry. The field participates
|
|
504
|
+
in the execution request digest and is `null` for author work. Context accepts
|
|
505
|
+
only a semantic partition. Ordinal, fixed-count and alphabetical axes are
|
|
506
|
+
recorded in a content-addressed convergence chain and atomically requeue the
|
|
507
|
+
same workset with the next authorized strategy. This path has no user Gate and
|
|
508
|
+
does not consume profile-revision attempts; an exhausted strategy set routes
|
|
509
|
+
to the CLI catalog fallback.
|
|
510
|
+
|
|
511
|
+
Context projects every source-specific fact, dependency and verified Provider
|
|
512
|
+
fragment authorized for one main workset into the single
|
|
513
|
+
`context.indexer.authorized-workset-view/v1` resource. The Agent reads that
|
|
514
|
+
managed resource and uses its file locators directly. It does not construct
|
|
515
|
+
source-specific reads, semantic windows, cursors or receipt fields. Workset,
|
|
516
|
+
View and execution-request identity bind the accepted Result; Host call grouping
|
|
517
|
+
cannot manufacture a new logical unit such as `batch-1` or alter an Artifact
|
|
518
|
+
identity.
|
|
519
|
+
|
|
520
|
+
Post-author composition uses its own
|
|
521
|
+
`context.indexer.post-author-run-ledger/v1`; it never reuses primary main-run
|
|
522
|
+
progress. Each entry is keyed by composer ref and current workset digest and is
|
|
523
|
+
`pending`, `running`, `accepted`, `failed` or `stale`. An accepted entry stores
|
|
524
|
+
the complete validated Result, materialized fragments and invocation receipt,
|
|
525
|
+
including a valid zero-fragment Result. Rebuilding a workset set reuses only an
|
|
526
|
+
accepted entry whose workset, request, View, Result, receipt and fragment set
|
|
527
|
+
all remain current. A `running` entry without that complete record returns to
|
|
528
|
+
`pending` on recovery; a changed workset becomes `stale` without discarding
|
|
529
|
+
unchanged accepted peers.
|
|
530
|
+
|
|
531
|
+
`context.indexer.post-author-status/v1` exposes deterministic total, pending,
|
|
532
|
+
accepted, failed and stale counts, sorted next refs and the accepted receipt-set
|
|
533
|
+
digest. Zero effective composers yields `post_author_envelope.state =
|
|
534
|
+
not-required` without creating a View or envelope and may reconcile. A nonzero
|
|
535
|
+
set may reconcile only when every composer is accepted and the supplied
|
|
536
|
+
`context.indexer.composed-result-envelope/v1` exactly matches the recomposed
|
|
537
|
+
current envelope. Missing or mismatched envelope data is `stale`; partial,
|
|
538
|
+
failed or stale worksets cannot reconcile.
|
|
539
|
+
|
|
540
|
+
## Parser coordinates and locks
|
|
541
|
+
|
|
542
|
+
A runtime profile declares each parser as a
|
|
543
|
+
`context.indexer.parser-requirement/v1`: an abstract capability, parser ABI and
|
|
544
|
+
exact community package/export/version coordinate. The capability name is not
|
|
545
|
+
an import alias and the presence of parser source in a Context or downstream source mirror
|
|
546
|
+
does not prove that the capability is installed.
|
|
547
|
+
|
|
548
|
+
The configured registry resolves that requirement to
|
|
549
|
+
`context.indexer.parser-coordinate-mapping/v1`. A direct mapping preserves the
|
|
550
|
+
community coordinate exactly. A wrapper may use another coordinate only while
|
|
551
|
+
preserving the same ABI digest; it may re-export the ABI but cannot redefine
|
|
552
|
+
parser facts. Installation then produces
|
|
553
|
+
`context.indexer.parser-resolution-lock/v1`, which records the actual
|
|
554
|
+
package/export/version, mapping digest, lock integrity, resolved content digest
|
|
555
|
+
and ABI digest.
|
|
556
|
+
|
|
557
|
+
Provider or local-customization imports must carry the exact capability and
|
|
558
|
+
parser lock digest and must import the actual locked package/export/version.
|
|
559
|
+
The locked dependency projection feeds controlled execution and stale
|
|
560
|
+
identity. Community aliases, mirror paths and whether a sync copied parser
|
|
561
|
+
source are not accepted as runtime evidence. Internal release smoke must load
|
|
562
|
+
the configured actual export; that later release check does not change this
|
|
563
|
+
protocol authority.
|
|
564
|
+
|
|
565
|
+
## Section collection mapping and layout
|
|
566
|
+
|
|
567
|
+
Collection remains the closed package and query classification vocabulary. A
|
|
568
|
+
Provider Result declares only each Section's `section_key`, owner Indexer,
|
|
569
|
+
document kind, reader goal and Artifact kind. The selected CLI profile contract
|
|
570
|
+
owns the versioned `layout_mappings`; exactly one mapping must match the
|
|
571
|
+
profile, source role and complete Section projection. A Result containing a
|
|
572
|
+
collection, output path or unknown top-level package namespace is invalid.
|
|
573
|
+
|
|
574
|
+
Collection belongs to a physical Artifact. Every actual or material-gap
|
|
575
|
+
Section in that Artifact must resolve to the same collection. A mixed source
|
|
576
|
+
may route different Sections to different collections only by declaring
|
|
577
|
+
separate Artifacts in its validated Bundle; the CLI does not silently split or
|
|
578
|
+
merge reader pages to repair a Provider Result.
|
|
579
|
+
|
|
580
|
+
The compile-internal resolver emits `context.indexer.layout-proposal/v1`. It
|
|
581
|
+
binds the exact Artifact Result, profile contract, validated SubjectKey schema
|
|
582
|
+
set and exact schema digest, Indexer and source. The resolver validates the
|
|
583
|
+
SubjectKey against the selected schema normalization before deriving NodeRef;
|
|
584
|
+
a caller-supplied digest is not accepted as schema authority. NodeRef plus the
|
|
585
|
+
logical Artifact id/kind derives ArtifactRef. NodeRef, owner Indexer, Artifact
|
|
586
|
+
kind and Section key derive a stable logical Section identity; its placement
|
|
587
|
+
under one Artifact derives SectionRef. This lets a diff distinguish a moved
|
|
588
|
+
Section from new content without allowing the same logical Section to have two
|
|
589
|
+
primary placements. The ViewRef is an internal projection. Output paths are
|
|
590
|
+
derived under `knowledge/<collection>/` and never accepted from a Provider.
|
|
591
|
+
|
|
592
|
+
Template Artifacts enter layout only after validated rendering. Only rendered
|
|
593
|
+
Sections exist; an omitted optional projection does not create an empty
|
|
594
|
+
Section, while a retained material gap remains unresolved without
|
|
595
|
+
reader-visible placeholder content. Artifact Bundle purpose and `split_of`
|
|
596
|
+
lineage are retained in the proposal. A proposal set rejects duplicate Node
|
|
597
|
+
owners, Artifact identities, logical Section identities, Section placements
|
|
598
|
+
and output paths across Indexers, as well as missing, nested or kind-changing
|
|
599
|
+
semantic-split parents.
|
|
600
|
+
|
|
601
|
+
Before Candidate Review, Context builds
|
|
602
|
+
`context.indexer.artifact-manifest/v1` from the current layout set and the
|
|
603
|
+
actual physical Markdown set. The manifest stores paths, content digests,
|
|
604
|
+
byte/body-line counts and exact logical-unit or registered-navigation ownership;
|
|
605
|
+
it does not retain the Markdown body. A separate
|
|
606
|
+
`context.indexer.physical-artifact-audit/v1` recomputes Bundle numerator and
|
|
607
|
+
denominator, per-unit physical fan-out, semantic split count, and the complete
|
|
608
|
+
missing/empty/orphan/unresolved-material sample set. Any such diagnostic is a
|
|
609
|
+
non-overridable completeness failure.
|
|
610
|
+
|
|
611
|
+
Generated navigation must use a content-addressed
|
|
612
|
+
`context.indexer.navigation-artifact-plan/v1`. Nested navigation is allowed,
|
|
613
|
+
but every navigation Artifact must reach a logical-unit Artifact; unknown
|
|
614
|
+
children, cycles, path collisions and unregistered files fail. Reader bodies
|
|
615
|
+
over 1500 lines produce a non-blocking advisory only. Total physical Artifact
|
|
616
|
+
count has no global maximum.
|
|
617
|
+
|
|
618
|
+
An initial layout does not create the protected `confirm-layout-change` Gate.
|
|
619
|
+
The main lifecycle still reviews its semantic structure before Author in
|
|
620
|
+
ordinary mode; new topics in an update receive that structure review too.
|
|
621
|
+
A content-only increment reuses the existing Artifact identity and skips the
|
|
622
|
+
protected layout-change Gate. Adding reader
|
|
623
|
+
fan-out to an already approved Node, removing or renaming an Artifact,
|
|
624
|
+
splitting/merging its declared lineage, moving a logical Section, or changing
|
|
625
|
+
an approved collection/path is represented by a digest-bound layout change
|
|
626
|
+
report and requires the human, non-delegable `confirm-layout-change` Gate.
|
|
627
|
+
`context.indexer.layout-transition/v1` binds the current proposal set and base
|
|
628
|
+
projections before exposing the conditional Gate. No parallel align Route can
|
|
629
|
+
approve or rewrite that transition.
|
|
630
|
+
|
|
631
|
+
## Explicit Result-bound Candidate compile
|
|
632
|
+
|
|
633
|
+
`compile-indexer-candidates` consumes the complete current set of accepted
|
|
634
|
+
author Results from the durable main-run store. Its input repeats only the
|
|
635
|
+
exact workset, execution-request, acceptance and Artifact Result digests; the
|
|
636
|
+
CLI rejects a missing, extra, forged or stale Result reference before
|
|
637
|
+
materialization. Callers cannot provide an alternate Result body, Provider
|
|
638
|
+
contract or a second document-authoring payload.
|
|
639
|
+
|
|
640
|
+
The compiler validates every accepted run envelope and acceptance record,
|
|
641
|
+
then binds each Candidate to the same Indexer Result, source identity,
|
|
642
|
+
Provider layer and integrity, Bundle digest, configuration fingerprint and
|
|
643
|
+
optional customization fingerprint used by layout. The supplied layout
|
|
644
|
+
proposal set and transition must bind the same Artifact Result set. Any
|
|
645
|
+
destructive layout report additionally requires its exact non-delegable
|
|
646
|
+
confirmation; unresolved material gaps stop compile.
|
|
647
|
+
|
|
648
|
+
Structured Section blocks are materialized directly. Template-backed
|
|
649
|
+
Artifacts use only an exact rendered Artifact bound to the same Result digest.
|
|
650
|
+
The CLI derives physical paths from layout, builds the physical Artifact
|
|
651
|
+
manifest, and requires the completeness audit to pass before returning the
|
|
652
|
+
Candidate set. The durable current record lives under Context runtime state;
|
|
653
|
+
it does not write approved knowledge. Review and apply remain the only route
|
|
654
|
+
to approved Markdown.
|
|
655
|
+
|
|
656
|
+
No generic fallback exists after Provider resolution. A minimal local
|
|
657
|
+
customization may be proposed only after the explicit
|
|
658
|
+
`indexer-customization-required` outcome and its capability-gap proof; compile
|
|
659
|
+
itself never invents one.
|
|
660
|
+
|
|
661
|
+
## Material gaps and the single authoring path
|
|
662
|
+
|
|
663
|
+
Reconciliation reports unresolved material gaps from the current accepted
|
|
664
|
+
Results. Required gaps keep the current lifecycle blocked; optional gaps remain
|
|
665
|
+
diagnostics in that report. Context does not create a second checkpoint, audit
|
|
666
|
+
ledger, answer workset, or special close route for them.
|
|
667
|
+
|
|
668
|
+
Newly captured Markdown, tool snapshots, or other authorized material re-enter
|
|
669
|
+
the normal `main-index` operation. The affected Partition and Author worksets
|
|
670
|
+
run again, reconciliation is recomputed, and the user reviews the resulting
|
|
671
|
+
knowledge Candidate through the existing content Review. Review apply writes
|
|
672
|
+
approved Markdown; close projects `knowledge/structure.yaml` and verifies it.
|
|
673
|
+
Delivery retains accepted work while more pages remain, then cleans completed
|
|
674
|
+
transient state. Durable `processed_scopes` advance only after the selected
|
|
675
|
+
scope's required work and build complete, not after one page in that scope.
|
|
676
|
+
|
|
677
|
+
## Detector and inspector
|
|
678
|
+
|
|
679
|
+
An activation detector consumes `context.indexer.activation-request/v1`. The
|
|
680
|
+
request contains the exact declared required, supporting and negative signal
|
|
681
|
+
set plus one `context.indexer.parser-fact-view/v1`. The view is built from
|
|
682
|
+
validated Evidence Adapter Results and their process-local structured fact
|
|
683
|
+
payload sidecars. It binds the authorized source/module scope, canonical file
|
|
684
|
+
inventory, origin Result digests and every payload digest. Raw source or
|
|
685
|
+
configuration text is not part of this input.
|
|
686
|
+
|
|
687
|
+
Parser adapters expose a materialization helper that returns the wire-safe
|
|
688
|
+
`context.indexer.evidence-adapter-result/v1` together with `fact_payloads`.
|
|
689
|
+
Those payloads intentionally do not serialize inside the Result and cannot be
|
|
690
|
+
recovered after a JSON round trip. The caller must construct the parser fact
|
|
691
|
+
view while the sidecar is still present; missing, extra, stale or out-of-view
|
|
692
|
+
payloads fail closed.
|
|
693
|
+
|
|
694
|
+
`context.indexer.activation-result/v1` must close every signal as
|
|
695
|
+
`present`, `absent` or `unknown`; a present signal requires evidence. Context,
|
|
696
|
+
not the detector, derives `matched`, `not-matched` or `indeterminate`.
|
|
697
|
+
|
|
698
|
+
An authoring inspector consumes `context.indexer.inspector-request/v1`, including
|
|
699
|
+
the exact active Provider profiles and Registry variants, and returns
|
|
700
|
+
`context.indexer.inspector-result/v1`. Its evidence payload is the shared
|
|
701
|
+
`context.indexer.evidence-adapter-result/v1`; its `fact_payloads` carry only
|
|
702
|
+
validated profile variants, source Fact refs, bounded template variables and a
|
|
703
|
+
structured availability status. Context requires one payload for every
|
|
704
|
+
enrichment fact, verifies each payload digest and source ref, rejects Registry
|
|
705
|
+
variant drift, then adapts the values into the same internal Authorized Workset
|
|
706
|
+
View projection source used by other inputs. Inspector files are always
|
|
707
|
+
`enricher` plus `lightweight-evidence`; they cannot own baseline inventory or
|
|
708
|
+
contribute a denominator. The Result must close the requested inventory and
|
|
709
|
+
authorized source/module scope. No Inspector protocol or technical identifier
|
|
710
|
+
is exposed as a separate Agent input. Detector and inspector entries run only from
|
|
711
|
+
the reverified content-addressed stage through the same empty-environment,
|
|
712
|
+
no-shell, bounded JSON subprocess runner. Timeout, stdin/stdout/stderr overflow,
|
|
713
|
+
invalid UTF-8/JSON, undeclared evidence and scope expansion are typed failures;
|
|
714
|
+
a successful execution returns a digest-bound receipt.
|
|
715
|
+
|
|
716
|
+
## Project-local customization
|
|
717
|
+
|
|
718
|
+
A Provider-only project does not create `src/indexer/`. When the registry
|
|
719
|
+
explicitly selects `extend` or `replace`, Context reads only
|
|
720
|
+
`src/indexer/<indexer-id>/` and the fixed resources `index.ts`, `variables.ts`,
|
|
721
|
+
`helpers.ts`, `instructions.md` and `templates/<id>.md`. Each file requires an
|
|
722
|
+
exact `@context-indexer-origin` header. `replace` additionally requires a current
|
|
723
|
+
capability-gap proof.
|
|
724
|
+
|
|
725
|
+
Every customization view also carries a validated
|
|
726
|
+
`context.indexer.customization-plan/v1`. The fixed escalation ladder is
|
|
727
|
+
`provider-only`, `config`, `instructions-append`, `template-override`,
|
|
728
|
+
`program-extend`, then `replace`. Selecting a step requires ordered evidence
|
|
729
|
+
that every smaller step is insufficient. `replace` additionally requires three
|
|
730
|
+
distinct failed extension-attempt digests and human confirmation; adding an
|
|
731
|
+
external dependency also makes confirmation mandatory. The selected step must
|
|
732
|
+
match the actual loaded files and the registry's `none | extend | replace`
|
|
733
|
+
mode. A Provider-only workspace gets a deterministic `provider-only` plan and
|
|
734
|
+
must not supply a local escalation plan. A non-empty registry config remains
|
|
735
|
+
registry-only but requires an exact `config` plan with Provider-only closure
|
|
736
|
+
evidence.
|
|
737
|
+
|
|
738
|
+
Project changes are represented by
|
|
739
|
+
`context.indexer.project-proposal/v1`. A proposal binds the unchanged
|
|
740
|
+
requirement-set authority, complete target registry, actual changed files,
|
|
741
|
+
fixed dependency intents, validation reports and expected-base digests. It is
|
|
742
|
+
staged under runtime state before any source write. Applying it uses the project
|
|
743
|
+
write lock and a persistent multi-file journal; recovery accepts only complete
|
|
744
|
+
base or target file states and refuses unknown external drift.
|
|
745
|
+
|
|
746
|
+
Dependency intents begin as `requires-authorization` and cannot make a proposal
|
|
747
|
+
apply-ready. The separate `authorize-indexer-dependencies` Gate requires the
|
|
748
|
+
`context.indexer-dependency-install` authority and binds the proposal, original
|
|
749
|
+
intent-set digest, exact package versions, importers, lock integrity, resolved
|
|
750
|
+
content digests and authority scope. Its CLI Action returns a digest-bound
|
|
751
|
+
authorization receipt plus a new `locked` intent set; install scripts remain
|
|
752
|
+
structurally `false`. A locked intent without its exact receipt, an unused
|
|
753
|
+
receipt, a changed resolution or an ordinary managed authority fails closed.
|
|
754
|
+
The Agent must use that locked set and the complete package/lock snapshots in a
|
|
755
|
+
replacement staged proposal before `apply-indexer-project`; the apply journal
|
|
756
|
+
never writes `node_modules`, which is reconstructed only from the accepted lock.
|
|
757
|
+
|
|
758
|
+
## Indexer template rendering
|
|
759
|
+
|
|
760
|
+
Indexer authoring templates are not package-output Handlebars templates. Each
|
|
761
|
+
Provider template is one manifest-declared Markdown file under that Provider's
|
|
762
|
+
`templates/` tree. A project may replace only the same template id/profile at
|
|
763
|
+
`src/indexer/<indexer-id>/templates/<id>.md`; all other templates continue to
|
|
764
|
+
come from the verified, content-addressed Provider stage.
|
|
765
|
+
|
|
766
|
+
The Markdown file begins with closed YAML frontmatter using
|
|
767
|
+
`context.indexer.template/v1`. It declares the reader goal, applicable artifact
|
|
768
|
+
policy variants, typed variables with an explicit `deterministic-fact` or
|
|
769
|
+
`semantic-prose` content layer, registered deterministic blocks, required and
|
|
770
|
+
optional Sections, question refs, evidence kinds/cardinality, deletion rules,
|
|
771
|
+
page-boundary guidance, anonymous examples, anti-examples, forbidden output and
|
|
772
|
+
a rendered byte budget. Every body Section uses exact markers:
|
|
773
|
+
|
|
774
|
+
```md
|
|
775
|
+
<!-- context:indexer-section summary -->
|
|
776
|
+
# {{variable:title}}
|
|
777
|
+
|
|
778
|
+
{{variable:summary}}
|
|
779
|
+
<!-- /context:indexer-section -->
|
|
780
|
+
```
|
|
781
|
+
|
|
782
|
+
Only `{{variable:<id>}}` and `{{block:<id>}}` are accepted. Direct variables are
|
|
783
|
+
semantic prose. A block source variable is a deterministic Fact projection,
|
|
784
|
+
must bind canonical `fact_refs`, and must equal the CLI's normalized projection
|
|
785
|
+
of those Facts. Blocks select one of
|
|
786
|
+
the CLI-owned `bullet-list`, `key-value-table`, `json-code-block` or `public-contract-table` renderers;
|
|
787
|
+
templates cannot register code or helpers. A block directive occupies its own
|
|
788
|
+
template line so the renderer can retain an exact content-layer boundary. The
|
|
789
|
+
contract and body must declare exactly the same Sections and placeholders.
|
|
790
|
+
|
|
791
|
+
`ArtifactResult` binds every template variable to current evidence refs and
|
|
792
|
+
binds every declared Section to `section_key`, owner Indexer, document kind,
|
|
793
|
+
reader goal and Artifact kind. Rendering validates the Provider/customization
|
|
794
|
+
fingerprints, template digest, current CLI-owned applicability conditions,
|
|
795
|
+
variable types and expansion limits, per-variable evidence boundary and exact
|
|
796
|
+
CLI-owned question target. An optional Section without data
|
|
797
|
+
or sufficient evidence is absent from the rendered Candidate. A required
|
|
798
|
+
Section in the same state becomes the already-declared material-question
|
|
799
|
+
transition and makes `review_ready` false.
|
|
800
|
+
|
|
801
|
+
Context validates template-program directives, declared variable types and
|
|
802
|
+
expansion limits before rendering. Supplied variable values and Section prose
|
|
803
|
+
are content, not template programs: JSX, braces, comments, TODOs, headings and
|
|
804
|
+
example placeholders do not cause a content-validation failure. Missing or
|
|
805
|
+
invalid structured input is distinct from an author's choice of words.
|
|
806
|
+
Unfilled authoring placeholders can be mentioned during the existing Agent or
|
|
807
|
+
user Review, but are not an additional CLI gate. The rendered
|
|
808
|
+
Section content, ordered content-layer ledger and evidence receive stable
|
|
809
|
+
digests. Deterministic blocks contribute catalog completeness but never
|
|
810
|
+
semantic-prose density. Later `build` projects this approved body; it does not
|
|
811
|
+
perform a first render or change its structure.
|
|
812
|
+
|
|
813
|
+
An ArtifactResult may emit
|
|
814
|
+
`context.indexer.structured-claim-set/v1`. Every claim binds a stable claim
|
|
815
|
+
kind and subject to one real Artifact/Section owner and one or more evidence
|
|
816
|
+
refs carried by that exact Section. The subject must be the current logical
|
|
817
|
+
unit, one of its CLI-owned inventory members, or an authorized target-resolution
|
|
818
|
+
identity. Missing owners, outside subjects, unknown evidence and evidence that
|
|
819
|
+
is known globally but absent from the owner Section all fail Result validation.
|
|
820
|
+
|
|
821
|
+
Main-run validation does not produce a prose-quality audit. Content usefulness,
|
|
822
|
+
completeness and faithfulness belong to the existing Agent or user Review.
|
|
823
|
+
Structured owner/source checks still run, but no keyword, punctuation, heading
|
|
824
|
+
or sentence-pattern scan can reject an otherwise valid Result. Physical output
|
|
825
|
+
checks distinguish a missing or blank body from an authored body; they do not
|
|
826
|
+
decide whether headings, comments or short prose are sufficient knowledge.
|
|
827
|
+
|
|
828
|
+
### Groups narrowed by a scope decision
|
|
829
|
+
|
|
830
|
+
The CLI may attach `scope_change.removed_member_ids` to a derived PartitionPlan
|
|
831
|
+
group after excluding only part of its membership. This is runtime provenance,
|
|
832
|
+
not an extra field Provider authors should invent in semantic Partition results.
|
|
833
|
+
The remaining identity stays stable; the old page form/template is no longer a
|
|
834
|
+
binding choice. Author receives the change in `page_plan.scope_change` and must
|
|
835
|
+
reassess the residual sources, title and reader task. It can choose an allowed
|
|
836
|
+
page form or an applicable non-publishing outcome. This metadata does not belong
|
|
837
|
+
in knowledge frontmatter and is not proof that remaining material is useful.
|
|
838
|
+
|
|
839
|
+
## Incremental planning handoff
|
|
840
|
+
|
|
841
|
+
A semantic Partition group may declare `ready_for_author: true` when the Agent
|
|
842
|
+
has resolved its subject, primary ownership, reader task and shared dependencies.
|
|
843
|
+
The CLI can then deliver an initial wave before all Partition tasks are accepted.
|
|
844
|
+
This is an optional scheduling declaration, not a new evidence or approval gate.
|
|
845
|
+
Absent/false groups wait; every inventory member still needs a final disposition.
|
|
846
|
+
The original Partition ledger resumes after normal structure review, Author,
|
|
847
|
+
Composer, content Review, close and successful build. Later material for the same
|
|
848
|
+
subject reuses its page identity and approved prose. A wave finishing never means
|
|
849
|
+
the remaining source scope is complete.
|
|
850
|
+
|
|
851
|
+
Known code-symbol planning views provide member overviews with immutable full
|
|
852
|
+
fact links and bounded captured-source access. Providers must inspect details
|
|
853
|
+
when semantic boundaries are uncertain; unknown payload formats retain full
|
|
854
|
+
reading. Author receives full selected facts and source material.
|