kibi-cli 0.19.0 → 2.0.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.d.ts.map +1 -1
- package/dist/cli-operation-loader.js +53 -20
- package/dist/cli-operation-metadata.d.ts +21 -8
- package/dist/cli-operation-metadata.d.ts.map +1 -1
- package/dist/cli-operation-metadata.js +27 -10
- package/dist/cli-protocol.d.ts.map +1 -1
- package/dist/cli-protocol.js +38 -8
- package/dist/cli-register-foundation.d.ts.map +1 -1
- package/dist/cli-register-foundation.js +14 -2
- package/dist/cli-register-maintenance.d.ts.map +1 -1
- package/dist/cli-register-maintenance.js +33 -4
- 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 +103 -0
- package/dist/cli-register-reporting.d.ts.map +1 -1
- package/dist/cli-register-reporting.js +11 -0
- package/dist/cli.d.ts +4 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +17 -8
- package/dist/commands/aggregated-checks.d.ts +1 -2
- package/dist/commands/aggregated-checks.d.ts.map +1 -1
- package/dist/commands/aggregated-checks.js +14 -9
- package/dist/commands/branch.d.ts +37 -0
- package/dist/commands/branch.d.ts.map +1 -1
- package/dist/commands/branch.js +375 -40
- package/dist/commands/check.d.ts +14 -0
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +209 -110
- 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/discovery-shared.d.ts.map +1 -1
- package/dist/commands/discovery-shared.js +10 -19
- package/dist/commands/doctor.d.ts +26 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +291 -30
- package/dist/commands/engine.d.ts +12 -0
- package/dist/commands/engine.d.ts.map +1 -1
- package/dist/commands/engine.js +50 -7
- package/dist/commands/gc.d.ts +5 -2
- package/dist/commands/gc.d.ts.map +1 -1
- package/dist/commands/gc.js +140 -71
- package/dist/commands/github-init.d.ts +57 -0
- package/dist/commands/github-init.d.ts.map +1 -0
- package/dist/commands/github-init.js +314 -0
- package/dist/commands/init-helpers.d.ts +1 -1
- package/dist/commands/init-helpers.d.ts.map +1 -1
- package/dist/commands/init-helpers.js +109 -28
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +79 -24
- package/dist/commands/legacy-storage-migration.d.ts +54 -0
- package/dist/commands/legacy-storage-migration.d.ts.map +1 -0
- package/dist/commands/legacy-storage-migration.js +277 -0
- package/dist/commands/migrate.d.ts +11 -0
- package/dist/commands/migrate.d.ts.map +1 -1
- package/dist/commands/migrate.js +249 -96
- 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 +24 -0
- package/dist/commands/report.d.ts.map +1 -0
- package/dist/commands/report.js +191 -0
- package/dist/commands/sync/cache.d.ts +16 -3
- package/dist/commands/sync/cache.d.ts.map +1 -1
- package/dist/commands/sync/cache.js +111 -4
- package/dist/commands/sync/discovery.d.ts +26 -2
- package/dist/commands/sync/discovery.d.ts.map +1 -1
- package/dist/commands/sync/discovery.js +204 -15
- package/dist/commands/sync/extraction.d.ts +8 -1
- package/dist/commands/sync/extraction.d.ts.map +1 -1
- package/dist/commands/sync/extraction.js +38 -4
- package/dist/commands/sync/manifest.d.ts +9 -6
- package/dist/commands/sync/manifest.d.ts.map +1 -1
- package/dist/commands/sync/manifest.js +195 -60
- 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 +26 -12
- 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 +17 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +375 -106
- package/dist/diagnostics.d.ts +1 -1
- package/dist/diagnostics.d.ts.map +1 -1
- 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 +34 -3
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +578 -42
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +5 -6
- package/dist/extractors/manifest.d.ts +13 -1
- package/dist/extractors/manifest.d.ts.map +1 -1
- package/dist/extractors/manifest.js +97 -10
- package/dist/extractors/markdown.d.ts +5 -2
- package/dist/extractors/markdown.d.ts.map +1 -1
- package/dist/extractors/markdown.js +47 -12
- package/dist/extractors/playwright-cases.d.ts +24 -0
- package/dist/extractors/playwright-cases.d.ts.map +1 -0
- package/dist/extractors/playwright-cases.js +126 -0
- package/dist/extractors/relationships.d.ts +6 -0
- package/dist/extractors/relationships.d.ts.map +1 -1
- package/dist/extractors/relationships.js +2 -1
- package/dist/extractors/symbol-coordinates.d.ts +81 -3
- package/dist/extractors/symbol-coordinates.d.ts.map +1 -1
- package/dist/extractors/symbol-coordinates.js +389 -51
- package/dist/extractors/symbols-coordinator.js +11 -1
- package/dist/extractors/symbols-ts.d.ts +1 -0
- package/dist/extractors/symbols-ts.d.ts.map +1 -1
- package/dist/extractors/symbols-ts.js +142 -67
- package/dist/intent-search.d.ts +61 -0
- package/dist/intent-search.d.ts.map +1 -0
- package/dist/intent-search.js +437 -0
- 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 +5 -0
- package/dist/operations/bootstrap/activation.d.ts.map +1 -0
- package/dist/operations/{autopilot → bootstrap}/activation.js +58 -33
- package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts.map +1 -1
- package/dist/operations/bootstrap/candidates.d.ts +4 -0
- package/dist/operations/{autopilot → bootstrap}/candidates.d.ts.map +1 -1
- package/dist/operations/{autopilot → bootstrap}/candidates.js +22 -8
- package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts +2 -2
- package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts.map +1 -1
- package/dist/operations/{autopilot → bootstrap}/discovery-evidence.js +46 -6
- package/dist/operations/{autopilot → bootstrap}/discovery.d.ts +1 -1
- package/dist/operations/bootstrap/discovery.d.ts.map +1 -0
- package/dist/operations/{autopilot → bootstrap}/discovery.js +21 -14
- package/dist/operations/bootstrap/generate.d.ts +9 -0
- package/dist/operations/bootstrap/generate.d.ts.map +1 -0
- package/dist/operations/bootstrap/generate.js +207 -0
- package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts +2 -2
- package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts.map +1 -1
- package/dist/operations/{autopilot → bootstrap}/guidance-actions.js +4 -4
- package/dist/operations/{autopilot → bootstrap}/guidance.d.ts +3 -2
- package/dist/operations/bootstrap/guidance.d.ts.map +1 -0
- package/dist/operations/{autopilot → bootstrap}/guidance.js +3 -1
- package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts +2 -2
- package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts.map +1 -1
- package/dist/operations/{autopilot → bootstrap}/markdown-candidates.js +4 -3
- package/dist/operations/bootstrap/presentation.d.ts +15 -0
- package/dist/operations/bootstrap/presentation.d.ts.map +1 -0
- package/dist/operations/bootstrap/presentation.js +177 -0
- package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts.map +1 -1
- package/dist/operations/{autopilot → bootstrap}/types.d.ts +63 -21
- package/dist/operations/bootstrap/types.d.ts.map +1 -0
- package/dist/operations/bootstrap/types.js +25 -0
- 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 -63
- package/dist/operations/modeling/predicate-applicability.d.ts +16 -0
- package/dist/operations/modeling/predicate-applicability.d.ts.map +1 -0
- package/dist/operations/modeling/predicate-applicability.js +375 -0
- package/dist/operations/modeling/predicate-applyplan.d.ts +13 -2
- package/dist/operations/modeling/predicate-applyplan.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-applyplan.js +100 -3
- package/dist/operations/modeling/predicate-bindings.d.ts +6 -0
- package/dist/operations/modeling/predicate-bindings.d.ts.map +1 -0
- package/dist/operations/modeling/predicate-bindings.js +122 -0
- 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-4.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-catalog-4.js +155 -0
- 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-inference-1.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-inference-1.js +8 -0
- package/dist/operations/modeling/predicate-inference-launcher.d.ts +10 -0
- package/dist/operations/modeling/predicate-inference-launcher.d.ts.map +1 -0
- package/dist/operations/modeling/predicate-inference-launcher.js +13 -0
- package/dist/operations/modeling/predicate-inference.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-inference.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 +11 -3
- package/dist/operations/modeling/predicate-ranker.d.ts +8 -1
- package/dist/operations/modeling/predicate-ranker.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-ranker.js +159 -24
- package/dist/operations/modeling/predicate-score-3.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-score-3.js +6 -0
- package/dist/operations/modeling/predicate-types.d.ts +35 -1
- package/dist/operations/modeling/predicate-types.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-usage-hints-3.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-usage-hints-3.js +40 -0
- 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/predicate-utils.d.ts.map +1 -1
- package/dist/operations/modeling/predicate-utils.js +2 -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 +203 -32
- 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 +483 -19
- package/dist/operations/mutation/entity-projection.d.ts +11 -0
- package/dist/operations/mutation/entity-projection.d.ts.map +1 -0
- package/dist/operations/mutation/entity-projection.js +14 -0
- package/dist/operations/mutation/relationships.d.ts +11 -0
- package/dist/operations/mutation/relationships.d.ts.map +1 -1
- package/dist/operations/mutation/relationships.js +77 -5
- 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 -1
- package/dist/operations/mutation/source-authoring.d.ts +65 -0
- package/dist/operations/mutation/source-authoring.d.ts.map +1 -0
- package/dist/operations/mutation/source-authoring.js +576 -0
- 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 +54 -0
- package/dist/operations/mutation/symbol-compiler-lock.d.ts.map +1 -0
- package/dist/operations/mutation/symbol-compiler-lock.js +337 -0
- package/dist/operations/mutation/symbol-granularity.d.ts.map +1 -1
- package/dist/operations/mutation/symbol-granularity.js +35 -4
- package/dist/operations/mutation/symbol-refresh.d.ts +19 -1
- package/dist/operations/mutation/symbol-refresh.d.ts.map +1 -1
- package/dist/operations/mutation/symbol-refresh.js +227 -63
- package/dist/operations/mutation/types.d.ts +57 -1
- package/dist/operations/mutation/types.d.ts.map +1 -1
- 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 +403 -32
- 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 +47 -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 +19 -0
- package/dist/operations/planning/apply-plan.d.ts.map +1 -0
- package/dist/operations/planning/apply-plan.js +1514 -0
- package/dist/operations/planning/compile-intent.d.ts +108 -0
- package/dist/operations/planning/compile-intent.d.ts.map +1 -0
- package/dist/operations/planning/compile-intent.js +618 -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 +307 -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 +88 -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/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 +52 -28
- package/dist/operations/semantic-advisor/clauses.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/clauses.js +35 -9
- package/dist/operations/semantic-advisor/ingestion-boundary.d.ts.map +1 -1
- package/dist/operations/semantic-advisor/ingestion-boundary.js +7 -3
- package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts +51 -0
- package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts.map +1 -0
- package/dist/operations/semantic-advisor/predicate-rules-launcher.js +96 -0
- 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 +13 -5
- package/dist/operations/semantic-advisor/types.d.ts.map +1 -1
- package/dist/prolog/codec.d.ts +13 -1
- package/dist/prolog/codec.d.ts.map +1 -1
- package/dist/prolog/codec.js +269 -153
- 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 +82 -25
- 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/proof/producers/playwright-case-id.d.ts +8 -0
- package/dist/proof/producers/playwright-case-id.d.ts.map +1 -0
- package/dist/proof/producers/playwright-case-id.js +25 -0
- 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/branch-resolver.d.ts +1 -0
- package/dist/public/branch-resolver.d.ts.map +1 -1
- package/dist/public/branch-resolver.js +1 -0
- package/dist/public/check-types.d.ts +2 -2
- package/dist/public/check-types.d.ts.map +1 -1
- package/dist/public/check-types.js +16 -16
- package/dist/public/diagnostic-usage.d.ts.map +1 -1
- package/dist/public/diagnostic-usage.js +74 -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 -9
- package/dist/public/ignore-policy.d.ts.map +1 -1
- package/dist/public/ignore-policy.js +16 -4
- package/dist/public/impact/coverage-depth-quality.d.ts +7 -1
- package/dist/public/impact/coverage-depth-quality.d.ts.map +1 -1
- package/dist/public/impact/coverage-depth-quality.js +22 -4
- 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 +7 -2
- package/dist/public/impact/full-kb-quality.d.ts.map +1 -1
- package/dist/public/impact/full-kb-quality.js +364 -39
- package/dist/public/impact/manifest.d.ts.map +1 -1
- package/dist/public/impact/manifest.js +2 -5
- package/dist/public/operational-artifacts.d.ts.map +1 -1
- package/dist/public/operational-artifacts.js +7 -1
- package/dist/public/operations/catalog.d.ts +900 -34
- package/dist/public/operations/catalog.d.ts.map +1 -1
- package/dist/public/operations/catalog.js +130 -6
- package/dist/public/operations/check-executor.d.ts +2 -2
- package/dist/public/operations/check-executor.d.ts.map +1 -1
- package/dist/public/operations/check-executor.js +68 -13
- package/dist/public/operations/check-format-shared.d.ts +3 -0
- package/dist/public/operations/check-format-shared.d.ts.map +1 -1
- package/dist/public/operations/check-format-shared.js +3 -0
- package/dist/public/operations/check-helpers.d.ts +27 -2
- package/dist/public/operations/check-helpers.d.ts.map +1 -1
- package/dist/public/operations/check-helpers.js +62 -26
- package/dist/public/operations/contracts.d.ts +18 -0
- package/dist/public/operations/contracts.d.ts.map +1 -0
- package/dist/public/operations/contracts.js +334 -0
- package/dist/public/operations/discovery-entities.d.ts +3 -0
- package/dist/public/operations/discovery-entities.d.ts.map +1 -1
- package/dist/public/operations/discovery-entities.js +4 -0
- package/dist/public/operations/discovery-executors.d.ts +43 -7
- package/dist/public/operations/discovery-executors.d.ts.map +1 -1
- package/dist/public/operations/discovery-executors.js +216 -13
- package/dist/public/operations/index.d.ts +9 -4
- package/dist/public/operations/index.d.ts.map +1 -1
- package/dist/public/operations/index.js +8 -3
- package/dist/public/operations/migration-plan.d.ts +102 -0
- package/dist/public/operations/migration-plan.d.ts.map +1 -0
- package/dist/public/operations/migration-plan.js +539 -0
- package/dist/public/operations/node-ports.d.ts.map +1 -1
- package/dist/public/operations/node-ports.js +71 -11
- package/dist/public/operations/prolog-json.d.ts +14 -0
- package/dist/public/operations/prolog-json.d.ts.map +1 -1
- package/dist/public/operations/prolog-json.js +44 -5
- 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 -18
- package/dist/public/operations/result-envelope.d.ts +14 -0
- package/dist/public/operations/result-envelope.d.ts.map +1 -0
- package/dist/public/operations/result-envelope.js +106 -0
- package/dist/public/operations/runtime-types.d.ts +102 -7
- package/dist/public/operations/runtime-types.d.ts.map +1 -1
- package/dist/public/operations/source-relationship-parity.d.ts +13 -0
- package/dist/public/operations/source-relationship-parity.d.ts.map +1 -0
- package/dist/public/operations/source-relationship-parity.js +162 -0
- package/dist/public/operations/specs/{autopilot.d.ts → bootstrap.d.ts} +9 -9
- package/dist/public/operations/specs/bootstrap.d.ts.map +1 -0
- package/dist/public/operations/specs/{autopilot.js → bootstrap.js} +8 -7
- 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 +34 -0
- package/dist/public/operations/specs/check.d.ts +9 -4
- package/dist/public/operations/specs/check.d.ts.map +1 -1
- package/dist/public/operations/specs/check.js +10 -21
- package/dist/public/operations/specs/discovery.d.ts +87 -3
- package/dist/public/operations/specs/discovery.d.ts.map +1 -1
- package/dist/public/operations/specs/discovery.js +53 -3
- package/dist/public/operations/specs/modeling.d.ts +3 -3
- package/dist/public/operations/specs/modeling.js +3 -3
- package/dist/public/operations/specs/mutation-schemas.d.ts +251 -14
- package/dist/public/operations/specs/mutation-schemas.d.ts.map +1 -1
- package/dist/public/operations/specs/mutation-schemas.js +16 -6
- package/dist/public/operations/specs/mutation.d.ts +42 -2
- package/dist/public/operations/specs/mutation.d.ts.map +1 -1
- package/dist/public/operations/specs/mutation.js +26 -2
- package/dist/public/operations/specs/planning.d.ts +279 -0
- package/dist/public/operations/specs/planning.d.ts.map +1 -0
- package/dist/public/operations/specs/planning.js +197 -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 +23 -1
- package/dist/public/operations/specs/reporting.d.ts.map +1 -1
- package/dist/public/operations/specs/reporting.js +156 -11
- package/dist/public/operations/specs/upsert.d.ts +265 -14
- package/dist/public/operations/specs/upsert.d.ts.map +1 -1
- package/dist/public/operations/specs/upsert.js +9 -0
- package/dist/public/operations/symbol-repair-plan.d.ts +22 -0
- package/dist/public/operations/symbol-repair-plan.d.ts.map +1 -0
- package/dist/public/operations/symbol-repair-plan.js +238 -0
- package/dist/public/operations/types.d.ts +52 -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 +22 -6
- package/dist/public/skills/kibi-bootstrap/SKILL.md +58 -0
- package/dist/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
- package/dist/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
- package/dist/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
- package/dist/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
- package/dist/public/skills/kibi-freshness/SKILL.md +39 -9
- package/dist/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
- package/dist/public/skills/kibi-freshness/resources/operation-access.md +6 -0
- package/dist/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
- package/dist/public/skills/kibi-traceability/SKILL.md +47 -47
- package/dist/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
- package/dist/public/skills/kibi-traceability/resources/operation-access.md +5 -0
- package/dist/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
- package/dist/public/skills/kibi-traceability/resources/traceability.md +8 -0
- package/dist/public/skills/kibi-usage/SKILL.md +136 -231
- package/dist/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
- package/dist/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
- package/dist/public/skills/kibi-usage/resources/operation-access.md +36 -38
- package/dist/public/skills/kibi-usage/resources/proof.md +105 -0
- package/dist/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
- package/dist/public/skills/kibi-usage/resources/source-authoring.md +31 -0
- package/dist/public/skills/kibi-usage/resources/workflows.md +57 -4
- 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 +20 -0
- package/dist/public/symbol-granularity.js +6 -46
- package/dist/public/telemetry-acceptance.d.ts +3 -70
- package/dist/public/telemetry-acceptance.d.ts.map +1 -1
- package/dist/public/telemetry-acceptance.js +11 -2
- package/dist/public/telemetry-remediation.js +1 -1
- package/dist/relationships/shards.d.ts +16 -0
- package/dist/relationships/shards.d.ts.map +1 -1
- package/dist/relationships/shards.js +87 -2
- package/dist/report/brand.d.ts +19 -0
- package/dist/report/brand.d.ts.map +1 -0
- package/dist/report/brand.js +112 -0
- package/dist/report/html-report.css +282 -0
- package/dist/report/html-report.d.ts +21 -0
- package/dist/report/html-report.d.ts.map +1 -0
- package/dist/report/html-report.js +700 -0
- package/dist/report/relative-time.d.ts +4 -0
- package/dist/report/relative-time.d.ts.map +1 -0
- package/dist/report/relative-time.js +46 -0
- package/dist/report/report-view.d.ts +17 -0
- package/dist/report/report-view.d.ts.map +1 -0
- package/dist/report/report-view.js +33 -0
- package/dist/report/repository.d.ts +35 -0
- package/dist/report/repository.d.ts.map +1 -0
- package/dist/report/repository.js +151 -0
- 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 +90 -23
- package/dist/schemas/entity.schema.json +1254 -239
- 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 +30 -2
- package/dist/traceability/evidence-model.d.ts.map +1 -1
- package/dist/traceability/evidence-model.js +2 -2
- 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 +156 -37
- package/dist/traceability/markdown-validate.d.ts.map +1 -1
- package/dist/traceability/markdown-validate.js +12 -7
- 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.d.ts +3 -3
- package/dist/traceability/staged-impact-contract.d.ts.map +1 -1
- package/dist/traceability/staged-impact-contract.js +12 -40
- 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 +142 -26
- package/dist/traceability/symbol-extract.d.ts +5 -0
- package/dist/traceability/symbol-extract.d.ts.map +1 -1
- package/dist/traceability/symbol-extract.js +1 -1
- 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 +14 -2
- package/dist/types/entities.d.ts +5 -0
- package/dist/types/entities.d.ts.map +1 -1
- package/dist/utils/branch-resolver.d.ts +25 -10
- package/dist/utils/branch-resolver.d.ts.map +1 -1
- package/dist/utils/branch-resolver.js +124 -38
- package/dist/utils/branch-store-locator.d.ts +23 -0
- package/dist/utils/branch-store-locator.d.ts.map +1 -0
- package/dist/utils/branch-store-locator.js +90 -0
- package/dist/utils/branch-store.d.ts +21 -0
- package/dist/utils/branch-store.d.ts.map +1 -0
- package/dist/utils/branch-store.js +157 -0
- package/dist/utils/config.d.ts +39 -37
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +107 -119
- package/dist/utils/kb-manifest.d.ts +35 -0
- package/dist/utils/kb-manifest.d.ts.map +1 -0
- package/dist/utils/kb-manifest.js +154 -0
- package/dist/utils/kb-paths.d.ts +54 -0
- package/dist/utils/kb-paths.d.ts.map +1 -0
- package/dist/utils/kb-paths.js +125 -0
- package/dist/utils/manifest-paths.d.ts +4 -4
- package/dist/utils/manifest-paths.d.ts.map +1 -1
- package/dist/utils/manifest-paths.js +8 -56
- package/dist/utils/rule-registry.d.ts +42 -24
- package/dist/utils/rule-registry.d.ts.map +1 -1
- package/dist/utils/rule-registry.generated.d.ts +97 -0
- package/dist/utils/rule-registry.generated.d.ts.map +1 -0
- package/dist/utils/rule-registry.generated.js +125 -0
- package/dist/utils/rule-registry.js +52 -148
- package/dist/utils/schema-version.d.ts +5 -5
- package/dist/utils/schema-version.d.ts.map +1 -1
- package/dist/utils/schema-version.js +26 -6
- package/dist/utils/strict-modeling.d.ts +1 -4
- package/dist/utils/strict-modeling.d.ts.map +1 -1
- package/dist/utils/strict-modeling.js +8 -9
- package/package.json +47 -11
- package/schema/config.json +2 -2
- package/schema/manifest.json +26 -0
- package/src/public/branch-resolver.ts +1 -0
- package/src/public/check-types.ts +22 -19
- package/src/public/diagnostic-usage.ts +84 -6
- package/src/public/distribution-parity.ts +17 -9
- package/src/public/ignore-policy.ts +16 -10
- package/src/public/impact/coverage-depth-quality.ts +37 -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 +545 -41
- package/src/public/impact/manifest.ts +2 -4
- package/src/public/operational-artifacts.ts +9 -1
- package/src/public/operations/catalog.ts +153 -10
- package/src/public/operations/check-executor.ts +98 -15
- package/src/public/operations/check-format-shared.ts +6 -0
- package/src/public/operations/check-helpers.ts +74 -35
- package/src/public/operations/contracts.ts +382 -0
- package/src/public/operations/discovery-entities.ts +7 -0
- package/src/public/operations/discovery-executors.ts +315 -25
- package/src/public/operations/index.ts +9 -4
- package/src/public/operations/migration-plan.ts +747 -0
- package/src/public/operations/node-ports.ts +87 -13
- package/src/public/operations/prolog-json.ts +60 -5
- package/src/public/operations/repair-plan.ts +60 -22
- package/src/public/operations/result-envelope.ts +141 -0
- package/src/public/operations/runtime-types.ts +96 -5
- package/src/public/operations/source-relationship-parity.ts +226 -0
- package/src/public/operations/specs/{autopilot.ts → bootstrap.ts} +17 -16
- package/src/public/operations/specs/check-rules.generated.ts +37 -0
- package/src/public/operations/specs/check.ts +14 -22
- package/src/public/operations/specs/discovery.ts +57 -3
- package/src/public/operations/specs/modeling.ts +3 -3
- package/src/public/operations/specs/mutation-schemas.ts +24 -6
- package/src/public/operations/specs/mutation.ts +27 -2
- package/src/public/operations/specs/planning.ts +241 -0
- package/src/public/operations/specs/proof.ts +43 -0
- package/src/public/operations/specs/reporting.ts +193 -12
- package/src/public/operations/specs/upsert.ts +10 -0
- package/src/public/operations/symbol-repair-plan.ts +324 -0
- package/src/public/operations/types.ts +62 -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 +27 -6
- package/src/public/skills/kibi-bootstrap/SKILL.md +58 -0
- package/src/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
- package/src/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
- package/src/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
- package/src/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
- package/src/public/skills/kibi-freshness/SKILL.md +39 -9
- package/src/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
- package/src/public/skills/kibi-freshness/resources/operation-access.md +6 -0
- package/src/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
- package/src/public/skills/kibi-traceability/SKILL.md +47 -47
- package/src/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
- package/src/public/skills/kibi-traceability/resources/operation-access.md +5 -0
- package/src/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
- package/src/public/skills/kibi-traceability/resources/traceability.md +8 -0
- package/src/public/skills/kibi-usage/SKILL.md +136 -231
- package/src/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
- package/src/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
- package/src/public/skills/kibi-usage/resources/operation-access.md +36 -38
- package/src/public/skills/kibi-usage/resources/proof.md +105 -0
- package/src/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
- package/src/public/skills/kibi-usage/resources/source-authoring.md +31 -0
- package/src/public/skills/kibi-usage/resources/workflows.md +57 -4
- package/src/public/symbol-granularity.generated.ts +41 -0
- package/src/public/symbol-granularity.ts +35 -59
- package/src/public/telemetry-acceptance-types.d.ts +98 -0
- package/src/public/telemetry-acceptance.ts +30 -93
- package/src/public/telemetry-remediation.ts +1 -1
- package/src/schemas/entity.schema.json +1254 -239
- package/templates/github/kibi-badge.yml +86 -0
- package/templates/github/kibi-report.yml +84 -0
- package/dist/operations/autopilot/activation.d.ts +0 -4
- package/dist/operations/autopilot/activation.d.ts.map +0 -1
- package/dist/operations/autopilot/candidates.d.ts +0 -4
- package/dist/operations/autopilot/discovery.d.ts.map +0 -1
- package/dist/operations/autopilot/generate.d.ts +0 -8
- package/dist/operations/autopilot/generate.d.ts.map +0 -1
- package/dist/operations/autopilot/generate.js +0 -112
- package/dist/operations/autopilot/guidance.d.ts.map +0 -1
- package/dist/operations/autopilot/presentation.d.ts +0 -13
- package/dist/operations/autopilot/presentation.d.ts.map +0 -1
- package/dist/operations/autopilot/presentation.js +0 -91
- package/dist/operations/autopilot/types.d.ts.map +0 -1
- package/dist/operations/autopilot/types.js +0 -8
- package/dist/public/operations/specs/autopilot.d.ts.map +0 -1
- package/dist/public/skills/init-kibi/SKILL.md +0 -62
- package/dist/public/verification-receipt.d.ts +0 -75
- package/dist/public/verification-receipt.d.ts.map +0 -1
- package/dist/public/verification-receipt.js +0 -129
- package/src/public/skills/init-kibi/SKILL.md +0 -62
- package/src/public/verification-receipt.ts +0 -170
- /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts +0 -0
- /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.js +0 -0
- /package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts +0 -0
- /package/dist/operations/{autopilot → bootstrap}/requirement-claims.js +0 -0
|
@@ -1,64 +1,16 @@
|
|
|
1
|
-
import { existsSync, readFileSync } from "node:fs";
|
|
2
1
|
import * as path from "node:path";
|
|
3
|
-
|
|
4
|
-
export const
|
|
5
|
-
|
|
6
|
-
return typeof value === "string" && value.trim().length > 0;
|
|
7
|
-
}
|
|
8
|
-
function resolveConfigPath(workspaceRoot, configPath) {
|
|
9
|
-
const configuredPath = configPath ?? path.join(workspaceRoot, ".kb", "config.json");
|
|
10
|
-
return path.isAbsolute(configuredPath)
|
|
11
|
-
? configuredPath
|
|
12
|
-
: path.resolve(workspaceRoot, configuredPath);
|
|
13
|
-
}
|
|
14
|
-
function readManifestResolverConfig(workspaceRoot, configPath) {
|
|
15
|
-
const resolvedConfigPath = resolveConfigPath(workspaceRoot, configPath);
|
|
16
|
-
if (!existsSync(resolvedConfigPath)) {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
try {
|
|
20
|
-
return JSON.parse(readFileSync(resolvedConfigPath, "utf8"));
|
|
21
|
-
}
|
|
22
|
-
catch {
|
|
23
|
-
return null;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
function resolveConfiguredSymbolsPath(workspaceRoot, configPath) {
|
|
27
|
-
const config = readManifestResolverConfig(workspaceRoot, configPath);
|
|
28
|
-
if (!config) {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
const configuredPathCandidate = config.paths?.symbols ?? config.symbolsManifest;
|
|
32
|
-
if (!isNonEmptyString(configuredPathCandidate)) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
return path.isAbsolute(configuredPathCandidate)
|
|
36
|
-
? configuredPathCandidate
|
|
37
|
-
: path.resolve(workspaceRoot, configuredPathCandidate);
|
|
38
|
-
}
|
|
39
|
-
function resolveDefaultSymbolsPath(workspaceRoot) {
|
|
40
|
-
const candidates = [
|
|
41
|
-
path.join(workspaceRoot, DEFAULT_SYMBOLS_PATH),
|
|
42
|
-
path.join(workspaceRoot, "symbols.yaml"),
|
|
43
|
-
path.join(workspaceRoot, "symbols.yml"),
|
|
44
|
-
];
|
|
45
|
-
return (candidates.find((candidate) => existsSync(candidate)) ??
|
|
46
|
-
candidates[0] ??
|
|
47
|
-
path.join(workspaceRoot, DEFAULT_SYMBOLS_PATH));
|
|
48
|
-
}
|
|
49
|
-
function deriveCoordinatesPath(symbolsPath) {
|
|
50
|
-
return path.join(path.dirname(symbolsPath), path.basename(DEFAULT_COORDINATES_PATH));
|
|
51
|
-
}
|
|
2
|
+
import { CANONICAL_ENTITY_PATHS, KB_PATHS } from "./kb-paths.js";
|
|
3
|
+
export const DEFAULT_SYMBOLS_PATH = KB_PATHS.symbolsManifest;
|
|
4
|
+
export const DEFAULT_COORDINATES_PATH = KB_PATHS.symbolCoordinates;
|
|
52
5
|
// implements REQ-cli-sync
|
|
53
|
-
export function resolveSymbolsManifestPaths(workspaceRoot
|
|
54
|
-
const symbolsPath =
|
|
55
|
-
resolveDefaultSymbolsPath(workspaceRoot);
|
|
6
|
+
export function resolveSymbolsManifestPaths(workspaceRoot) {
|
|
7
|
+
const symbolsPath = path.join(workspaceRoot, CANONICAL_ENTITY_PATHS.symbols);
|
|
56
8
|
return {
|
|
57
9
|
symbolsPath,
|
|
58
|
-
coordinatesPath:
|
|
10
|
+
coordinatesPath: path.join(workspaceRoot, DEFAULT_COORDINATES_PATH),
|
|
59
11
|
};
|
|
60
12
|
}
|
|
61
13
|
// implements REQ-cli-sync
|
|
62
|
-
export function resolveSymbolsManifestPath(workspaceRoot
|
|
63
|
-
return resolveSymbolsManifestPaths(workspaceRoot
|
|
14
|
+
export function resolveSymbolsManifestPath(workspaceRoot) {
|
|
15
|
+
return resolveSymbolsManifestPaths(workspaceRoot).symbolsPath;
|
|
64
16
|
}
|
|
@@ -1,16 +1,27 @@
|
|
|
1
|
+
export type RuleEnforcementClass =
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
3
|
+
* Canonical blocking correctness checks. Always evaluated by
|
|
4
|
+
* `kibi check`, hooks, CI, reports, and coverage summaries. Not
|
|
5
|
+
* configurable by any project surface.
|
|
4
6
|
*/
|
|
7
|
+
"canonical"
|
|
8
|
+
/**
|
|
9
|
+
* Advisory modeling-quality checks. Reported as quality diagnostics to
|
|
10
|
+
* guide agents, but never gate canonical health on their own.
|
|
11
|
+
*/
|
|
12
|
+
| "advisory"
|
|
13
|
+
/**
|
|
14
|
+
* Migration/experimental diagnostics. Default-off; surfaced only through
|
|
15
|
+
* explicit invocation-time `--rules` selection for focused diagnosis.
|
|
16
|
+
*/
|
|
17
|
+
| "migration";
|
|
5
18
|
export interface RuleDefinition {
|
|
6
19
|
name: string;
|
|
7
20
|
description: string;
|
|
8
|
-
|
|
21
|
+
/** Kibi-owned role of this rule in the enforcement contract. */
|
|
22
|
+
enforcementClass: RuleEnforcementClass;
|
|
9
23
|
category: "coverage" | "integrity" | "lifecycle" | "traceability";
|
|
10
24
|
}
|
|
11
|
-
export interface SymbolTraceabilityOptions {
|
|
12
|
-
requireAdr: boolean;
|
|
13
|
-
}
|
|
14
25
|
/** A single KB check violation. */
|
|
15
26
|
export interface Violation {
|
|
16
27
|
rule: string;
|
|
@@ -21,37 +32,44 @@ export interface Violation {
|
|
|
21
32
|
/** Exact source-bound proof evidence, when the check can produce it. */
|
|
22
33
|
evidence?: Readonly<Record<string, unknown>>;
|
|
23
34
|
}
|
|
24
|
-
|
|
25
|
-
rules: Record<string, boolean>;
|
|
26
|
-
symbolTraceability: SymbolTraceabilityOptions;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* All known check rules.
|
|
30
|
-
* When adding a new rule, add it here.
|
|
31
|
-
*/
|
|
35
|
+
/** All known check rules, generated from the shared registry JSON. */
|
|
32
36
|
export declare const RULES: readonly RuleDefinition[];
|
|
33
37
|
/**
|
|
34
38
|
* Set of all rule names for quick lookups.
|
|
35
39
|
*/
|
|
36
40
|
export declare const RULE_NAMES: Set<string>;
|
|
41
|
+
export declare function getRuleDefinition(name: string): RuleDefinition | undefined;
|
|
42
|
+
export declare function getRuleEnforcementClass(name: string): RuleEnforcementClass | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Whether a plain `kibi check` evaluates this enforcement class.
|
|
45
|
+
* Canonical and advisory rules run; migration rules run only when
|
|
46
|
+
* explicitly selected with `--rules`.
|
|
47
|
+
*/
|
|
48
|
+
export declare function ruleRunsByDefault(enforcementClass: RuleEnforcementClass): boolean;
|
|
37
49
|
/**
|
|
38
|
-
*
|
|
50
|
+
* Rules that a plain `kibi check` evaluates. Derived from enforcement
|
|
51
|
+
* class: canonical and advisory run, migration does not.
|
|
39
52
|
*/
|
|
40
|
-
export declare
|
|
53
|
+
export declare function getDefaultRules(): Set<string>;
|
|
41
54
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
|
|
55
|
+
* Canonical blocking rules only. Used by health badges, reports, and CI
|
|
56
|
+
* gates that must not fail on advisory or migration diagnostics.
|
|
57
|
+
*/
|
|
58
|
+
export declare function getCanonicalRules(): Set<string>;
|
|
59
|
+
export declare function isCanonicalRule(name: string): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Resolve the rule set for one check invocation.
|
|
62
|
+
*
|
|
63
|
+
* @param requestedRules Optional invocation-time diagnostic selector
|
|
64
|
+
* (`--rules`). When absent, canonical and advisory rules run. When
|
|
65
|
+
* present, only the selected rules run for that invocation and nothing is
|
|
66
|
+
* persisted. Selection never changes enforcement class.
|
|
45
67
|
* @returns Set of rule names that should run
|
|
46
68
|
*/
|
|
47
|
-
export declare function getEffectiveRules(
|
|
69
|
+
export declare function getEffectiveRules(requestedRules?: readonly string[]): Set<string>;
|
|
48
70
|
/**
|
|
49
71
|
* Validate a rule name.
|
|
50
72
|
* @returns Error message if invalid, null if valid
|
|
51
73
|
*/
|
|
52
74
|
export declare function validateRuleName(name: string): string | null;
|
|
53
|
-
/**
|
|
54
|
-
* Merge partial checks config with defaults.
|
|
55
|
-
*/
|
|
56
|
-
export declare function mergeChecksConfig(partial?: Partial<ChecksConfig>): ChecksConfig;
|
|
57
75
|
//# sourceMappingURL=rule-registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule-registry.d.ts","sourceRoot":"","sources":["../../src/utils/rule-registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rule-registry.d.ts","sourceRoot":"","sources":["../../src/utils/rule-registry.ts"],"names":[],"mappings":"AAgCA,MAAM,MAAM,oBAAoB;AAC9B;;;;GAIG;AACD,WAAW;AACb;;;GAGG;GACD,UAAU;AACZ;;;GAGG;GACD,WAAW,CAAC;AAEhB,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,QAAQ,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC;CACnE;AAED,mCAAmC;AACnC,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC9C;AAED,sEAAsE;AACtE,eAAO,MAAM,KAAK,EAAE,SAAS,cAAc,EAAoB,CAAC;AAIhE;;GAEG;AACH,eAAO,MAAM,UAAU,aAAoC,CAAC;AAE5D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAE1E;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,GACX,oBAAoB,GAAG,SAAS,CAElC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,oBAAoB,GACrC,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,GAAG,CAAC,MAAM,CAAC,CAM7C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAAC,MAAM,CAAC,CAM/C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;;;;;GAQG;AAEH,wBAAgB,iBAAiB,CAC/B,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,GACjC,GAAG,CAAC,MAAM,CAAC,CAOb;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAK5D"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
export declare const GENERATED_RULES: readonly [{
|
|
2
|
+
readonly name: "must-priority-coverage";
|
|
3
|
+
readonly description: "Every must-priority requirement must have a scenario and a test";
|
|
4
|
+
readonly enforcementClass: "canonical";
|
|
5
|
+
readonly category: "coverage";
|
|
6
|
+
}, {
|
|
7
|
+
readonly name: "symbol-coverage";
|
|
8
|
+
readonly description: "Production symbols need qualifying coverage via covered_by plus a canonical requirement/scenario test path";
|
|
9
|
+
readonly enforcementClass: "canonical";
|
|
10
|
+
readonly category: "coverage";
|
|
11
|
+
}, {
|
|
12
|
+
readonly name: "symbol-traceability";
|
|
13
|
+
readonly description: "Production symbols must directly implement requirements for ownership; covered_by is coverage only and executable_for is test identity only";
|
|
14
|
+
readonly enforcementClass: "canonical";
|
|
15
|
+
readonly category: "traceability";
|
|
16
|
+
}, {
|
|
17
|
+
readonly name: "no-dangling-refs";
|
|
18
|
+
readonly description: "All relationship targets must exist in the KB";
|
|
19
|
+
readonly enforcementClass: "canonical";
|
|
20
|
+
readonly category: "integrity";
|
|
21
|
+
}, {
|
|
22
|
+
readonly name: "source-relationship-parity";
|
|
23
|
+
readonly description: "Authored Markdown and relationship-shard edges must exactly match the compiled KB";
|
|
24
|
+
readonly enforcementClass: "canonical";
|
|
25
|
+
readonly category: "integrity";
|
|
26
|
+
}, {
|
|
27
|
+
readonly name: "no-cycles";
|
|
28
|
+
readonly description: "No circular dependency chains in requirements";
|
|
29
|
+
readonly enforcementClass: "canonical";
|
|
30
|
+
readonly category: "integrity";
|
|
31
|
+
}, {
|
|
32
|
+
readonly name: "required-fields";
|
|
33
|
+
readonly description: "All entities must have required fields";
|
|
34
|
+
readonly enforcementClass: "canonical";
|
|
35
|
+
readonly category: "integrity";
|
|
36
|
+
}, {
|
|
37
|
+
readonly name: "deprecated-adr-no-successor";
|
|
38
|
+
readonly description: "Deprecated ADRs must have a successor ADR that supersedes them";
|
|
39
|
+
readonly enforcementClass: "canonical";
|
|
40
|
+
readonly category: "lifecycle";
|
|
41
|
+
}, {
|
|
42
|
+
readonly name: "domain-contradictions";
|
|
43
|
+
readonly description: "Detect contradictions between requirements constraining the same fact";
|
|
44
|
+
readonly enforcementClass: "canonical";
|
|
45
|
+
readonly category: "integrity";
|
|
46
|
+
}, {
|
|
47
|
+
readonly name: "logic-coverage";
|
|
48
|
+
readonly description: "Require every explicitly declared atomic requirement claim to be grounded by a linked strict-property or predicate fact";
|
|
49
|
+
readonly enforcementClass: "canonical";
|
|
50
|
+
readonly category: "integrity";
|
|
51
|
+
}, {
|
|
52
|
+
readonly name: "rule-safety";
|
|
53
|
+
readonly description: "Stored Logic IR rules use only the typed, bounded, stratified vocabulary";
|
|
54
|
+
readonly enforcementClass: "canonical";
|
|
55
|
+
readonly category: "integrity";
|
|
56
|
+
}, {
|
|
57
|
+
readonly name: "rule-verifiability";
|
|
58
|
+
readonly description: "Requirement rule links resolve to safe rules and registered rule schemas";
|
|
59
|
+
readonly enforcementClass: "canonical";
|
|
60
|
+
readonly category: "integrity";
|
|
61
|
+
}, {
|
|
62
|
+
readonly name: "query-plan-safety";
|
|
63
|
+
readonly description: "Detect Prolog validation clauses that place negation before generator calls";
|
|
64
|
+
readonly enforcementClass: "canonical";
|
|
65
|
+
readonly category: "integrity";
|
|
66
|
+
}, {
|
|
67
|
+
readonly name: "req-status-vocabulary";
|
|
68
|
+
readonly description: "Requirement statuses must use the canonical vocabulary (open, in_progress, closed; legacy: active, approved); ADR statuses such as accepted silently fall out of the proof ladder";
|
|
69
|
+
readonly enforcementClass: "canonical";
|
|
70
|
+
readonly category: "lifecycle";
|
|
71
|
+
}, {
|
|
72
|
+
readonly name: "strict-fact-shape";
|
|
73
|
+
readonly description: "Detect malformed strict facts (facts with fact_kind that are missing required fields)";
|
|
74
|
+
readonly enforcementClass: "advisory";
|
|
75
|
+
readonly category: "integrity";
|
|
76
|
+
}, {
|
|
77
|
+
readonly name: "strict-req-fact-pairing";
|
|
78
|
+
readonly description: "Detect requirements with incomplete strict subject/property fact pairing for contradiction-safe semantics";
|
|
79
|
+
readonly enforcementClass: "advisory";
|
|
80
|
+
readonly category: "integrity";
|
|
81
|
+
}, {
|
|
82
|
+
readonly name: "predicate-verifiability";
|
|
83
|
+
readonly description: "Detect requires_predicate links that do not target ground fact_kind: predicate facts";
|
|
84
|
+
readonly enforcementClass: "advisory";
|
|
85
|
+
readonly category: "integrity";
|
|
86
|
+
}, {
|
|
87
|
+
readonly name: "strict-readiness";
|
|
88
|
+
readonly description: "Report strict contradiction-readiness levels for requirements that are still prose-only or otherwise not contradiction-ready";
|
|
89
|
+
readonly enforcementClass: "migration";
|
|
90
|
+
readonly category: "integrity";
|
|
91
|
+
}, {
|
|
92
|
+
readonly name: "semantic-completeness";
|
|
93
|
+
readonly description: "Every inventoried assertive proposition is modeled or explicitly classified";
|
|
94
|
+
readonly enforcementClass: "migration";
|
|
95
|
+
readonly category: "integrity";
|
|
96
|
+
}];
|
|
97
|
+
//# sourceMappingURL=rule-registry.generated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rule-registry.generated.d.ts","sourceRoot":"","sources":["../../src/utils/rule-registry.generated.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmIlB,CAAC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Kibi — repo-local, per-branch, queryable long-term memory for software projects
|
|
3
|
+
* Copyright (C) 2026 Piotr Franczyk
|
|
4
|
+
*
|
|
5
|
+
* This file is generated by scripts/generate-rule-registry.mjs from
|
|
6
|
+
* packages/core/schema/rule-registry.json. Do not edit it directly; edit the
|
|
7
|
+
* JSON source and regenerate.
|
|
8
|
+
*/
|
|
9
|
+
// implements REQ-006
|
|
10
|
+
export const GENERATED_RULES = [
|
|
11
|
+
{
|
|
12
|
+
name: "must-priority-coverage",
|
|
13
|
+
description: "Every must-priority requirement must have a scenario and a test",
|
|
14
|
+
enforcementClass: "canonical",
|
|
15
|
+
category: "coverage",
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: "symbol-coverage",
|
|
19
|
+
description: "Production symbols need qualifying coverage via covered_by plus a canonical requirement/scenario test path",
|
|
20
|
+
enforcementClass: "canonical",
|
|
21
|
+
category: "coverage",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: "symbol-traceability",
|
|
25
|
+
description: "Production symbols must directly implement requirements for ownership; covered_by is coverage only and executable_for is test identity only",
|
|
26
|
+
enforcementClass: "canonical",
|
|
27
|
+
category: "traceability",
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: "no-dangling-refs",
|
|
31
|
+
description: "All relationship targets must exist in the KB",
|
|
32
|
+
enforcementClass: "canonical",
|
|
33
|
+
category: "integrity",
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: "source-relationship-parity",
|
|
37
|
+
description: "Authored Markdown and relationship-shard edges must exactly match the compiled KB",
|
|
38
|
+
enforcementClass: "canonical",
|
|
39
|
+
category: "integrity",
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: "no-cycles",
|
|
43
|
+
description: "No circular dependency chains in requirements",
|
|
44
|
+
enforcementClass: "canonical",
|
|
45
|
+
category: "integrity",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: "required-fields",
|
|
49
|
+
description: "All entities must have required fields",
|
|
50
|
+
enforcementClass: "canonical",
|
|
51
|
+
category: "integrity",
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: "deprecated-adr-no-successor",
|
|
55
|
+
description: "Deprecated ADRs must have a successor ADR that supersedes them",
|
|
56
|
+
enforcementClass: "canonical",
|
|
57
|
+
category: "lifecycle",
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: "domain-contradictions",
|
|
61
|
+
description: "Detect contradictions between requirements constraining the same fact",
|
|
62
|
+
enforcementClass: "canonical",
|
|
63
|
+
category: "integrity",
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: "logic-coverage",
|
|
67
|
+
description: "Require every explicitly declared atomic requirement claim to be grounded by a linked strict-property or predicate fact",
|
|
68
|
+
enforcementClass: "canonical",
|
|
69
|
+
category: "integrity",
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "rule-safety",
|
|
73
|
+
description: "Stored Logic IR rules use only the typed, bounded, stratified vocabulary",
|
|
74
|
+
enforcementClass: "canonical",
|
|
75
|
+
category: "integrity",
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: "rule-verifiability",
|
|
79
|
+
description: "Requirement rule links resolve to safe rules and registered rule schemas",
|
|
80
|
+
enforcementClass: "canonical",
|
|
81
|
+
category: "integrity",
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: "query-plan-safety",
|
|
85
|
+
description: "Detect Prolog validation clauses that place negation before generator calls",
|
|
86
|
+
enforcementClass: "canonical",
|
|
87
|
+
category: "integrity",
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
name: "req-status-vocabulary",
|
|
91
|
+
description: "Requirement statuses must use the canonical vocabulary (open, in_progress, closed; legacy: active, approved); ADR statuses such as accepted silently fall out of the proof ladder",
|
|
92
|
+
enforcementClass: "canonical",
|
|
93
|
+
category: "lifecycle",
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: "strict-fact-shape",
|
|
97
|
+
description: "Detect malformed strict facts (facts with fact_kind that are missing required fields)",
|
|
98
|
+
enforcementClass: "advisory",
|
|
99
|
+
category: "integrity",
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
name: "strict-req-fact-pairing",
|
|
103
|
+
description: "Detect requirements with incomplete strict subject/property fact pairing for contradiction-safe semantics",
|
|
104
|
+
enforcementClass: "advisory",
|
|
105
|
+
category: "integrity",
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: "predicate-verifiability",
|
|
109
|
+
description: "Detect requires_predicate links that do not target ground fact_kind: predicate facts",
|
|
110
|
+
enforcementClass: "advisory",
|
|
111
|
+
category: "integrity",
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: "strict-readiness",
|
|
115
|
+
description: "Report strict contradiction-readiness levels for requirements that are still prose-only or otherwise not contradiction-ready",
|
|
116
|
+
enforcementClass: "migration",
|
|
117
|
+
category: "integrity",
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: "semantic-completeness",
|
|
121
|
+
description: "Every inventoried assertive proposition is modeled or explicitly classified",
|
|
122
|
+
enforcementClass: "migration",
|
|
123
|
+
category: "integrity",
|
|
124
|
+
},
|
|
125
|
+
];
|
|
@@ -16,151 +16,70 @@
|
|
|
16
16
|
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
19
|
+
* Central registry of KB check rules.
|
|
20
|
+
*
|
|
21
|
+
* Kibi — not the repository — owns each rule's enforcement class. Projects
|
|
22
|
+
* can no longer disable canonical checks. `--rules` remains an
|
|
23
|
+
* invocation-time diagnostic selector only and never persists policy.
|
|
24
|
+
*
|
|
25
|
+
* RULES itself is generated from packages/core/schema/rule-registry.json by
|
|
26
|
+
* scripts/generate-rule-registry.mjs; that JSON is the single editing point
|
|
27
|
+
* shared with the kb_check input enum and the Prolog rule_registry facts.
|
|
21
28
|
*/
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
description: "Every must-priority requirement must have a scenario and a test",
|
|
27
|
-
defaultEnabled: true,
|
|
28
|
-
category: "coverage",
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
name: "symbol-coverage",
|
|
32
|
-
description: "Production symbols need qualifying coverage via covered_by plus a canonical requirement/scenario test path",
|
|
33
|
-
defaultEnabled: true,
|
|
34
|
-
category: "coverage",
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
name: "symbol-traceability",
|
|
38
|
-
description: "Production symbols must directly implement requirements for ownership; covered_by is coverage only, executable_for is test identity only, and ADR constraints are optional unless configured",
|
|
39
|
-
defaultEnabled: true,
|
|
40
|
-
category: "traceability",
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
name: "no-dangling-refs",
|
|
44
|
-
description: "All relationship targets must exist in the KB",
|
|
45
|
-
defaultEnabled: true,
|
|
46
|
-
category: "integrity",
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
name: "no-cycles",
|
|
50
|
-
description: "No circular dependency chains in requirements",
|
|
51
|
-
defaultEnabled: true,
|
|
52
|
-
category: "integrity",
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
name: "required-fields",
|
|
56
|
-
description: "All entities must have required fields",
|
|
57
|
-
defaultEnabled: true,
|
|
58
|
-
category: "integrity",
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
name: "deprecated-adr-no-successor",
|
|
62
|
-
description: "Deprecated ADRs must have a successor ADR that supersedes them",
|
|
63
|
-
defaultEnabled: true,
|
|
64
|
-
category: "lifecycle",
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
name: "domain-contradictions",
|
|
68
|
-
description: "Detect contradictions between requirements constraining the same fact",
|
|
69
|
-
defaultEnabled: true,
|
|
70
|
-
category: "integrity",
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
name: "strict-fact-shape",
|
|
74
|
-
description: "Detect malformed strict facts (facts with fact_kind that are missing required fields)",
|
|
75
|
-
defaultEnabled: false,
|
|
76
|
-
category: "integrity",
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
name: "strict-req-fact-pairing",
|
|
80
|
-
description: "Detect requirements with incomplete strict subject/property fact pairing for contradiction-safe semantics",
|
|
81
|
-
defaultEnabled: false,
|
|
82
|
-
category: "integrity",
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
name: "strict-readiness",
|
|
86
|
-
description: "Report strict contradiction-readiness levels for requirements that are still prose-only or otherwise not contradiction-ready",
|
|
87
|
-
defaultEnabled: false,
|
|
88
|
-
category: "integrity",
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
name: "predicate-verifiability",
|
|
92
|
-
description: "Detect requires_predicate links that do not target ground fact_kind: predicate facts",
|
|
93
|
-
defaultEnabled: false,
|
|
94
|
-
category: "integrity",
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
name: "logic-coverage",
|
|
98
|
-
description: "Require every explicitly declared atomic requirement claim to be grounded by a linked strict-property or predicate fact",
|
|
99
|
-
defaultEnabled: true,
|
|
100
|
-
category: "integrity",
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: "rule-safety",
|
|
104
|
-
description: "Stored Logic IR rules use only the typed, bounded, stratified vocabulary",
|
|
105
|
-
defaultEnabled: true,
|
|
106
|
-
category: "integrity",
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
name: "rule-verifiability",
|
|
110
|
-
description: "Requirement rule links resolve to safe rules and registered rule schemas",
|
|
111
|
-
defaultEnabled: true,
|
|
112
|
-
category: "integrity",
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
name: "semantic-completeness",
|
|
116
|
-
description: "Every inventoried assertive proposition is modeled or explicitly classified",
|
|
117
|
-
defaultEnabled: false,
|
|
118
|
-
category: "integrity",
|
|
119
|
-
},
|
|
120
|
-
{
|
|
121
|
-
name: "query-plan-safety",
|
|
122
|
-
description: "Detect Prolog validation clauses that place negation before generator calls",
|
|
123
|
-
defaultEnabled: true,
|
|
124
|
-
category: "integrity",
|
|
125
|
-
},
|
|
126
|
-
];
|
|
29
|
+
import { GENERATED_RULES } from "./rule-registry.generated.js";
|
|
30
|
+
/** All known check rules, generated from the shared registry JSON. */
|
|
31
|
+
export const RULES = GENERATED_RULES;
|
|
32
|
+
const RULES_BY_NAME = new Map(RULES.map((rule) => [rule.name, rule]));
|
|
127
33
|
/**
|
|
128
34
|
* Set of all rule names for quick lookups.
|
|
129
35
|
*/
|
|
130
36
|
export const RULE_NAMES = new Set(RULES.map((r) => r.name));
|
|
37
|
+
export function getRuleDefinition(name) {
|
|
38
|
+
return RULES_BY_NAME.get(name);
|
|
39
|
+
}
|
|
40
|
+
export function getRuleEnforcementClass(name) {
|
|
41
|
+
return RULES_BY_NAME.get(name)?.enforcementClass;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Whether a plain `kibi check` evaluates this enforcement class.
|
|
45
|
+
* Canonical and advisory rules run; migration rules run only when
|
|
46
|
+
* explicitly selected with `--rules`.
|
|
47
|
+
*/
|
|
48
|
+
export function ruleRunsByDefault(enforcementClass) {
|
|
49
|
+
return enforcementClass !== "migration";
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Rules that a plain `kibi check` evaluates. Derived from enforcement
|
|
53
|
+
* class: canonical and advisory run, migration does not.
|
|
54
|
+
*/
|
|
55
|
+
export function getDefaultRules() {
|
|
56
|
+
return new Set(RULES.filter((rule) => ruleRunsByDefault(rule.enforcementClass)).map((rule) => rule.name));
|
|
57
|
+
}
|
|
131
58
|
/**
|
|
132
|
-
*
|
|
59
|
+
* Canonical blocking rules only. Used by health badges, reports, and CI
|
|
60
|
+
* gates that must not fail on advisory or migration diagnostics.
|
|
133
61
|
*/
|
|
134
|
-
export
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
}
|
|
62
|
+
export function getCanonicalRules() {
|
|
63
|
+
return new Set(RULES.filter((rule) => rule.enforcementClass === "canonical").map((r) => r.name));
|
|
64
|
+
}
|
|
65
|
+
export function isCanonicalRule(name) {
|
|
66
|
+
return RULES_BY_NAME.get(name)?.enforcementClass === "canonical";
|
|
67
|
+
}
|
|
140
68
|
/**
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
-
* @param
|
|
69
|
+
* Resolve the rule set for one check invocation.
|
|
70
|
+
*
|
|
71
|
+
* @param requestedRules Optional invocation-time diagnostic selector
|
|
72
|
+
* (`--rules`). When absent, canonical and advisory rules run. When
|
|
73
|
+
* present, only the selected rules run for that invocation and nothing is
|
|
74
|
+
* persisted. Selection never changes enforcement class.
|
|
144
75
|
* @returns Set of rule names that should run
|
|
145
76
|
*/
|
|
146
77
|
// implements REQ-006
|
|
147
|
-
export function getEffectiveRules(
|
|
148
|
-
if (
|
|
149
|
-
return new Set(
|
|
150
|
-
.split(",")
|
|
151
|
-
.map((s) => s.trim())
|
|
152
|
-
.filter((s) => RULE_NAMES.has(s)));
|
|
153
|
-
}
|
|
154
|
-
// Start with all known rules
|
|
155
|
-
const effective = new Set();
|
|
156
|
-
for (const rule of RULES) {
|
|
157
|
-
// Config value takes precedence over default, missing means use default
|
|
158
|
-
const enabled = configRules?.[rule.name] ?? rule.defaultEnabled;
|
|
159
|
-
if (enabled) {
|
|
160
|
-
effective.add(rule.name);
|
|
161
|
-
}
|
|
78
|
+
export function getEffectiveRules(requestedRules) {
|
|
79
|
+
if (requestedRules !== undefined) {
|
|
80
|
+
return new Set(requestedRules.filter((name) => RULE_NAMES.has(name)));
|
|
162
81
|
}
|
|
163
|
-
return
|
|
82
|
+
return getDefaultRules();
|
|
164
83
|
}
|
|
165
84
|
/**
|
|
166
85
|
* Validate a rule name.
|
|
@@ -172,18 +91,3 @@ export function validateRuleName(name) {
|
|
|
172
91
|
}
|
|
173
92
|
return null;
|
|
174
93
|
}
|
|
175
|
-
/**
|
|
176
|
-
* Merge partial checks config with defaults.
|
|
177
|
-
*/
|
|
178
|
-
export function mergeChecksConfig(partial) {
|
|
179
|
-
return {
|
|
180
|
-
rules: {
|
|
181
|
-
...DEFAULT_CHECKS_CONFIG.rules,
|
|
182
|
-
...partial?.rules,
|
|
183
|
-
},
|
|
184
|
-
symbolTraceability: {
|
|
185
|
-
...DEFAULT_CHECKS_CONFIG.symbolTraceability,
|
|
186
|
-
...partial?.symbolTraceability,
|
|
187
|
-
},
|
|
188
|
-
};
|
|
189
|
-
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const LATEST_KB_SCHEMA_VERSION = 4;
|
|
1
|
+
export declare const LATEST_KB_SCHEMA_VERSION = 5;
|
|
3
2
|
export interface SchemaVersionStatus {
|
|
4
3
|
status: "missing" | "invalid" | "older" | "current" | "newer";
|
|
5
4
|
currentVersion: number | null;
|
|
@@ -7,8 +6,9 @@ export interface SchemaVersionStatus {
|
|
|
7
6
|
needsMigration: boolean;
|
|
8
7
|
warning: string | null;
|
|
9
8
|
}
|
|
10
|
-
type
|
|
9
|
+
export type SchemaVersionSource = {
|
|
10
|
+
schemaVersion: number | string | null | undefined;
|
|
11
|
+
} | null | undefined;
|
|
11
12
|
export declare function normalizeSchemaVersion(schemaVersion: number | string | null | undefined): number | null;
|
|
12
|
-
export declare function getSchemaVersionStatus(config?:
|
|
13
|
-
export {};
|
|
13
|
+
export declare function getSchemaVersionStatus(config?: SchemaVersionSource): SchemaVersionStatus;
|
|
14
14
|
//# sourceMappingURL=schema-version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-version.d.ts","sourceRoot":"","sources":["../../src/utils/schema-version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema-version.d.ts","sourceRoot":"","sources":["../../src/utils/schema-version.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;IAC9D,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CAAE,GACrD,IAAI,GACJ,SAAS,CAAC;AAGd,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAChD,MAAM,GAAG,IAAI,CAgBf;AAGD,wBAAgB,sBAAsB,CACpC,MAAM,CAAC,EAAE,mBAAmB,GAC3B,mBAAmB,CAgDrB"}
|