kibi-cli 1.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli-errors.d.ts +3 -1
- package/dist/cli-errors.d.ts.map +1 -1
- package/dist/cli-errors.js +4 -1
- package/dist/cli-json-command.d.ts +1 -0
- package/dist/cli-json-command.d.ts.map +1 -1
- package/dist/cli-json-command.js +13 -4
- package/dist/cli-operation-loader.js +3 -3
- package/dist/cli-operation-metadata.d.ts +4 -3
- package/dist/cli-operation-metadata.d.ts.map +1 -1
- package/dist/cli-operation-metadata.js +7 -5
- package/dist/cli-protocol.js +1 -1
- package/dist/cli-register-maintenance.d.ts.map +1 -1
- package/dist/cli-register-maintenance.js +7 -0
- package/dist/cli-register-proof.d.ts +3 -0
- package/dist/cli-register-proof.d.ts.map +1 -0
- package/dist/cli-register-proof.js +127 -0
- package/dist/cli-register-reporting.d.ts.map +1 -1
- package/dist/cli-register-reporting.js +7 -0
- package/dist/cli.d.ts +4 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +19 -10
- package/dist/commands/branch.d.ts +1 -0
- package/dist/commands/branch.d.ts.map +1 -1
- package/dist/commands/branch.js +8 -4
- package/dist/commands/check-generated.d.ts +7 -0
- package/dist/commands/check-generated.d.ts.map +1 -0
- package/dist/commands/check-generated.js +192 -0
- package/dist/commands/check.d.ts +14 -0
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +193 -46
- package/dist/commands/coverage.d.ts +1 -0
- package/dist/commands/coverage.d.ts.map +1 -1
- package/dist/commands/coverage.js +6 -0
- package/dist/commands/doctor.d.ts +22 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +170 -23
- package/dist/commands/engine.d.ts +12 -0
- package/dist/commands/engine.d.ts.map +1 -1
- package/dist/commands/engine.js +42 -0
- package/dist/commands/github-init.d.ts +1 -0
- package/dist/commands/github-init.d.ts.map +1 -1
- package/dist/commands/github-init.js +9 -5
- package/dist/commands/init-helpers.d.ts.map +1 -1
- package/dist/commands/init-helpers.js +49 -10
- package/dist/commands/migrate.d.ts +4 -0
- package/dist/commands/migrate.d.ts.map +1 -1
- package/dist/commands/migrate.js +7 -7
- package/dist/commands/proof-explain.d.ts +10 -0
- package/dist/commands/proof-explain.d.ts.map +1 -0
- package/dist/commands/proof-explain.js +45 -0
- package/dist/commands/proof-impact.d.ts +7 -0
- package/dist/commands/proof-impact.d.ts.map +1 -0
- package/dist/commands/proof-impact.js +39 -0
- package/dist/commands/proof-migrate-legacy.d.ts +7 -0
- package/dist/commands/proof-migrate-legacy.d.ts.map +1 -0
- package/dist/commands/proof-migrate-legacy.js +45 -0
- package/dist/commands/proof-prune.d.ts +8 -0
- package/dist/commands/proof-prune.d.ts.map +1 -0
- package/dist/commands/proof-prune.js +53 -0
- package/dist/commands/prove.d.ts +37 -0
- package/dist/commands/prove.d.ts.map +1 -0
- package/dist/commands/prove.js +470 -0
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +18 -3
- package/dist/commands/sync/discovery.d.ts +3 -0
- package/dist/commands/sync/discovery.d.ts.map +1 -1
- package/dist/commands/sync/discovery.js +36 -28
- package/dist/commands/sync/manifest.d.ts +2 -1
- package/dist/commands/sync/manifest.d.ts.map +1 -1
- package/dist/commands/sync/manifest.js +55 -21
- package/dist/commands/sync/persistence.d.ts +4 -1
- package/dist/commands/sync/persistence.d.ts.map +1 -1
- package/dist/commands/sync/persistence.js +31 -14
- package/dist/commands/sync/staging.d.ts +1 -0
- package/dist/commands/sync/staging.d.ts.map +1 -1
- package/dist/commands/sync/staging.js +5 -2
- package/dist/commands/sync/untracked-targets.d.ts +24 -0
- package/dist/commands/sync/untracked-targets.d.ts.map +1 -0
- package/dist/commands/sync/untracked-targets.js +108 -0
- package/dist/commands/sync.d.ts +11 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +74 -30
- package/dist/engine-daemon.d.ts +3 -1
- package/dist/engine-daemon.d.ts.map +1 -1
- package/dist/engine-daemon.js +49 -20
- package/dist/engine.d.ts +17 -77
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +331 -91
- package/dist/env/bootstrap.d.ts +84 -0
- package/dist/env/bootstrap.d.ts.map +1 -0
- package/dist/env/bootstrap.js +310 -0
- package/dist/extractors/manifest.d.ts +5 -0
- package/dist/extractors/manifest.d.ts.map +1 -1
- package/dist/extractors/manifest.js +46 -1
- package/dist/extractors/markdown.d.ts +7 -3
- package/dist/extractors/markdown.d.ts.map +1 -1
- package/dist/extractors/markdown.js +60 -24
- package/dist/extractors/playwright-cases.js +1 -1
- package/dist/extractors/relationships.d.ts +6 -0
- package/dist/extractors/relationships.d.ts.map +1 -1
- package/dist/extractors/relationships.js +1 -1
- package/dist/extractors/symbol-coordinates.d.ts.map +1 -1
- package/dist/extractors/symbols-coordinator.d.ts +8 -0
- package/dist/extractors/symbols-coordinator.d.ts.map +1 -1
- package/dist/extractors/symbols-coordinator.js +40 -0
- package/dist/extractors/symbols-ts.d.ts +9 -19
- package/dist/extractors/symbols-ts.d.ts.map +1 -1
- package/dist/extractors/symbols-ts.js +34 -429
- package/dist/intent-search.d.ts +1 -0
- package/dist/intent-search.d.ts.map +1 -1
- package/dist/intent-search.js +11 -8
- package/dist/logic/ir.d.ts +1 -0
- package/dist/logic/ir.d.ts.map +1 -1
- package/dist/logic/ir.js +1 -1
- package/dist/operations/bootstrap/activation.d.ts +2 -1
- package/dist/operations/bootstrap/activation.d.ts.map +1 -1
- package/dist/operations/bootstrap/activation.js +11 -3
- package/dist/operations/bootstrap/generate.d.ts +2 -1
- package/dist/operations/bootstrap/generate.d.ts.map +1 -1
- package/dist/operations/bootstrap/generate.js +6 -3
- package/dist/operations/bootstrap/guidance.d.ts +1 -0
- package/dist/operations/bootstrap/guidance.d.ts.map +1 -1
- package/dist/operations/bootstrap/guidance.js +1 -1
- package/dist/operations/modeling/model-requirement.d.ts +5 -0
- package/dist/operations/modeling/model-requirement.d.ts.map +1 -1
- package/dist/operations/modeling/model-requirement.js +57 -46
- package/dist/operations/modeling/predicate-applicability.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-applicability.js +103 -4
- package/dist/operations/modeling/predicate-catalog-2.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-catalog-2.js +18 -2
- package/dist/operations/modeling/predicate-catalog-3.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-catalog-3.js +17 -1
- package/dist/operations/modeling/predicate-catalog-5.d.ts +10 -0
- package/dist/operations/modeling/predicate-catalog-5.d.ts.map +1 -0
- package/dist/operations/modeling/predicate-catalog-5.js +291 -0
- package/dist/operations/modeling/predicate-catalog.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-catalog.js +4 -0
- package/dist/operations/modeling/predicate-loader.d.ts +1 -0
- package/dist/operations/modeling/predicate-loader.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-loader.js +4 -3
- package/dist/operations/modeling/predicate-ranker.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-ranker.js +4 -1
- package/dist/operations/modeling/predicate-types.d.ts +1 -1
- package/dist/operations/modeling/predicate-types.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-usage-hints-4.d.ts +3 -0
- package/dist/operations/modeling/predicate-usage-hints-4.d.ts.map +1 -0
- package/dist/operations/modeling/predicate-usage-hints-4.js +84 -0
- package/dist/operations/modeling/suggest-predicates.d.ts +4 -2
- package/dist/operations/modeling/suggest-predicates.d.ts.map +1 -1
- package/dist/operations/modeling/suggest-predicates.js +82 -22
- package/dist/operations/mutation/contradictions.d.ts +2 -1
- package/dist/operations/mutation/contradictions.d.ts.map +1 -1
- package/dist/operations/mutation/contradictions.js +26 -5
- package/dist/operations/mutation/delete.d.ts +3 -0
- package/dist/operations/mutation/delete.d.ts.map +1 -1
- package/dist/operations/mutation/delete.js +100 -32
- package/dist/operations/mutation/relationships.d.ts +1 -0
- package/dist/operations/mutation/relationships.d.ts.map +1 -1
- package/dist/operations/mutation/relationships.js +6 -4
- package/dist/operations/mutation/saga.d.ts +51 -0
- package/dist/operations/mutation/saga.d.ts.map +1 -0
- package/dist/operations/mutation/saga.js +67 -0
- package/dist/operations/mutation/serialization.d.ts.map +1 -1
- package/dist/operations/mutation/serialization.js +3 -2
- package/dist/operations/mutation/source-authoring.d.ts +5 -1
- package/dist/operations/mutation/source-authoring.d.ts.map +1 -1
- package/dist/operations/mutation/source-authoring.js +79 -46
- package/dist/operations/mutation/strict-fact.d.ts +1 -0
- package/dist/operations/mutation/strict-fact.d.ts.map +1 -1
- package/dist/operations/mutation/strict-fact.js +8 -5
- package/dist/operations/mutation/symbol-compiler-lock.d.ts +5 -2
- package/dist/operations/mutation/symbol-compiler-lock.d.ts.map +1 -1
- package/dist/operations/mutation/symbol-compiler-lock.js +65 -2
- package/dist/operations/mutation/symbol-granularity.d.ts.map +1 -1
- package/dist/operations/mutation/symbol-granularity.js +11 -89
- package/dist/operations/mutation/symbol-refresh.d.ts +1 -0
- package/dist/operations/mutation/symbol-refresh.d.ts.map +1 -1
- package/dist/operations/mutation/symbol-refresh.js +10 -8
- package/dist/operations/mutation/upsert.d.ts +18 -2
- package/dist/operations/mutation/upsert.d.ts.map +1 -1
- package/dist/operations/mutation/upsert.js +86 -54
- package/dist/operations/mutation/validate-upsert.js +2 -2
- package/dist/operations/mutation/validation.d.ts.map +1 -1
- package/dist/operations/mutation/validation.js +46 -4
- package/dist/operations/mutation/warnings.d.ts +1 -0
- package/dist/operations/mutation/warnings.d.ts.map +1 -1
- package/dist/operations/mutation/warnings.js +7 -5
- package/dist/operations/mutation/workspace-mutation-lock.d.ts +60 -0
- package/dist/operations/mutation/workspace-mutation-lock.d.ts.map +1 -0
- package/dist/operations/mutation/workspace-mutation-lock.js +362 -0
- package/dist/operations/planning/apply-plan.d.ts +8 -106
- package/dist/operations/planning/apply-plan.d.ts.map +1 -1
- package/dist/operations/planning/apply-plan.js +113 -36
- package/dist/operations/planning/compile-intent.d.ts +51 -0
- package/dist/operations/planning/compile-intent.d.ts.map +1 -1
- package/dist/operations/planning/compile-intent.js +133 -17
- package/dist/operations/proof/baseline-diff.d.ts +41 -0
- package/dist/operations/proof/baseline-diff.d.ts.map +1 -0
- package/dist/operations/proof/baseline-diff.js +153 -0
- package/dist/operations/proof/explain.d.ts +75 -0
- package/dist/operations/proof/explain.d.ts.map +1 -0
- package/dist/operations/proof/explain.js +294 -0
- package/dist/operations/proof/impact.d.ts +45 -0
- package/dist/operations/proof/impact.d.ts.map +1 -0
- package/dist/operations/proof/impact.js +118 -0
- package/dist/operations/proof/ingest-proof.d.ts +34 -0
- package/dist/operations/proof/ingest-proof.d.ts.map +1 -0
- package/dist/operations/proof/ingest-proof.js +348 -0
- package/dist/operations/proof/migrate-legacy-receipts.d.ts +30 -0
- package/dist/operations/proof/migrate-legacy-receipts.d.ts.map +1 -0
- package/dist/operations/proof/migrate-legacy-receipts.js +92 -0
- package/dist/operations/proof/prune-receipts.d.ts +35 -0
- package/dist/operations/proof/prune-receipts.d.ts.map +1 -0
- package/dist/operations/proof/prune-receipts.js +91 -0
- package/dist/operations/proof/receipt-document.d.ts +29 -0
- package/dist/operations/proof/receipt-document.d.ts.map +1 -0
- package/dist/operations/proof/receipt-document.js +117 -0
- package/dist/operations/semantic-advisor/analysis-receipt.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/analysis-receipt.js +3 -9
- package/dist/operations/semantic-advisor/analyze-prose.d.ts +1 -0
- package/dist/operations/semantic-advisor/analyze-prose.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/analyze-prose.js +64 -93
- package/dist/operations/semantic-advisor/clauses.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/clauses.js +20 -7
- package/dist/operations/semantic-advisor/plugin-orchestration.d.ts +63 -0
- package/dist/operations/semantic-advisor/plugin-orchestration.d.ts.map +1 -0
- package/dist/operations/semantic-advisor/plugin-orchestration.js +489 -0
- package/dist/operations/semantic-advisor/predicate-rules-core.d.ts +15 -2
- package/dist/operations/semantic-advisor/predicate-rules-core.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/predicate-rules-core.js +7 -140
- package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts +11 -12
- package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/predicate-rules-launcher.js +6 -94
- package/dist/operations/semantic-advisor/predicate-rules-policy.d.ts +16 -0
- package/dist/operations/semantic-advisor/predicate-rules-policy.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/predicate-rules-policy.js +7 -150
- package/dist/operations/semantic-advisor/predicate-rules-product-tail.d.ts +9 -0
- package/dist/operations/semantic-advisor/predicate-rules-product-tail.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/predicate-rules-product-tail.js +7 -102
- package/dist/operations/semantic-advisor/predicate-rules-product.d.ts +13 -0
- package/dist/operations/semantic-advisor/predicate-rules-product.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/predicate-rules-product.js +7 -133
- package/dist/operations/semantic-advisor/strict-count-rules.d.ts +2 -0
- package/dist/operations/semantic-advisor/strict-count-rules.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/strict-count-rules.js +40 -25
- package/dist/operations/semantic-advisor/types.d.ts +1 -0
- package/dist/operations/semantic-advisor/types.d.ts.map +1 -1
- package/dist/plugins/compose-ontology-packs.d.ts +51 -0
- package/dist/plugins/compose-ontology-packs.d.ts.map +1 -0
- package/dist/plugins/compose-ontology-packs.js +257 -0
- package/dist/plugins/compose-semantic-classifier.d.ts +42 -0
- package/dist/plugins/compose-semantic-classifier.d.ts.map +1 -0
- package/dist/plugins/compose-semantic-classifier.js +211 -0
- package/dist/plugins/external-allowlist.d.ts +10 -0
- package/dist/plugins/external-allowlist.d.ts.map +1 -0
- package/dist/plugins/external-allowlist.js +16 -0
- package/dist/plugins/index.d.ts +9 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +33 -0
- package/dist/plugins/load-plugin.d.ts +19 -0
- package/dist/plugins/load-plugin.d.ts.map +1 -0
- package/dist/plugins/load-plugin.js +59 -0
- package/dist/plugins/project-config.d.ts +28 -0
- package/dist/plugins/project-config.d.ts.map +1 -0
- package/dist/plugins/project-config.js +90 -0
- package/dist/plugins/registry.d.ts +93 -0
- package/dist/plugins/registry.d.ts.map +1 -0
- package/dist/plugins/registry.js +338 -0
- package/dist/plugins/resolve-package.d.ts +47 -0
- package/dist/plugins/resolve-package.d.ts.map +1 -0
- package/dist/plugins/resolve-package.js +262 -0
- package/dist/plugins/source-analysis-service.d.ts +44 -0
- package/dist/plugins/source-analysis-service.d.ts.map +1 -0
- package/dist/plugins/source-analysis-service.js +232 -0
- package/dist/prolog/codec.d.ts +13 -1
- package/dist/prolog/codec.d.ts.map +1 -1
- package/dist/prolog/codec.js +269 -154
- package/dist/prolog/error-terms.d.ts +47 -0
- package/dist/prolog/error-terms.d.ts.map +1 -0
- package/dist/prolog/error-terms.js +334 -0
- package/dist/prolog/janitor.d.ts +50 -0
- package/dist/prolog/janitor.d.ts.map +1 -0
- package/dist/prolog/janitor.js +154 -0
- package/dist/prolog/store-lock.d.ts +45 -0
- package/dist/prolog/store-lock.d.ts.map +1 -0
- package/dist/prolog/store-lock.js +195 -0
- package/dist/prolog.d.ts +7 -0
- package/dist/prolog.d.ts.map +1 -1
- package/dist/prolog.js +55 -17
- package/dist/proof/evaluate.d.ts +27 -0
- package/dist/proof/evaluate.d.ts.map +1 -0
- package/dist/proof/evaluate.js +151 -0
- package/dist/proof/inspect.d.ts +12 -0
- package/dist/proof/inspect.d.ts.map +1 -0
- package/dist/proof/inspect.js +236 -0
- package/dist/proof/integrations.d.ts +35 -0
- package/dist/proof/integrations.d.ts.map +1 -0
- package/dist/proof/integrations.js +123 -0
- package/dist/proof/producers/junit-adapter.d.ts +26 -0
- package/dist/proof/producers/junit-adapter.d.ts.map +1 -0
- package/dist/proof/producers/junit-adapter.js +186 -0
- package/dist/{public → proof/producers}/playwright-case-id.d.ts +1 -1
- package/dist/proof/producers/playwright-case-id.d.ts.map +1 -0
- package/dist/{public → proof/producers}/playwright-case-id.js +1 -1
- package/dist/proof/producers/playwright-reporter.d.ts +27 -0
- package/dist/proof/producers/playwright-reporter.d.ts.map +1 -0
- package/dist/proof/producers/playwright-reporter.js +138 -0
- package/dist/proof/producers/tap-adapter.d.ts +10 -0
- package/dist/proof/producers/tap-adapter.d.ts.map +1 -0
- package/dist/proof/producers/tap-adapter.js +200 -0
- package/dist/proof/receipt-outcome.d.ts +2 -0
- package/dist/proof/receipt-outcome.d.ts.map +1 -0
- package/dist/proof/receipt-outcome.js +1 -0
- package/dist/public/diagnostic-usage.js +6 -6
- package/dist/public/distribution-parity.d.ts +7 -1
- package/dist/public/distribution-parity.d.ts.map +1 -1
- package/dist/public/distribution-parity.js +15 -10
- package/dist/public/extractors/symbols-coordinator.d.ts +1 -1
- package/dist/public/extractors/symbols-coordinator.d.ts.map +1 -1
- package/dist/public/extractors/symbols-coordinator.js +1 -1
- package/dist/public/impact/analyzer.d.ts +1 -1
- package/dist/public/impact/analyzer.d.ts.map +1 -1
- package/dist/public/impact/analyzer.js +6 -4
- package/dist/public/impact/coverage-depth-quality.d.ts +1 -0
- package/dist/public/impact/coverage-depth-quality.d.ts.map +1 -1
- package/dist/public/impact/coverage-depth-quality.js +1 -1
- package/dist/public/impact/diagnostics.d.ts.map +1 -1
- package/dist/public/impact/diagnostics.js +2 -2
- package/dist/public/impact/diff-meaning.d.ts +1 -0
- package/dist/public/impact/diff-meaning.d.ts.map +1 -1
- package/dist/public/impact/diff-meaning.js +5 -2
- package/dist/public/impact/full-kb-quality.d.ts +5 -2
- package/dist/public/impact/full-kb-quality.d.ts.map +1 -1
- package/dist/public/impact/full-kb-quality.js +329 -64
- package/dist/public/operations/catalog.d.ts +450 -196
- package/dist/public/operations/catalog.d.ts.map +1 -1
- package/dist/public/operations/catalog.js +6 -4
- package/dist/public/operations/check-executor.d.ts.map +1 -1
- package/dist/public/operations/check-executor.js +4 -8
- package/dist/public/operations/check-helpers.d.ts +1 -1
- package/dist/public/operations/check-helpers.d.ts.map +1 -1
- package/dist/public/operations/check-helpers.js +1 -1
- package/dist/public/operations/contracts.d.ts +7 -0
- package/dist/public/operations/contracts.d.ts.map +1 -1
- package/dist/public/operations/contracts.js +66 -34
- package/dist/public/operations/discovery-entities.d.ts +15 -0
- package/dist/public/operations/discovery-entities.d.ts.map +1 -1
- package/dist/public/operations/discovery-entities.js +38 -0
- package/dist/public/operations/discovery-executors.d.ts +9 -9
- package/dist/public/operations/discovery-executors.d.ts.map +1 -1
- package/dist/public/operations/discovery-executors.js +39 -31
- package/dist/public/operations/index.d.ts +1 -1
- package/dist/public/operations/index.d.ts.map +1 -1
- package/dist/public/operations/index.js +1 -1
- package/dist/public/operations/migration-plan.d.ts +4 -3
- package/dist/public/operations/migration-plan.d.ts.map +1 -1
- package/dist/public/operations/migration-plan.js +23 -21
- package/dist/public/operations/node-ports.js +6 -6
- package/dist/public/operations/prolog-json.d.ts +1 -1
- package/dist/public/operations/prolog-json.d.ts.map +1 -1
- package/dist/public/operations/prolog-json.js +7 -7
- package/dist/public/operations/repair-plan.d.ts +3 -3
- package/dist/public/operations/repair-plan.d.ts.map +1 -1
- package/dist/public/operations/repair-plan.js +49 -19
- package/dist/public/operations/result-envelope.d.ts +1 -0
- package/dist/public/operations/result-envelope.d.ts.map +1 -1
- package/dist/public/operations/result-envelope.js +12 -10
- package/dist/public/operations/runtime-types.d.ts +21 -1
- package/dist/public/operations/runtime-types.d.ts.map +1 -1
- package/dist/public/operations/specs/check-rules.generated.d.ts +5 -0
- package/dist/public/operations/specs/check-rules.generated.d.ts.map +1 -0
- package/dist/public/operations/specs/check-rules.generated.js +35 -0
- package/dist/public/operations/specs/check.d.ts +7 -2
- package/dist/public/operations/specs/check.d.ts.map +1 -1
- package/dist/public/operations/specs/check.js +8 -20
- package/dist/public/operations/specs/discovery.d.ts +3 -0
- package/dist/public/operations/specs/discovery.d.ts.map +1 -1
- package/dist/public/operations/specs/discovery.js +3 -0
- package/dist/public/operations/specs/mutation-schemas.d.ts +257 -163
- package/dist/public/operations/specs/mutation-schemas.d.ts.map +1 -1
- package/dist/public/operations/specs/mutation-schemas.js +15 -7
- package/dist/public/operations/specs/planning.d.ts +9 -0
- package/dist/public/operations/specs/planning.d.ts.map +1 -1
- package/dist/public/operations/specs/planning.js +6 -0
- package/dist/public/operations/specs/proof.d.ts +212 -0
- package/dist/public/operations/specs/proof.d.ts.map +1 -0
- package/dist/public/operations/specs/proof.js +30 -0
- package/dist/public/operations/specs/reporting.d.ts +20 -0
- package/dist/public/operations/specs/reporting.d.ts.map +1 -1
- package/dist/public/operations/specs/reporting.js +112 -12
- package/dist/public/operations/specs/semantic.d.ts +1 -1
- package/dist/public/operations/specs/semantic.d.ts.map +1 -1
- package/dist/public/operations/specs/semantic.js +54 -4
- package/dist/public/operations/specs/upsert.d.ts +257 -163
- package/dist/public/operations/specs/upsert.d.ts.map +1 -1
- package/dist/public/operations/symbol-repair-plan.d.ts +11 -0
- package/dist/public/operations/symbol-repair-plan.d.ts.map +1 -1
- package/dist/public/operations/symbol-repair-plan.js +121 -4
- package/dist/public/operations/types.d.ts +6 -1
- package/dist/public/operations/types.d.ts.map +1 -1
- package/dist/public/proof-fingerprint.d.ts +54 -0
- package/dist/public/proof-fingerprint.d.ts.map +1 -0
- package/dist/public/proof-fingerprint.js +141 -0
- package/dist/public/proof-protocol.d.ts +354 -0
- package/dist/public/proof-protocol.d.ts.map +1 -0
- package/dist/public/proof-protocol.js +454 -0
- package/dist/public/proof-receipt.d.ts +279 -0
- package/dist/public/proof-receipt.d.ts.map +1 -0
- package/dist/public/proof-receipt.js +377 -0
- package/dist/public/schemas/entity.d.ts.map +1 -1
- package/dist/public/schemas/entity.js +21 -7
- package/dist/public/skills/kibi-freshness/SKILL.md +1 -1
- package/dist/public/skills/kibi-usage/SKILL.md +44 -12
- package/dist/public/skills/kibi-usage/resources/operation-access.md +1 -1
- package/dist/public/skills/kibi-usage/resources/proof.md +150 -0
- package/dist/public/skills/kibi-usage/resources/workflows.md +6 -6
- package/dist/public/symbol-granularity.d.ts +3 -14
- package/dist/public/symbol-granularity.d.ts.map +1 -1
- package/dist/public/symbol-granularity.generated.d.ts +16 -0
- package/dist/public/symbol-granularity.generated.d.ts.map +1 -0
- package/dist/public/symbol-granularity.generated.js +53 -0
- package/dist/public/symbol-granularity.js +6 -47
- package/dist/public/telemetry-acceptance.d.ts +3 -77
- package/dist/public/telemetry-acceptance.d.ts.map +1 -1
- package/dist/public/telemetry-acceptance.js +4 -2
- package/dist/public/telemetry-remediation.js +1 -1
- package/dist/report/html-report.css +1240 -0
- package/dist/report/html-report.d.ts +4 -2
- package/dist/report/html-report.d.ts.map +1 -1
- package/dist/report/html-report.js +37 -300
- package/dist/runtime/cli-runtime.d.ts +2 -0
- package/dist/runtime/cli-runtime.d.ts.map +1 -1
- package/dist/runtime/cli-runtime.js +32 -7
- package/dist/schemas/entity.schema.json +355 -215
- package/dist/search-ranking.d.ts +1 -0
- package/dist/search-ranking.d.ts.map +1 -1
- package/dist/search-ranking.js +3 -0
- package/dist/traceability/evidence-model.d.ts +28 -0
- package/dist/traceability/evidence-model.d.ts.map +1 -1
- package/dist/traceability/git-staged.d.ts +20 -0
- package/dist/traceability/git-staged.d.ts.map +1 -1
- package/dist/traceability/git-staged.js +145 -1
- package/dist/traceability/staged-diagnostics.d.ts +7 -0
- package/dist/traceability/staged-diagnostics.d.ts.map +1 -1
- package/dist/traceability/staged-diagnostics.js +78 -7
- package/dist/traceability/staged-file-coverage.d.ts +33 -0
- package/dist/traceability/staged-file-coverage.d.ts.map +1 -0
- package/dist/traceability/staged-file-coverage.js +284 -0
- package/dist/traceability/staged-impact-contract.js +4 -4
- package/dist/traceability/staged-symbols-manifest.d.ts +13 -0
- package/dist/traceability/staged-symbols-manifest.d.ts.map +1 -1
- package/dist/traceability/staged-symbols-manifest.js +138 -27
- package/dist/traceability/symbol-extract.d.ts +24 -2
- package/dist/traceability/symbol-extract.d.ts.map +1 -1
- package/dist/traceability/symbol-extract.js +64 -208
- package/dist/traceability/temp-kb.d.ts +2 -0
- package/dist/traceability/temp-kb.d.ts.map +1 -1
- package/dist/traceability/temp-kb.js +13 -4
- package/dist/types/entities.d.ts +5 -3
- package/dist/types/entities.d.ts.map +1 -1
- package/dist/utils/branch-resolver.d.ts +1 -0
- package/dist/utils/branch-resolver.d.ts.map +1 -1
- package/dist/utils/branch-resolver.js +7 -4
- package/dist/utils/branch-store.d.ts +6 -0
- package/dist/utils/branch-store.d.ts.map +1 -1
- package/dist/utils/branch-store.js +27 -0
- package/dist/utils/kb-paths.d.ts +1 -1
- package/dist/utils/kb-paths.d.ts.map +1 -1
- package/dist/utils/kb-paths.js +1 -1
- package/dist/utils/rule-registry.d.ts +1 -11
- package/dist/utils/rule-registry.d.ts.map +1 -1
- package/dist/utils/rule-registry.generated.d.ts +102 -0
- package/dist/utils/rule-registry.generated.d.ts.map +1 -0
- package/dist/utils/rule-registry.generated.js +131 -0
- package/dist/utils/rule-registry.js +12 -113
- package/dist/utils/strict-modeling.d.ts +1 -0
- package/dist/utils/strict-modeling.d.ts.map +1 -1
- package/dist/utils/strict-modeling.js +1 -1
- package/package.json +20 -20
- package/src/public/diagnostic-usage.ts +6 -6
- package/src/public/distribution-parity.ts +17 -10
- package/src/public/extractors/symbols-coordinator.ts +1 -0
- package/src/public/impact/analyzer.ts +15 -12
- package/src/public/impact/coverage-depth-quality.ts +1 -1
- package/src/public/impact/diagnostics.ts +2 -1
- package/src/public/impact/diff-meaning.ts +11 -4
- package/src/public/impact/full-kb-quality.ts +463 -72
- package/src/public/operations/catalog.ts +10 -4
- package/src/public/operations/check-executor.ts +4 -8
- package/src/public/operations/check-helpers.ts +2 -2
- package/src/public/operations/contracts.ts +78 -34
- package/src/public/operations/discovery-entities.ts +53 -0
- package/src/public/operations/discovery-executors.ts +64 -48
- package/src/public/operations/index.ts +1 -1
- package/src/public/operations/migration-plan.ts +32 -25
- package/src/public/operations/node-ports.ts +6 -6
- package/src/public/operations/prolog-json.ts +13 -5
- package/src/public/operations/repair-plan.ts +60 -23
- package/src/public/operations/result-envelope.ts +15 -10
- package/src/public/operations/runtime-types.ts +26 -2
- package/src/public/operations/specs/check-rules.generated.ts +38 -0
- package/src/public/operations/specs/check.ts +12 -21
- package/src/public/operations/specs/discovery.ts +3 -0
- package/src/public/operations/specs/mutation-schemas.ts +22 -9
- package/src/public/operations/specs/planning.ts +7 -0
- package/src/public/operations/specs/proof.ts +43 -0
- package/src/public/operations/specs/reporting.ts +140 -13
- package/src/public/operations/specs/semantic.ts +79 -17
- package/src/public/operations/symbol-repair-plan.ts +166 -7
- package/src/public/operations/types.ts +6 -1
- package/src/public/proof-fingerprint.ts +216 -0
- package/src/public/proof-protocol-types.d.ts +96 -0
- package/src/public/proof-protocol.ts +589 -0
- package/src/public/proof-receipt.ts +499 -0
- package/src/public/schemas/entity.ts +26 -10
- package/src/public/skills/kibi-freshness/SKILL.md +1 -1
- package/src/public/skills/kibi-usage/SKILL.md +44 -12
- package/src/public/skills/kibi-usage/resources/operation-access.md +1 -1
- package/src/public/skills/kibi-usage/resources/proof.md +150 -0
- package/src/public/skills/kibi-usage/resources/workflows.md +6 -6
- package/src/public/symbol-granularity.generated.ts +74 -0
- package/src/public/symbol-granularity.ts +34 -59
- package/src/public/telemetry-acceptance-types.d.ts +98 -0
- package/src/public/telemetry-acceptance.ts +22 -100
- package/src/public/telemetry-remediation.ts +1 -1
- package/src/schemas/entity.schema.json +355 -215
- package/dist/cli-register-verification.d.ts +0 -3
- package/dist/cli-register-verification.d.ts.map +0 -1
- package/dist/cli-register-verification.js +0 -16
- package/dist/commands/verify.d.ts +0 -10
- package/dist/commands/verify.d.ts.map +0 -1
- package/dist/commands/verify.js +0 -126
- package/dist/operations/verification/ingest-verification.d.ts +0 -29
- package/dist/operations/verification/ingest-verification.d.ts.map +0 -1
- package/dist/operations/verification/ingest-verification.js +0 -192
- package/dist/public/operations/specs/verification.d.ts +0 -78
- package/dist/public/operations/specs/verification.d.ts.map +0 -1
- package/dist/public/operations/specs/verification.js +0 -62
- package/dist/public/playwright-case-id.d.ts.map +0 -1
- package/dist/public/verification-receipt.d.ts +0 -242
- package/dist/public/verification-receipt.d.ts.map +0 -1
- package/dist/public/verification-receipt.js +0 -296
- package/dist/verification/playwright-reporter.d.ts +0 -21
- package/dist/verification/playwright-reporter.d.ts.map +0 -1
- package/dist/verification/playwright-reporter.js +0 -114
- package/src/public/operations/specs/verification.ts +0 -78
- package/src/public/playwright-case-id.ts +0 -35
- package/src/public/verification-receipt.ts +0 -412
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/public/operations/catalog.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/public/operations/catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,11 +5,11 @@ import { querySpec, searchSpec, statusSpec } from "./specs/discovery.js";
|
|
|
5
5
|
import { modelRequirementSpec, suggestPredicatesSpec, } from "./specs/modeling.js";
|
|
6
6
|
import { deleteSpec, upsertSpec, validateUpsertSpec, } from "./specs/mutation.js";
|
|
7
7
|
import { applyPlanSpec, compileIntentSpec } from "./specs/planning.js";
|
|
8
|
+
import { ingestProofSpec } from "./specs/proof.js";
|
|
8
9
|
import { coverageSpec, findGapsSpec, graphSpec } from "./specs/reporting.js";
|
|
9
10
|
import { semanticAdvisorSpec } from "./specs/semantic.js";
|
|
10
11
|
import { skillsListSpec, skillsLoadSpec, skillsReadSpec, } from "./specs/skills.js";
|
|
11
12
|
import { sparqlRemoteSpec } from "./specs/sparql.js";
|
|
12
|
-
import { ingestVerificationSpec } from "./specs/verification.js";
|
|
13
13
|
export const OPERATION_CATALOG = [
|
|
14
14
|
skillsListSpec,
|
|
15
15
|
skillsLoadSpec,
|
|
@@ -31,7 +31,7 @@ export const OPERATION_CATALOG = [
|
|
|
31
31
|
sparqlRemoteSpec,
|
|
32
32
|
compileIntentSpec,
|
|
33
33
|
applyPlanSpec,
|
|
34
|
-
|
|
34
|
+
ingestProofSpec,
|
|
35
35
|
];
|
|
36
36
|
function envelopeSchema(spec, resultVersion) {
|
|
37
37
|
const data = OPERATION_DATA_SCHEMAS[spec.name];
|
|
@@ -151,13 +151,15 @@ export function withContractDefaults(spec) {
|
|
|
151
151
|
}
|
|
152
152
|
const SPECS_BY_NAME = new Map(OPERATION_CATALOG.map((spec) => [spec.name, withContractDefaults(spec)]));
|
|
153
153
|
// implements REQ-kibi-operation-interface-parity
|
|
154
|
-
export function
|
|
155
|
-
const spec = SPECS_BY_NAME.get(name);
|
|
154
|
+
export function requireKnownSpec(spec, name) {
|
|
156
155
|
if (!spec) {
|
|
157
156
|
throw new RangeError(`Unknown Kibi operation: ${name}`);
|
|
158
157
|
}
|
|
159
158
|
return spec;
|
|
160
159
|
}
|
|
160
|
+
export function getSpec(name) {
|
|
161
|
+
return requireKnownSpec(SPECS_BY_NAME.get(name), name);
|
|
162
|
+
}
|
|
161
163
|
// implements REQ-kibi-operation-interface-parity
|
|
162
164
|
export function listSpecs() {
|
|
163
165
|
return OPERATION_CATALOG.map(withContractDefaults);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-executor.d.ts","sourceRoot":"","sources":["../../../src/public/operations/check-executor.ts"],"names":[],"mappings":"AAoBA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,sBAAsB,EACtB,YAAY,EACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGL,iBAAiB,EAGjB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,oBAAoB,CAAC;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAClD,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAC;AACxD,OAAO,EACL,sBAAsB,EACtB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,GAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,6CAA6C,CAAC,EAAE,OAAO,CAAC;CAClE,CAAC;AAqDF,wBAAsB,YAAY,CAChC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,gBAAgB,EACzB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"check-executor.d.ts","sourceRoot":"","sources":["../../../src/public/operations/check-executor.ts"],"names":[],"mappings":"AAoBA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,sBAAsB,EACtB,YAAY,EACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGL,iBAAiB,EAGjB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,oBAAoB,CAAC;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAClD,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAC;AACxD,OAAO,EACL,sBAAsB,EACtB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,GAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,6CAA6C,CAAC,EAAE,OAAO,CAAC;CAClE,CAAC;AAqDF,wBAAsB,YAAY,CAChC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,gBAAgB,EACzB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAmJxC"}
|
|
@@ -52,7 +52,7 @@ export async function executeCheck(args, context, options = {}) {
|
|
|
52
52
|
const workspaceRoot = args.workspaceRoot ?? context.workspaceRoot;
|
|
53
53
|
const prolog = requireProlog(context);
|
|
54
54
|
const snapshotEvidence = await readWorkspaceSnapshot(context);
|
|
55
|
-
const
|
|
55
|
+
const proofSnapshot = snapshotEvidence.available
|
|
56
56
|
? snapshotEvidence.snapshot.hash
|
|
57
57
|
: undefined;
|
|
58
58
|
const checkedAt = context.clock().toISOString();
|
|
@@ -60,7 +60,7 @@ export async function executeCheck(args, context, options = {}) {
|
|
|
60
60
|
// version. `args.rules` is an invocation-time diagnostic selector only.
|
|
61
61
|
const rulesAllowlist = resolveCheckRules(args);
|
|
62
62
|
const hasExplicitRules = args.rules !== undefined;
|
|
63
|
-
const impactResult = analyzeKbCheckImpact(workspaceRoot, args);
|
|
63
|
+
const impactResult = await analyzeKbCheckImpact(workspaceRoot, args);
|
|
64
64
|
const impactQualityDiagnostics = qualityDiagnosticsFromImpact(impactResult);
|
|
65
65
|
const maxDiagnosticsOption = args.maxDiagnostics !== undefined
|
|
66
66
|
? { maxDiagnostics: args.maxDiagnostics }
|
|
@@ -74,9 +74,7 @@ export async function executeCheck(args, context, options = {}) {
|
|
|
74
74
|
: await collectFullKbQualityDiagnostics({
|
|
75
75
|
prolog,
|
|
76
76
|
workspaceRoot,
|
|
77
|
-
...(
|
|
78
|
-
? { verificationSnapshot }
|
|
79
|
-
: {}),
|
|
77
|
+
...(proofSnapshot !== undefined ? { proofSnapshot } : {}),
|
|
80
78
|
checkedAt,
|
|
81
79
|
now: context.clock(),
|
|
82
80
|
...maxDiagnosticsOption,
|
|
@@ -134,9 +132,7 @@ export async function executeCheck(args, context, options = {}) {
|
|
|
134
132
|
prolog,
|
|
135
133
|
hardViolationEntityIds: new Set(violations.map((v) => v.entityId)),
|
|
136
134
|
workspaceRoot,
|
|
137
|
-
...(
|
|
138
|
-
? { verificationSnapshot }
|
|
139
|
-
: {}),
|
|
135
|
+
...(proofSnapshot !== undefined ? { proofSnapshot } : {}),
|
|
140
136
|
checkedAt,
|
|
141
137
|
now: context.clock(),
|
|
142
138
|
...maxDiagnosticsOption,
|
|
@@ -30,6 +30,6 @@ export declare function resolveCheckRules(args: Pick<CheckInput, "rules">): Set<
|
|
|
30
30
|
*/
|
|
31
31
|
export declare function readLegacyChecksHint(workspaceRoot: string): Promise<string | null>;
|
|
32
32
|
export declare function hasImpactOptions(args: CheckInput): boolean;
|
|
33
|
-
export declare function analyzeKbCheckImpact(workspaceRoot: string, args: CheckInput): ChangedFileImpactResult | undefined
|
|
33
|
+
export declare function analyzeKbCheckImpact(workspaceRoot: string, args: CheckInput): Promise<ChangedFileImpactResult | undefined>;
|
|
34
34
|
export declare function qualityDiagnosticsFromImpact(impactResult: ChangedFileImpactResult | undefined): readonly QualityDiagnostic[];
|
|
35
35
|
//# sourceMappingURL=check-helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-helpers.d.ts","sourceRoot":"","sources":["../../../src/public/operations/check-helpers.ts"],"names":[],"mappings":"AAuBA,OAAO,EACL,UAAU,EACV,KAAK,SAAS,EACd,iBAAiB,EAGlB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;AAEzC;;;;;;;GAOG;AAEH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,SAAS,EAAE,GAAG;IACtE,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;CACzC,CA0BA;AAQD,wBAAgB,gCAAgC,IAAI,SAAS,EAAE,CAU9D;AAED;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAC9B,GAAG,CAAC,MAAM,CAAC,CAQb;AAED;;;;GAIG;AAEH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQxB;AAGD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAO1D;AAGD,
|
|
1
|
+
{"version":3,"file":"check-helpers.d.ts","sourceRoot":"","sources":["../../../src/public/operations/check-helpers.ts"],"names":[],"mappings":"AAuBA,OAAO,EACL,UAAU,EACV,KAAK,SAAS,EACd,iBAAiB,EAGlB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;AAEzC;;;;;;;GAOG;AAEH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,SAAS,EAAE,GAAG;IACtE,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;CACzC,CA0BA;AAQD,wBAAgB,gCAAgC,IAAI,SAAS,EAAE,CAU9D;AAED;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAC9B,GAAG,CAAC,MAAM,CAAC,CAQb;AAED;;;;GAIG;AAEH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQxB;AAGD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAO1D;AAGD,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAoB9C;AAGD,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,uBAAuB,GAAG,SAAS,GAChD,SAAS,iBAAiB,EAAE,CAK9B"}
|
|
@@ -114,7 +114,7 @@ export function hasImpactOptions(args) {
|
|
|
114
114
|
(args.sourceFiles !== undefined && args.sourceFiles.length > 0));
|
|
115
115
|
}
|
|
116
116
|
// implements REQ-mcp-tool-check
|
|
117
|
-
export function analyzeKbCheckImpact(workspaceRoot, args) {
|
|
117
|
+
export async function analyzeKbCheckImpact(workspaceRoot, args) {
|
|
118
118
|
if (!hasImpactOptions(args)) {
|
|
119
119
|
return undefined;
|
|
120
120
|
}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import type { OperationEffect, OperationEffectDeclaration, OperationName } from "./types.js";
|
|
2
2
|
/** A JSON Schema object emitted in the public operation catalog. */
|
|
3
3
|
export type OperationJsonSchema = Readonly<Record<string, unknown>>;
|
|
4
|
+
/** Preserve JSON Schema's nullable scalar/object representation in every
|
|
5
|
+
* generated consumer contract. Using a `type` union keeps the catalog
|
|
6
|
+
* readable and lets the MCP bridge round-trip the same wire schema. */
|
|
7
|
+
export declare function nullableJsonSchema(schema: OperationJsonSchema): OperationJsonSchema;
|
|
4
8
|
/**
|
|
5
9
|
* The data contract is deliberately maintained separately from the operation
|
|
6
10
|
* implementations. Every catalog entry therefore has a concrete payload
|
|
7
11
|
* shape, while nested domain records can still evolve independently.
|
|
8
12
|
*/
|
|
9
13
|
export declare const OPERATION_DATA_SCHEMAS: Readonly<Record<OperationName, OperationJsonSchema>>;
|
|
14
|
+
export declare function assertUniqueEffectKinds(operation: string, declarations: readonly {
|
|
15
|
+
readonly kind: string;
|
|
16
|
+
}[], expectedSize: number): void;
|
|
10
17
|
export declare function declaredEffects(operation: OperationName, effects: readonly OperationEffect[]): readonly OperationEffectDeclaration[];
|
|
11
18
|
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/public/operations/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,oEAAoE;AACpE,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/public/operations/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,oEAAoE;AACpE,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAwDpE;;uEAEuE;AACvE,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,mBAAmB,GAC1B,mBAAmB,CAMrB;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAsP3C,CAAC;AAgDF,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAClD,YAAY,EAAE,MAAM,GACnB,IAAI,CAIN;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,SAAS,eAAe,EAAE,GAClC,SAAS,0BAA0B,EAAE,CAoBvC"}
|
|
@@ -19,6 +19,21 @@ function objectData(properties, required = []) {
|
|
|
19
19
|
properties,
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* kibi.job.v1 receipt returned by async-mode operations (kb_check with
|
|
24
|
+
* `async: true`) instead of the synchronous payload. Agents poll
|
|
25
|
+
* kb_job_status with the jobId. Declared as a union member of the operation
|
|
26
|
+
* data contract so hosts validating tool output against the declared schema
|
|
27
|
+
* accept the receipt without weakening the synchronous payload contract.
|
|
28
|
+
*/
|
|
29
|
+
const jobReceiptData = objectData({
|
|
30
|
+
kibiProtocol: { const: 1 },
|
|
31
|
+
jobVersion: { const: "kibi.job.v1" },
|
|
32
|
+
jobId: { type: "string" },
|
|
33
|
+
tool: { type: "string" },
|
|
34
|
+
status: { type: "string" },
|
|
35
|
+
pollWith: { const: "kb_job_status" },
|
|
36
|
+
}, ["kibiProtocol", "jobVersion", "jobId", "tool", "status", "pollWith"]);
|
|
22
37
|
const stringValue = { type: "string" };
|
|
23
38
|
const integerValue = { type: "integer" };
|
|
24
39
|
const numberValue = { type: "number" };
|
|
@@ -30,7 +45,7 @@ const stringArray = {
|
|
|
30
45
|
/** Preserve JSON Schema's nullable scalar/object representation in every
|
|
31
46
|
* generated consumer contract. Using a `type` union keeps the catalog
|
|
32
47
|
* readable and lets the MCP bridge round-trip the same wire schema. */
|
|
33
|
-
function
|
|
48
|
+
export function nullableJsonSchema(schema) {
|
|
34
49
|
const type = schema.type;
|
|
35
50
|
if (typeof type === "string") {
|
|
36
51
|
return { ...schema, type: [type, "null"] };
|
|
@@ -65,19 +80,23 @@ export const OPERATION_DATA_SCHEMAS = {
|
|
|
65
80
|
syncState: stringValue,
|
|
66
81
|
kbPath: stringValue,
|
|
67
82
|
lastSyncSource: stringValue,
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
83
|
+
attachedPath: stringValue,
|
|
84
|
+
attachedGeneration: stringValue,
|
|
85
|
+
attachedDev: integerValue,
|
|
86
|
+
attachedIno: integerValue,
|
|
87
|
+
proofSnapshot: stringValue,
|
|
88
|
+
proofSnapshotAvailable: booleanValue,
|
|
89
|
+
proofSnapshotDirty: booleanValue,
|
|
90
|
+
proofSnapshotFileCount: integerValue,
|
|
91
|
+
proofSnapshotVersion: stringValue,
|
|
92
|
+
proofSnapshotError: stringValue,
|
|
74
93
|
staleReasons: recordArray,
|
|
75
94
|
staleReasonCount: integerValue,
|
|
76
95
|
staleReasonsTruncated: booleanValue,
|
|
77
96
|
branchAttachment: recordValue,
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
97
|
+
proofSnapshotChanges: recordArray,
|
|
98
|
+
proofSnapshotChangeCount: integerValue,
|
|
99
|
+
proofSnapshotChangesTruncated: booleanValue,
|
|
81
100
|
branchStore: recordValue,
|
|
82
101
|
engineStatus: recordValue,
|
|
83
102
|
schemaStatus: recordValue,
|
|
@@ -108,6 +127,7 @@ export const OPERATION_DATA_SCHEMAS = {
|
|
|
108
127
|
kb_semantic_advisor: objectData({
|
|
109
128
|
receipt: recordValue,
|
|
110
129
|
warnings: stringArray,
|
|
130
|
+
capabilityPlugins: recordValue,
|
|
111
131
|
}),
|
|
112
132
|
kb_model_requirement: objectData({
|
|
113
133
|
statement: stringValue,
|
|
@@ -180,8 +200,8 @@ export const OPERATION_DATA_SCHEMAS = {
|
|
|
180
200
|
valid: booleanValue,
|
|
181
201
|
errors: valueArray,
|
|
182
202
|
warnings: valueArray,
|
|
183
|
-
semanticAdvisor:
|
|
184
|
-
normalizedPreview:
|
|
203
|
+
semanticAdvisor: nullableJsonSchema(recordValue),
|
|
204
|
+
normalizedPreview: nullableJsonSchema(recordValue),
|
|
185
205
|
}),
|
|
186
206
|
kb_upsert: objectData({
|
|
187
207
|
created: integerValue,
|
|
@@ -210,18 +230,24 @@ export const OPERATION_DATA_SCHEMAS = {
|
|
|
210
230
|
effectFailures: recordArray,
|
|
211
231
|
nextActions: recordArray,
|
|
212
232
|
}),
|
|
213
|
-
kb_check:
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
233
|
+
kb_check: {
|
|
234
|
+
description: "Synchronous check payload, or a kibi.job.v1 receipt when async:true detached the check into a background job (poll kb_job_status with the jobId).",
|
|
235
|
+
anyOf: [
|
|
236
|
+
objectData({
|
|
237
|
+
violations: valueArray,
|
|
238
|
+
count: integerValue,
|
|
239
|
+
diagnostics: recordArray,
|
|
240
|
+
qualityDiagnostics: recordArray,
|
|
241
|
+
impactDiagnostics: recordArray,
|
|
242
|
+
sourceFiles: stringArray,
|
|
243
|
+
extractedSymbols: recordArray,
|
|
244
|
+
linkedEntities: recordArray,
|
|
245
|
+
nextActions: valueArray,
|
|
246
|
+
migrationPlan: recordValue,
|
|
247
|
+
}),
|
|
248
|
+
jobReceiptData,
|
|
249
|
+
],
|
|
250
|
+
},
|
|
225
251
|
kb_compile_intent: objectData({
|
|
226
252
|
version: stringValue,
|
|
227
253
|
planHash: stringValue,
|
|
@@ -235,6 +261,7 @@ export const OPERATION_DATA_SCHEMAS = {
|
|
|
235
261
|
steps: valueArray,
|
|
236
262
|
sourceWrites: recordArray,
|
|
237
263
|
diagnostics: stringArray,
|
|
264
|
+
capabilityPlugins: recordValue,
|
|
238
265
|
}),
|
|
239
266
|
kb_apply_plan: objectData({
|
|
240
267
|
version: stringValue,
|
|
@@ -256,12 +283,14 @@ export const OPERATION_DATA_SCHEMAS = {
|
|
|
256
283
|
effectFailures: recordArray,
|
|
257
284
|
nextActions: recordArray,
|
|
258
285
|
}),
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
286
|
+
kb_ingest_proof: objectData({
|
|
287
|
+
artifactDigest: stringValue,
|
|
288
|
+
environmentHash: stringValue,
|
|
289
|
+
integration: stringValue,
|
|
290
|
+
passed: integerValue,
|
|
291
|
+
failed: integerValue,
|
|
292
|
+
unchanged: integerValue,
|
|
293
|
+
results: recordArray,
|
|
265
294
|
status: stringValue,
|
|
266
295
|
effectFailures: recordArray,
|
|
267
296
|
nextActions: recordArray,
|
|
@@ -297,10 +326,15 @@ const EFFECT_OVERRIDES = {
|
|
|
297
326
|
"kb-write": { destructive: true, retrySafety: "unsafe" },
|
|
298
327
|
"workspace-write": { destructive: true, retrySafety: "unsafe" },
|
|
299
328
|
},
|
|
300
|
-
|
|
329
|
+
kb_ingest_proof: {
|
|
301
330
|
"kb-write": { destructive: true, retrySafety: "unsafe" },
|
|
302
331
|
},
|
|
303
332
|
};
|
|
333
|
+
export function assertUniqueEffectKinds(operation, declarations, expectedSize) {
|
|
334
|
+
if (new Set(declarations.map(({ kind }) => kind)).size !== expectedSize) {
|
|
335
|
+
throw new Error(`Duplicate effect contract for ${operation}`);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
304
338
|
export function declaredEffects(operation, effects) {
|
|
305
339
|
const overrides = EFFECT_OVERRIDES[operation];
|
|
306
340
|
if (!overrides)
|
|
@@ -318,8 +352,6 @@ export function declaredEffects(operation, effects) {
|
|
|
318
352
|
openWorld: override.openWorld === true,
|
|
319
353
|
};
|
|
320
354
|
});
|
|
321
|
-
|
|
322
|
-
throw new Error(`Duplicate effect contract for ${operation}`);
|
|
323
|
-
}
|
|
355
|
+
assertUniqueEffectKinds(operation, declarations, expected.size);
|
|
324
356
|
return declarations;
|
|
325
357
|
}
|
|
@@ -4,11 +4,26 @@ export type EntityQueryInput = {
|
|
|
4
4
|
readonly id?: string;
|
|
5
5
|
readonly tags?: readonly string[];
|
|
6
6
|
readonly sourceFile?: string;
|
|
7
|
+
/** Page size for index-backed queries; bounds each query's output. */
|
|
8
|
+
readonly limit?: number;
|
|
9
|
+
readonly offset?: number;
|
|
7
10
|
};
|
|
8
11
|
export declare const VALID_ENTITY_TYPES: readonly ["req", "scenario", "test", "adr", "flag", "event", "symbol", "fact"];
|
|
9
12
|
export declare function validateEntityType(type?: string): void;
|
|
10
13
|
export declare function buildEntityGoal(input: EntityQueryInput): string;
|
|
11
14
|
export declare function loadEntities(prolog: Pick<PrologPort, "query">, input: EntityQueryInput): Promise<Record<string, unknown>[]>;
|
|
12
15
|
export declare function paginateResults<T>(results: readonly T[], limit?: number, offset?: number): T[];
|
|
16
|
+
/**
|
|
17
|
+
* Page size for index-backed search candidate fetches. Each page is one
|
|
18
|
+
* Prolog query, so a fixed page size substantially bounds each response and
|
|
19
|
+
* fixes the observed large-KB output overflow; it is a practical bound, not
|
|
20
|
+
* a byte-size guarantee for arbitrarily large individual entity payloads.
|
|
21
|
+
*/
|
|
22
|
+
export declare const SEARCH_CANDIDATE_PAGE_SIZE = 500;
|
|
23
|
+
export declare function loadSearchCandidates(prolog: Pick<PrologPort, "searchEntities">, input: {
|
|
24
|
+
readonly query: string;
|
|
25
|
+
readonly type?: string;
|
|
26
|
+
readonly maxCandidates?: number;
|
|
27
|
+
}, signal?: AbortSignal): Promise<Record<string, unknown>[]>;
|
|
13
28
|
export declare function dedupeEntities(entities: readonly Record<string, unknown>[]): Record<string, unknown>[];
|
|
14
29
|
//# sourceMappingURL=discovery-entities.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-entities.d.ts","sourceRoot":"","sources":["../../../src/public/operations/discovery-entities.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"discovery-entities.d.ts","sourceRoot":"","sources":["../../../src/public/operations/discovery-entities.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,kBAAkB,gFASrB,CAAC;AAGX,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAMtD;AAGD,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAoC/D;AAGD,wBAAsB,YAAY,CAChC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EACjC,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CA0BpC;AAGD,wBAAgB,eAAe,CAAC,CAAC,EAC/B,OAAO,EAAE,SAAS,CAAC,EAAE,EACrB,KAAK,SAAM,EACX,MAAM,SAAI,GACT,CAAC,EAAE,CAEL;AAED;;;;;GAKG;AAEH,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAG9C,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,EAC1C,KAAK,EAAE;IACL,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC,EACD,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CA0BpC;AAGD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAC3C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAQ3B"}
|
|
@@ -45,6 +45,10 @@ export function buildEntityGoal(input) {
|
|
|
45
45
|
}
|
|
46
46
|
if (type) {
|
|
47
47
|
const safeType = escapeAtomContent(type);
|
|
48
|
+
if (input.limit !== undefined) {
|
|
49
|
+
const offset = input.offset ?? 0;
|
|
50
|
+
return `kb_query_entities('${safeType}', none, [], none, ${input.limit}, ${offset}, Results, Count)`;
|
|
51
|
+
}
|
|
48
52
|
return `findall([Id,'${safeType}',Props], kb_entity(Id, '${safeType}', Props), Results)`;
|
|
49
53
|
}
|
|
50
54
|
return "findall([Id,Type,Props], kb_entity(Id, Type, Props), Results)";
|
|
@@ -79,6 +83,40 @@ export async function loadEntities(prolog, input) {
|
|
|
79
83
|
export function paginateResults(results, limit = 100, offset = 0) {
|
|
80
84
|
return results.slice(offset, offset + limit);
|
|
81
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Page size for index-backed search candidate fetches. Each page is one
|
|
88
|
+
* Prolog query, so a fixed page size substantially bounds each response and
|
|
89
|
+
* fixes the observed large-KB output overflow; it is a practical bound, not
|
|
90
|
+
* a byte-size guarantee for arbitrarily large individual entity payloads.
|
|
91
|
+
*/
|
|
92
|
+
// implements REQ-kibi-operation-interface-parity, REQ-mcp-search-discovery
|
|
93
|
+
export const SEARCH_CANDIDATE_PAGE_SIZE = 500;
|
|
94
|
+
// implements REQ-kibi-operation-interface-parity, REQ-mcp-search-discovery
|
|
95
|
+
export async function loadSearchCandidates(prolog, input, signal) {
|
|
96
|
+
const maxCandidates = input.maxCandidates ?? Number.POSITIVE_INFINITY;
|
|
97
|
+
const candidates = [];
|
|
98
|
+
let offset = 0;
|
|
99
|
+
let total = Number.POSITIVE_INFINITY;
|
|
100
|
+
while (offset < total && candidates.length < maxCandidates) {
|
|
101
|
+
// Call through the port property, never via a detached local: EngineClient
|
|
102
|
+
// searchEntities depends on `this` (this.command), and the PrologPort
|
|
103
|
+
// contract does not promise a pre-bound method.
|
|
104
|
+
const page = await prolog.searchEntities?.({
|
|
105
|
+
query: input.query,
|
|
106
|
+
...(input.type !== undefined ? { type: input.type } : {}),
|
|
107
|
+
limit: SEARCH_CANDIDATE_PAGE_SIZE,
|
|
108
|
+
offset,
|
|
109
|
+
}, signal);
|
|
110
|
+
if (!page || page.entities.length === 0)
|
|
111
|
+
break;
|
|
112
|
+
candidates.push(...page.entities);
|
|
113
|
+
total = page.count;
|
|
114
|
+
offset += page.entities.length;
|
|
115
|
+
}
|
|
116
|
+
return Number.isFinite(maxCandidates)
|
|
117
|
+
? candidates.slice(0, maxCandidates)
|
|
118
|
+
: candidates;
|
|
119
|
+
}
|
|
82
120
|
// implements REQ-002
|
|
83
121
|
export function dedupeEntities(entities) {
|
|
84
122
|
const seen = new Set();
|
|
@@ -40,12 +40,12 @@ export type StatusPayload = {
|
|
|
40
40
|
readonly syncState: string;
|
|
41
41
|
readonly kbPath?: string;
|
|
42
42
|
readonly lastSyncSource?: string;
|
|
43
|
-
readonly
|
|
44
|
-
readonly
|
|
45
|
-
readonly
|
|
46
|
-
readonly
|
|
47
|
-
readonly
|
|
48
|
-
readonly
|
|
43
|
+
readonly proofSnapshot?: string;
|
|
44
|
+
readonly proofSnapshotAvailable?: boolean;
|
|
45
|
+
readonly proofSnapshotDirty?: boolean;
|
|
46
|
+
readonly proofSnapshotFileCount?: number;
|
|
47
|
+
readonly proofSnapshotVersion?: string;
|
|
48
|
+
readonly proofSnapshotError?: string;
|
|
49
49
|
readonly staleReasons?: readonly Record<string, unknown>[];
|
|
50
50
|
readonly staleReasonCount?: number;
|
|
51
51
|
readonly staleReasonsTruncated?: boolean;
|
|
@@ -55,9 +55,9 @@ export type StatusPayload = {
|
|
|
55
55
|
readonly kind: "exact" | "explicit_override" | "legacy_compat";
|
|
56
56
|
readonly migrationRequired: boolean;
|
|
57
57
|
};
|
|
58
|
-
readonly
|
|
59
|
-
readonly
|
|
60
|
-
readonly
|
|
58
|
+
readonly proofSnapshotChanges?: readonly Record<string, unknown>[];
|
|
59
|
+
readonly proofSnapshotChangeCount?: number;
|
|
60
|
+
readonly proofSnapshotChangesTruncated?: boolean;
|
|
61
61
|
readonly branchStore?: BranchStoreInspection;
|
|
62
62
|
readonly engineStatus?: {
|
|
63
63
|
readonly state: "healthy" | "unavailable";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-executors.d.ts","sourceRoot":"","sources":["../../../src/public/operations/discovery-executors.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAGpB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACL,KAAK,qBAAqB,
|
|
1
|
+
{"version":3,"file":"discovery-executors.d.ts","sourceRoot":"","sources":["../../../src/public/operations/discovery-executors.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ import { executeIntentSearch, validateIntentSearchInput, } from "../../intent-se
|
|
|
3
3
|
import { classifyActivation } from "../../operations/bootstrap/activation.js";
|
|
4
4
|
import { rankEntities } from "../../search-ranking.js";
|
|
5
5
|
import { resolveBranchAttachment } from "../../utils/branch-resolver.js";
|
|
6
|
-
import { branchStoreReason, inspectBranchStore, } from "../../utils/branch-store.js";
|
|
7
|
-
import { loadEntities, paginateResults, validateEntityType, } from "./discovery-entities.js";
|
|
6
|
+
import { branchStoreReason, inspectBranchStore, storeLockJournalReason, } from "../../utils/branch-store.js";
|
|
7
|
+
import { loadEntities, loadSearchCandidates, paginateResults, validateEntityType, } from "./discovery-entities.js";
|
|
8
8
|
import { buildActionsFromStatus, readMigrationConfigStatus, } from "./migration-plan.js";
|
|
9
9
|
import { OperationJsonDecodeError, runOperationJsonQuery, } from "./prolog-json.js";
|
|
10
10
|
import { readWorkspaceSnapshot } from "./workspace-snapshot.js";
|
|
@@ -29,6 +29,7 @@ export async function executeQuery(input, context) {
|
|
|
29
29
|
const { type, id, tags, sourceFile, limit = 100, offset = 0 } = input;
|
|
30
30
|
try {
|
|
31
31
|
const prolog = requireProlog(context);
|
|
32
|
+
const signal = context.signal;
|
|
32
33
|
const indexedPage = prolog.queryEntities
|
|
33
34
|
? await prolog.queryEntities({
|
|
34
35
|
...(type !== undefined ? { type } : {}),
|
|
@@ -37,7 +38,7 @@ export async function executeQuery(input, context) {
|
|
|
37
38
|
...(sourceFile !== undefined ? { sourceFile } : {}),
|
|
38
39
|
limit,
|
|
39
40
|
offset,
|
|
40
|
-
})
|
|
41
|
+
}, signal)
|
|
41
42
|
: null;
|
|
42
43
|
if (indexedPage !== null) {
|
|
43
44
|
const paginated = indexedPage.entities;
|
|
@@ -118,15 +119,13 @@ export async function executeSearch(input, context) {
|
|
|
118
119
|
};
|
|
119
120
|
}
|
|
120
121
|
const indexedCandidates = prolog.searchEntities
|
|
121
|
-
? await prolog
|
|
122
|
+
? await loadSearchCandidates(prolog, {
|
|
122
123
|
query: trimmedQuery,
|
|
123
124
|
...(type !== undefined ? { type } : {}),
|
|
124
|
-
|
|
125
|
-
offset: 0,
|
|
126
|
-
})
|
|
125
|
+
}, context.signal)
|
|
127
126
|
: null;
|
|
128
127
|
const entities = indexedCandidates
|
|
129
|
-
? [...indexedCandidates
|
|
128
|
+
? [...indexedCandidates]
|
|
130
129
|
: await loadEntities(prolog, {
|
|
131
130
|
...(type !== undefined ? { type } : {}),
|
|
132
131
|
});
|
|
@@ -180,16 +179,22 @@ export async function executeStatus(_input, context) {
|
|
|
180
179
|
}
|
|
181
180
|
else
|
|
182
181
|
try {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
182
|
+
// Prefer an injected or session-backed engine so MCP status shares the
|
|
183
|
+
// same client as discovery tools. Only spawn an owned fallback when no
|
|
184
|
+
// host session is available (CLI status without a live runtime port).
|
|
185
|
+
let prolog = context.prolog;
|
|
186
|
+
if (!prolog && context.ensureProlog) {
|
|
187
|
+
prolog = await context.ensureProlog();
|
|
188
|
+
}
|
|
189
|
+
if (!prolog) {
|
|
190
|
+
ownedEngine = new EngineClient({
|
|
191
|
+
workspaceRoot: context.workspaceRoot,
|
|
192
|
+
branch: attachment.kbBranch,
|
|
193
|
+
timeout: 15_000,
|
|
194
|
+
});
|
|
195
|
+
prolog = ownedEngine;
|
|
196
|
+
}
|
|
197
|
+
payload = await runOperationJsonQuery(prolog, "status.pl", "status:kb_status_json(JsonString)", "Status execution", context.signal);
|
|
193
198
|
if (!isStatusPayload(payload)) {
|
|
194
199
|
throw new Error("Status execution query returned an invalid payload");
|
|
195
200
|
}
|
|
@@ -226,6 +231,7 @@ export async function executeStatus(_input, context) {
|
|
|
226
231
|
const snapshotEvidence = await readWorkspaceSnapshot(context);
|
|
227
232
|
const existingReasons = payload.staleReasons ?? [];
|
|
228
233
|
const storeReason = branchStoreReason(store);
|
|
234
|
+
const lockReason = storeLockJournalReason(store.path);
|
|
229
235
|
const engineReason = engineStatus
|
|
230
236
|
? {
|
|
231
237
|
code: engineStatus.errorCode ?? "engine_status_unavailable",
|
|
@@ -242,6 +248,7 @@ export async function executeStatus(_input, context) {
|
|
|
242
248
|
const staleReasons = [
|
|
243
249
|
...existingReasons,
|
|
244
250
|
...(storeReason ? [storeReason] : []),
|
|
251
|
+
...(lockReason ? [lockReason] : []),
|
|
245
252
|
...(engineReason ? [engineReason] : []),
|
|
246
253
|
].sort((left, right) => String(left.path ?? "").localeCompare(String(right.path ?? "")));
|
|
247
254
|
const enrichedPayload = {
|
|
@@ -252,20 +259,20 @@ export async function executeStatus(_input, context) {
|
|
|
252
259
|
staleReasons,
|
|
253
260
|
staleReasonCount: staleReasons.length,
|
|
254
261
|
staleReasonsTruncated: false,
|
|
255
|
-
|
|
262
|
+
proofSnapshot: snapshotEvidence.available
|
|
256
263
|
? snapshotEvidence.snapshot.hash
|
|
257
264
|
: "unknown",
|
|
258
|
-
|
|
265
|
+
proofSnapshotAvailable: snapshotEvidence.available,
|
|
259
266
|
...(snapshotEvidence.available
|
|
260
267
|
? {
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
268
|
+
proofSnapshotDirty: snapshotEvidence.snapshot.dirty,
|
|
269
|
+
proofSnapshotFileCount: snapshotEvidence.snapshot.fileCount,
|
|
270
|
+
proofSnapshotVersion: snapshotEvidence.snapshot.version,
|
|
271
|
+
proofSnapshotChanges: snapshotEvidence.snapshot.changes ?? [],
|
|
272
|
+
proofSnapshotChangeCount: snapshotEvidence.snapshot.changeCount ?? 0,
|
|
273
|
+
proofSnapshotChangesTruncated: snapshotEvidence.snapshot.changesTruncated ?? false,
|
|
267
274
|
}
|
|
268
|
-
: {
|
|
275
|
+
: { proofSnapshotError: snapshotEvidence.error }),
|
|
269
276
|
};
|
|
270
277
|
const schemaStatus = readMigrationConfigStatus(context.workspaceRoot);
|
|
271
278
|
const migrationPlan = buildActionsFromStatus({
|
|
@@ -273,9 +280,9 @@ export async function executeStatus(_input, context) {
|
|
|
273
280
|
branchAttachment: attachment,
|
|
274
281
|
branchStore: store,
|
|
275
282
|
staleReasons,
|
|
276
|
-
|
|
283
|
+
proofSnapshotAvailable: snapshotEvidence.available,
|
|
277
284
|
...(snapshotEvidence.available
|
|
278
|
-
? {
|
|
285
|
+
? { proofSnapshotDirty: snapshotEvidence.snapshot.dirty }
|
|
279
286
|
: {}),
|
|
280
287
|
kbSnapshotId: payload.snapshotId,
|
|
281
288
|
workspaceSnapshot: snapshotEvidence.available
|
|
@@ -283,7 +290,7 @@ export async function executeStatus(_input, context) {
|
|
|
283
290
|
: null,
|
|
284
291
|
configStatus: schemaStatus,
|
|
285
292
|
});
|
|
286
|
-
const
|
|
293
|
+
const listed = context.fs?.glob
|
|
287
294
|
? await context.fs.glob([
|
|
288
295
|
".kb/requirements/**/*.md",
|
|
289
296
|
".kb/scenarios/**/*.md",
|
|
@@ -295,6 +302,7 @@ export async function executeStatus(_input, context) {
|
|
|
295
302
|
".kb/facts/**/*.md",
|
|
296
303
|
], { cwd: context.workspaceRoot })
|
|
297
304
|
: [];
|
|
305
|
+
const bootstrapSourceFiles = Array.isArray(listed) ? listed : [];
|
|
298
306
|
const bootstrapActivation = await classifyActivation(context, bootstrapSourceFiles);
|
|
299
307
|
const statusWithPlan = {
|
|
300
308
|
...enrichedPayload,
|
|
@@ -341,7 +349,7 @@ export async function executeStatus(_input, context) {
|
|
|
341
349
|
content: [
|
|
342
350
|
{
|
|
343
351
|
type: "text",
|
|
344
|
-
text: `Branch ${payload.branch} is ${payload.syncState} (snapshot ${payload.snapshotId}, dirty=${payload.dirty},
|
|
352
|
+
text: `Branch ${payload.branch} is ${payload.syncState} (snapshot ${payload.snapshotId}, dirty=${payload.dirty}, proofSnapshot=${enrichedPayload.proofSnapshot})`,
|
|
345
353
|
},
|
|
346
354
|
],
|
|
347
355
|
structuredContent: statusWithPlan,
|