@zxyycom/vibe-check 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -74
- package/dist/esm/cache/cache-json-by-key.mjs +189 -0
- package/dist/esm/cache/cache-json-by-key.mjs.map +1 -0
- package/dist/esm/check/check.mjs.map +1 -1
- package/dist/esm/check/finding-presentation.mjs +40 -0
- package/dist/esm/check/finding-presentation.mjs.map +1 -0
- package/dist/esm/check/inherited-collection.mjs +1 -1
- package/dist/esm/check/inherited-collection.mjs.map +1 -1
- package/dist/esm/check-settlement/fact-validation.mjs +17 -23
- package/dist/esm/check-settlement/fact-validation.mjs.map +1 -1
- package/dist/esm/check-settlement/outcome-normalization.mjs +9 -19
- package/dist/esm/check-settlement/outcome-normalization.mjs.map +1 -1
- package/dist/esm/check-settlement/reason-shape.mjs +12 -0
- package/dist/esm/check-settlement/reason-shape.mjs.map +1 -0
- package/dist/esm/check-settlement/record-store.mjs +14 -17
- package/dist/esm/check-settlement/record-store.mjs.map +1 -1
- package/dist/esm/check-settlement/session.mjs +8 -2
- package/dist/esm/check-settlement/session.mjs.map +1 -1
- package/dist/esm/data-boundary/closed-values.mjs +16 -0
- package/dist/esm/data-boundary/closed-values.mjs.map +1 -1
- package/dist/esm/data-boundary/value-shapes.mjs +9 -0
- package/dist/esm/data-boundary/value-shapes.mjs.map +1 -1
- package/dist/esm/index.mjs +9 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/learned-critical-path/duration-model/bounded-history.mjs +56 -0
- package/dist/esm/learned-critical-path/duration-model/bounded-history.mjs.map +1 -0
- package/dist/esm/learned-critical-path/duration-model/prediction.mjs +122 -0
- package/dist/esm/learned-critical-path/duration-model/prediction.mjs.map +1 -0
- package/dist/esm/learned-critical-path/duration-model/preparation.mjs +41 -0
- package/dist/esm/learned-critical-path/duration-model/preparation.mjs.map +1 -0
- package/dist/esm/learned-critical-path/duration-model/recording.mjs +109 -0
- package/dist/esm/learned-critical-path/duration-model/recording.mjs.map +1 -0
- package/dist/esm/learned-critical-path/duration-model/storage.mjs +187 -0
- package/dist/esm/learned-critical-path/duration-model/storage.mjs.map +1 -0
- package/dist/esm/learned-critical-path/selection-layers.mjs +28 -0
- package/dist/esm/learned-critical-path/selection-layers.mjs.map +1 -0
- package/dist/esm/learned-critical-path/static-decision.mjs +55 -0
- package/dist/esm/learned-critical-path/static-decision.mjs.map +1 -0
- package/dist/esm/learned-critical-path/strategy.mjs +179 -0
- package/dist/esm/learned-critical-path/strategy.mjs.map +1 -0
- package/dist/esm/machine-output/v4/atomic-publication.mjs +1 -15
- package/dist/esm/machine-output/v4/atomic-publication.mjs.map +1 -1
- package/dist/esm/package-checks/code-quality-findings/finding-waiver-authoring.mjs +40 -0
- package/dist/esm/package-checks/code-quality-findings/finding-waiver-authoring.mjs.map +1 -0
- package/dist/esm/package-checks/code-quality-findings/finding-waiver-evidence.mjs +48 -0
- package/dist/esm/package-checks/code-quality-findings/finding-waiver-evidence.mjs.map +1 -0
- package/dist/esm/package-checks/code-quality-findings/policy.mjs +20 -0
- package/dist/esm/package-checks/code-quality-findings/policy.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/area-policy.mjs +15 -7
- package/dist/esm/package-checks/duplicate-detection/area-policy.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/cache/identity.mjs +1 -1
- package/dist/esm/package-checks/duplicate-detection/cache/identity.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/default-check.mjs +1 -1
- package/dist/esm/package-checks/duplicate-detection/default-check.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/execution.mjs +44 -18
- package/dist/esm/package-checks/duplicate-detection/execution.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/finding-messages.mjs +59 -0
- package/dist/esm/package-checks/duplicate-detection/finding-messages.mjs.map +1 -0
- package/dist/esm/package-checks/duplicate-detection/finding-waiver-identity.mjs +55 -0
- package/dist/esm/package-checks/duplicate-detection/finding-waiver-identity.mjs.map +1 -0
- package/dist/esm/package-checks/duplicate-detection/jscpd/availability.mjs +1 -1
- package/dist/esm/package-checks/duplicate-detection/jscpd/availability.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/jscpd/command-resolution.mjs +1 -1
- package/dist/esm/package-checks/duplicate-detection/jscpd/command-resolution.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/jscpd/json-report.mjs +15 -5
- package/dist/esm/package-checks/duplicate-detection/jscpd/json-report.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/jscpd/scanner.mjs +5 -4
- package/dist/esm/package-checks/duplicate-detection/jscpd/scanner.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/options-resolution.mjs +22 -47
- package/dist/esm/package-checks/duplicate-detection/options-resolution.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/options-validation.mjs +20 -25
- package/dist/esm/package-checks/duplicate-detection/options-validation.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/options.mjs.map +1 -1
- package/dist/esm/package-checks/duplicate-detection/records.mjs +27 -6
- package/dist/esm/package-checks/duplicate-detection/records.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/execution.mjs +10 -17
- package/dist/esm/package-checks/file-metrics/execution.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/finding-messages.mjs +22 -0
- package/dist/esm/package-checks/file-metrics/finding-messages.mjs.map +1 -0
- package/dist/esm/package-checks/file-metrics/options-resolution.mjs +11 -43
- package/dist/esm/package-checks/file-metrics/options-resolution.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/options-validation.mjs +15 -25
- package/dist/esm/package-checks/file-metrics/options-validation.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/records.mjs +2 -9
- package/dist/esm/package-checks/file-metrics/records.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/scc/availability.mjs +1 -1
- package/dist/esm/package-checks/file-metrics/scc/availability.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/scc/parser.mjs +4 -4
- package/dist/esm/package-checks/file-metrics/scc/parser.mjs.map +1 -1
- package/dist/esm/package-checks/file-metrics/scc/scanner.mjs +2 -2
- package/dist/esm/package-checks/file-metrics/scc/scanner.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/analysis.mjs +56 -15
- package/dist/esm/package-checks/function-metrics/analysis.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/analyzer/analysis-context.mjs +550 -0
- package/dist/esm/package-checks/function-metrics/analyzer/analysis-context.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/analysis-model.mjs +332 -0
- package/dist/esm/package-checks/function-metrics/analyzer/analysis-model.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/contracts.mjs +7 -0
- package/dist/esm/package-checks/function-metrics/analyzer/contracts.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/lizardcomplextags.mjs +24 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/lizardcomplextags.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/lizardnd.mjs +113 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/lizardnd.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/protocol.mjs +180 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/protocol.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/registry.mjs +121 -0
- package/dist/esm/package-checks/function-metrics/analyzer/extensions/registry.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/pipeline.mjs +217 -0
- package/dist/esm/package-checks/function-metrics/analyzer/pipeline.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/port-facade.mjs +96 -0
- package/dist/esm/package-checks/function-metrics/analyzer/port-facade.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/reader-registry.mjs +76 -0
- package/dist/esm/package-checks/function-metrics/analyzer/reader-registry.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/csharp.mjs +88 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/csharp.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/erlang.mjs +466 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/erlang.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/fortran.mjs +289 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/fortran.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/gdscript.mjs +38 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/gdscript.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/go.mjs +44 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/go.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/java-body-states.mjs +113 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/java-body-states.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/java.mjs +247 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/java.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/javascript.mjs +16 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/javascript.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/kotlin.mjs +103 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/kotlin.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/lua.mjs +55 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/lua.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/objc.mjs +100 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/objc.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/perl.mjs +367 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/perl.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/php-states.mjs +260 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/php-states.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/php.mjs +53 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/php.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/plsql.mjs +306 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/plsql.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/python.mjs +402 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/python.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/r.mjs +214 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/r.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/ruby.mjs +75 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/ruby.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/rust.mjs +32 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/rust.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/scala.mjs +47 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/scala.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/solidity.mjs +22 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/solidity.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/st.mjs +142 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/st.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/swift.mjs +94 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/swift.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/tsx.mjs +149 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/tsx.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/ttcn.mjs +79 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/ttcn.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/typescript.mjs +606 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/typescript.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/vue.mjs +31 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/vue.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/zig.mjs +23 -0
- package/dist/esm/package-checks/function-metrics/analyzer/readers/zig.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/clike.mjs +492 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/clike.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/code-reader.mjs +542 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/code-reader.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/golike.mjs +141 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/golike.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/js-style-regex.mjs +62 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/js-style-regex.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/rubylike.mjs +154 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/rubylike.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/script-language.mjs +36 -0
- package/dist/esm/package-checks/function-metrics/analyzer/shared/script-language.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer-adapter.mjs +56 -0
- package/dist/esm/package-checks/function-metrics/analyzer-adapter.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer-worker-contract.mjs +2 -0
- package/dist/esm/package-checks/function-metrics/analyzer-worker-contract.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer-worker-port.mjs +108 -0
- package/dist/esm/package-checks/function-metrics/analyzer-worker-port.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/analyzer-worker.mjs +24 -0
- package/dist/esm/package-checks/function-metrics/analyzer-worker.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/constructor.mjs +2 -2
- package/dist/esm/package-checks/function-metrics/constructor.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/execution.mjs +51 -33
- package/dist/esm/package-checks/function-metrics/execution.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/finding-messages.mjs +75 -0
- package/dist/esm/package-checks/function-metrics/finding-messages.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/finding-waiver-identity.mjs +28 -0
- package/dist/esm/package-checks/function-metrics/finding-waiver-identity.mjs.map +1 -0
- package/dist/esm/package-checks/function-metrics/measurement-model.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/measurement.mjs +161 -26
- package/dist/esm/package-checks/function-metrics/measurement.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/options-resolution.mjs +30 -63
- package/dist/esm/package-checks/function-metrics/options-resolution.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/options-validation.mjs +27 -32
- package/dist/esm/package-checks/function-metrics/options-validation.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/options.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/records.mjs +31 -1
- package/dist/esm/package-checks/function-metrics/records.mjs.map +1 -1
- package/dist/esm/package-checks/function-metrics/target-files.mjs +6 -67
- package/dist/esm/package-checks/function-metrics/target-files.mjs.map +1 -1
- package/dist/esm/package-checks/{file-metrics/scc → host-environment}/csv.mjs +1 -0
- package/dist/esm/package-checks/host-environment/csv.mjs.map +1 -0
- package/dist/esm/package-checks/host-environment/git.mjs +1 -1
- package/dist/esm/package-checks/host-environment/git.mjs.map +1 -1
- package/dist/esm/package-checks/host-environment/process.mjs +5 -0
- package/dist/esm/package-checks/host-environment/process.mjs.map +1 -0
- package/dist/esm/package-checks/json-schema-validation/final-data.mjs.map +1 -1
- package/dist/esm/package-checks/json-schema-validation/options-validation.mjs +15 -17
- package/dist/esm/package-checks/json-schema-validation/options-validation.mjs.map +1 -1
- package/dist/esm/package-checks/json-schema-validation/options.mjs.map +1 -1
- package/dist/esm/package-checks/json-validation/final-data.mjs.map +1 -1
- package/dist/esm/package-checks/json-validation/options-validation.mjs +4 -10
- package/dist/esm/package-checks/json-validation/options-validation.mjs.map +1 -1
- package/dist/esm/package-checks/maintenance-reminders/final-data.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/default-check.mjs +9 -3
- package/dist/esm/package-checks/markdown-link-validation/default-check.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/execution.mjs +27 -24
- package/dist/esm/package-checks/markdown-link-validation/execution.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/filesystem-probes.mjs +82 -53
- package/dist/esm/package-checks/markdown-link-validation/filesystem-probes.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/final-data.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/finding-messages.mjs +36 -0
- package/dist/esm/package-checks/markdown-link-validation/finding-messages.mjs.map +1 -0
- package/dist/esm/package-checks/markdown-link-validation/local-resolution.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/local-resolver.mjs +2 -2
- package/dist/esm/package-checks/markdown-link-validation/local-resolver.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/options-resolution.mjs +26 -4
- package/dist/esm/package-checks/markdown-link-validation/options-resolution.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/options-validation.mjs +24 -11
- package/dist/esm/package-checks/markdown-link-validation/options-validation.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/options.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/parse-facts-cache-payload.mjs +185 -0
- package/dist/esm/package-checks/markdown-link-validation/parse-facts-cache-payload.mjs.map +1 -0
- package/dist/esm/package-checks/markdown-link-validation/parse-facts-cache.mjs +131 -0
- package/dist/esm/package-checks/markdown-link-validation/parse-facts-cache.mjs.map +1 -0
- package/dist/esm/package-checks/markdown-link-validation/resolver-engine.mjs +58 -57
- package/dist/esm/package-checks/markdown-link-validation/resolver-engine.mjs.map +1 -1
- package/dist/esm/package-checks/markdown-link-validation/source-reader.mjs +54 -0
- package/dist/esm/package-checks/markdown-link-validation/source-reader.mjs.map +1 -0
- package/dist/esm/package-checks/markdown-link-validation/unavailable-reasons.mjs +16 -0
- package/dist/esm/package-checks/markdown-link-validation/unavailable-reasons.mjs.map +1 -0
- package/dist/esm/package-checks/project-files/collection.mjs +1 -1
- package/dist/esm/package-checks/project-files/collection.mjs.map +1 -1
- package/dist/esm/package-checks/project-files/configuration.mjs +2 -10
- package/dist/esm/package-checks/project-files/configuration.mjs.map +1 -1
- package/dist/esm/package-checks/project-files/gitlink-revision.mjs +1 -1
- package/dist/esm/package-checks/project-files/gitlink-revision.mjs.map +1 -1
- package/dist/esm/package-checks/project-files/gitlink-worktree.mjs +1 -1
- package/dist/esm/package-checks/project-files/gitlink-worktree.mjs.map +1 -1
- package/dist/esm/package-checks/project-files/public-collection.mjs +56 -0
- package/dist/esm/package-checks/project-files/public-collection.mjs.map +1 -0
- package/dist/esm/package-checks/project-files/revision-worktree-files.mjs +1 -1
- package/dist/esm/package-checks/project-files/revision-worktree-files.mjs.map +1 -1
- package/dist/esm/package-checks/secret-detection/classification.mjs +15 -0
- package/dist/esm/package-checks/secret-detection/classification.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/default-check.mjs +39 -0
- package/dist/esm/package-checks/secret-detection/default-check.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/execution.mjs +172 -0
- package/dist/esm/package-checks/secret-detection/execution.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/final-data.mjs +33 -0
- package/dist/esm/package-checks/secret-detection/final-data.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/finding-waiver-identity.mjs +30 -0
- package/dist/esm/package-checks/secret-detection/finding-waiver-identity.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/input-preparation.mjs +153 -0
- package/dist/esm/package-checks/secret-detection/input-preparation.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/options-resolution.mjs +40 -0
- package/dist/esm/package-checks/secret-detection/options-resolution.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/options-validation.mjs +22 -0
- package/dist/esm/package-checks/secret-detection/options-validation.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/options.mjs +2 -0
- package/dist/esm/package-checks/secret-detection/options.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/records.mjs +31 -0
- package/dist/esm/package-checks/secret-detection/records.mjs.map +1 -0
- package/dist/esm/package-checks/secret-detection/secretlint/adapter.mjs +85 -0
- package/dist/esm/package-checks/secret-detection/secretlint/adapter.mjs.map +1 -0
- package/dist/esm/project-definition/check-tree/authoring.mjs +12 -172
- package/dist/esm/project-definition/check-tree/authoring.mjs.map +1 -1
- package/dist/esm/project-definition/check-tree/check-fields-authoring.mjs +171 -0
- package/dist/esm/project-definition/check-tree/check-fields-authoring.mjs.map +1 -0
- package/dist/esm/project-definition/check-tree/collection-authoring.mjs +16 -0
- package/dist/esm/project-definition/check-tree/collection-authoring.mjs.map +1 -0
- package/dist/esm/project-definition/check-tree/materialization.mjs +9 -1
- package/dist/esm/project-definition/check-tree/materialization.mjs.map +1 -1
- package/dist/esm/project-definition/check-tree/resolution.mjs +45 -13
- package/dist/esm/project-definition/check-tree/resolution.mjs.map +1 -1
- package/dist/esm/project-definition/check-tree/scheduling-authoring.mjs +73 -0
- package/dist/esm/project-definition/check-tree/scheduling-authoring.mjs.map +1 -0
- package/dist/esm/project-definition/declarative-snapshot.mjs +73 -0
- package/dist/esm/project-definition/declarative-snapshot.mjs.map +1 -0
- package/dist/esm/project-definition/output-defaults.mjs +18 -1
- package/dist/esm/project-definition/output-defaults.mjs.map +1 -1
- package/dist/esm/project-definition/output-validation.mjs +15 -15
- package/dist/esm/project-definition/output-validation.mjs.map +1 -1
- package/dist/esm/project-definition/progress-rendering-output.mjs +52 -0
- package/dist/esm/project-definition/progress-rendering-output.mjs.map +1 -0
- package/dist/esm/project-definition/project-definition-validation.mjs +100 -16
- package/dist/esm/project-definition/project-definition-validation.mjs.map +1 -1
- package/dist/esm/project-definition/project-definition.mjs +52 -47
- package/dist/esm/project-definition/project-definition.mjs.map +1 -1
- package/dist/esm/project-definition/resource-unit-mapping.mjs +21 -0
- package/dist/esm/project-definition/resource-unit-mapping.mjs.map +1 -0
- package/dist/esm/project-definition/scheduler-policy.mjs +2 -0
- package/dist/esm/project-definition/scheduler-policy.mjs.map +1 -0
- package/dist/esm/project-run/admission-strategy-provider/custom-strategy-preparation.mjs +54 -0
- package/dist/esm/project-run/admission-strategy-provider/custom-strategy-preparation.mjs.map +1 -0
- package/dist/esm/project-run/admission-strategy-provider/prepared-admission-strategy.mjs +2 -0
- package/dist/esm/project-run/admission-strategy-provider/prepared-admission-strategy.mjs.map +1 -0
- package/dist/esm/project-run/admission-strategy-provider/provider.mjs +23 -0
- package/dist/esm/project-run/admission-strategy-provider/provider.mjs.map +1 -0
- package/dist/esm/project-run/aggregation.mjs +7 -5
- package/dist/esm/project-run/aggregation.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/callback.mjs +35 -8
- package/dist/esm/project-run/check-execution/callback.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/console-capture.mjs +220 -0
- package/dist/esm/project-run/check-execution/console-capture.mjs.map +1 -0
- package/dist/esm/project-run/check-execution/dependencies.mjs +21 -3
- package/dist/esm/project-run/check-execution/dependencies.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/execution-finalization.mjs +54 -13
- package/dist/esm/project-run/check-execution/execution-finalization.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/execution-settlement.mjs +13 -9
- package/dist/esm/project-run/check-execution/execution-settlement.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/flag-controls.mjs +87 -0
- package/dist/esm/project-run/check-execution/flag-controls.mjs.map +1 -0
- package/dist/esm/project-run/check-execution/lifecycle.mjs +2 -0
- package/dist/esm/project-run/check-execution/lifecycle.mjs.map +1 -0
- package/dist/esm/project-run/check-execution/messages.mjs +5 -0
- package/dist/esm/project-run/check-execution/messages.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/plan.mjs +9 -5
- package/dist/esm/project-run/check-execution/plan.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/preflight.mjs +18 -32
- package/dist/esm/project-run/check-execution/preflight.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/resolved-checks.mjs +100 -58
- package/dist/esm/project-run/check-execution/resolved-checks.mjs.map +1 -1
- package/dist/esm/project-run/check-execution/resolved-execution-result.mjs +2 -0
- package/dist/esm/project-run/check-execution/resolved-execution-result.mjs.map +1 -0
- package/dist/esm/project-run/{completion.mjs → completion/completion.mjs} +16 -38
- package/dist/esm/project-run/completion/completion.mjs.map +1 -0
- package/dist/esm/project-run/{machine-publication.mjs → completion/machine-publication.mjs} +1 -1
- package/dist/esm/project-run/completion/machine-publication.mjs.map +1 -0
- package/dist/esm/project-run/completion/result-resolver.mjs +36 -0
- package/dist/esm/project-run/completion/result-resolver.mjs.map +1 -0
- package/dist/esm/project-run/controls/contract.mjs.map +1 -1
- package/dist/esm/project-run/controls/outputs-override-validation.mjs +67 -47
- package/dist/esm/project-run/controls/outputs-override-validation.mjs.map +1 -1
- package/dist/esm/project-run/controls/validation-result.mjs.map +1 -1
- package/dist/esm/project-run/controls/validation.mjs +75 -11
- package/dist/esm/project-run/controls/validation.mjs.map +1 -1
- package/dist/esm/project-run/diagnostic-logging/logger.mjs +100 -161
- package/dist/esm/project-run/diagnostic-logging/logger.mjs.map +1 -1
- package/dist/esm/project-run/diagnostic-logging/observation-rendering.mjs +159 -0
- package/dist/esm/project-run/diagnostic-logging/observation-rendering.mjs.map +1 -0
- package/dist/esm/project-run/invocation/candidate.mjs +61 -0
- package/dist/esm/project-run/invocation/candidate.mjs.map +1 -0
- package/dist/esm/project-run/invocation/creation.mjs +79 -0
- package/dist/esm/project-run/invocation/creation.mjs.map +1 -0
- package/dist/esm/project-run/invocation/paths.mjs +77 -0
- package/dist/esm/project-run/invocation/paths.mjs.map +1 -0
- package/dist/esm/project-run/invocation/progress.mjs +30 -0
- package/dist/esm/project-run/invocation/progress.mjs.map +1 -0
- package/dist/esm/project-run/{invocation.mjs → invocation/run.mjs} +78 -92
- package/dist/esm/project-run/invocation/run.mjs.map +1 -0
- package/dist/esm/project-run/invocation/scheduler.mjs +57 -0
- package/dist/esm/project-run/invocation/scheduler.mjs.map +1 -0
- package/dist/esm/project-run/{output-configuration.mjs → outputs/configuration.mjs} +3 -2
- package/dist/esm/project-run/outputs/configuration.mjs.map +1 -0
- package/dist/esm/project-run/outputs/status.mjs +105 -0
- package/dist/esm/project-run/outputs/status.mjs.map +1 -0
- package/dist/esm/project-run/progress-rendering/presentation.mjs +112 -18
- package/dist/esm/project-run/progress-rendering/presentation.mjs.map +1 -1
- package/dist/esm/project-run/progress-rendering/renderer-formatting.mjs +108 -19
- package/dist/esm/project-run/progress-rendering/renderer-formatting.mjs.map +1 -1
- package/dist/esm/project-run/progress-rendering/renderer-lifecycle.mjs +30 -4
- package/dist/esm/project-run/progress-rendering/renderer-lifecycle.mjs.map +1 -1
- package/dist/esm/project-run/progress-rendering/renderer.mjs +5 -2
- package/dist/esm/project-run/progress-rendering/renderer.mjs.map +1 -1
- package/dist/esm/project-run/project-context.mjs +1 -1
- package/dist/esm/project-run/project-context.mjs.map +1 -1
- package/dist/esm/project-run/result.mjs +2 -0
- package/dist/esm/project-run/result.mjs.map +1 -1
- package/dist/esm/project-run/run.mjs +1 -1
- package/dist/esm/project-run/run.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/admission-core/compiled-graph.mjs +166 -0
- package/dist/esm/project-run/task-scheduler/admission-core/compiled-graph.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/core.mjs +163 -0
- package/dist/esm/project-run/task-scheduler/admission-core/core.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/input.mjs +119 -0
- package/dist/esm/project-run/task-scheduler/admission-core/input.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/projection.mjs +124 -0
- package/dist/esm/project-run/task-scheduler/admission-core/projection.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-index.mjs +99 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-index.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-query.mjs +198 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-query.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-seed.mjs +151 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-seed.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-transition.mjs +121 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection-transition.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection.mjs +65 -0
- package/dist/esm/project-run/task-scheduler/admission-core/selection.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-scope-layers.mjs +25 -0
- package/dist/esm/project-run/task-scheduler/admission-scope-layers.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/admission-selection-policy.mjs +55 -0
- package/dist/esm/project-run/task-scheduler/admission-selection-policy.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/critical-path-ranking.mjs +46 -0
- package/dist/esm/project-run/task-scheduler/critical-path-ranking.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/custom-admission-policy.mjs +110 -0
- package/dist/esm/project-run/task-scheduler/custom-admission-policy.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/execution-state.mjs +34 -5
- package/dist/esm/project-run/task-scheduler/execution-state.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/forced-block-effect-replay.mjs +46 -0
- package/dist/esm/project-run/task-scheduler/forced-block-effect-replay.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/graph-validation.mjs +54 -26
- package/dist/esm/project-run/task-scheduler/graph-validation.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/graph.mjs +79 -3
- package/dist/esm/project-run/task-scheduler/graph.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/measurement/diagnostics.mjs +207 -0
- package/dist/esm/project-run/task-scheduler/measurement/diagnostics.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/measurement/integrals.mjs +116 -0
- package/dist/esm/project-run/task-scheduler/measurement/integrals.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/measurement/policy.mjs +67 -0
- package/dist/esm/project-run/task-scheduler/measurement/policy.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/measurement/summary.mjs +123 -0
- package/dist/esm/project-run/task-scheduler/measurement/summary.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/measurement/timing.mjs +158 -0
- package/dist/esm/project-run/task-scheduler/measurement/timing.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/scheduler-admission-decision.mjs +90 -62
- package/dist/esm/project-run/task-scheduler/scheduler-admission-decision.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/scheduler-blocker-summary.mjs +20 -6
- package/dist/esm/project-run/task-scheduler/scheduler-blocker-summary.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/scheduler-decision-inspection.mjs +5 -105
- package/dist/esm/project-run/task-scheduler/scheduler-decision-inspection.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/scheduler-decision-model.mjs +0 -9
- package/dist/esm/project-run/task-scheduler/scheduler-decision-model.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/scheduler-decision.mjs +48 -28
- package/dist/esm/project-run/task-scheduler/scheduler-decision.mjs.map +1 -1
- package/dist/esm/project-run/task-scheduler/scheduler-observation.mjs +89 -0
- package/dist/esm/project-run/task-scheduler/scheduler-observation.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/scheduler-task-lifecycle.mjs +94 -0
- package/dist/esm/project-run/task-scheduler/scheduler-task-lifecycle.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/scheduler-terminal-measurement.mjs +66 -0
- package/dist/esm/project-run/task-scheduler/scheduler-terminal-measurement.mjs.map +1 -0
- package/dist/esm/project-run/task-scheduler/scheduler.mjs +171 -114
- package/dist/esm/project-run/task-scheduler/scheduler.mjs.map +1 -1
- package/docs/api-mechanics.md +64 -137
- package/docs/changelog.md +157 -0
- package/docs/checks/duplicate-detection.md +111 -59
- package/docs/checks/file-metrics.md +46 -43
- package/docs/checks/function-metrics.md +100 -163
- package/docs/checks/json-schema-validation.md +43 -36
- package/docs/checks/json-validation.md +38 -25
- package/docs/checks/maintenance-reminders.md +41 -29
- package/docs/checks/markdown-link-validation.md +82 -54
- package/docs/checks/secret-detection.md +129 -0
- package/docs/examples/artifacts/mixed-outcomes/definition.ts +5 -5
- package/docs/guides/cache-results.md +63 -0
- package/docs/guides/callbacks.md +34 -0
- package/docs/guides/check-dependencies.md +121 -0
- package/docs/guides/collecting-project-files.md +59 -0
- package/docs/guides/extending-check-lifecycle.md +112 -0
- package/docs/guides/finding-waivers.md +45 -0
- package/docs/guides/learned-scheduling.md +83 -0
- package/docs/guides/presenting-findings.md +54 -0
- package/docs/guides/run-outputs.md +145 -0
- package/docs/guides/scheduling.md +208 -0
- package/docs/guides/simulating-admission.md +55 -0
- package/docs/output.md +11 -20
- package/licenses/Lizard-1.24.0-MIT.txt +30 -0
- package/{third-party-licenses/momoa-3.3.12-LICENSE → licenses/Lizard-1.24.0-lizard.py-Apache-2.0.txt} +1 -0
- package/licenses/Pygments-2.18.0-BSD-2-Clause.txt +25 -0
- package/licenses/analyzer-translations-NOTICE.md +24 -0
- package/licenses/lizard-1.24.0-provenance.json +957 -0
- package/package.json +18 -6
- package/src/cache/cache-json-by-key.ts +304 -0
- package/src/check/check.ts +67 -17
- package/src/check/finding-presentation.ts +67 -0
- package/src/check/inherited-collection.ts +1 -1
- package/src/check-settlement/fact-validation.ts +29 -39
- package/src/check-settlement/outcome-normalization.ts +17 -35
- package/src/check-settlement/reason-shape.ts +20 -0
- package/src/check-settlement/record-store.ts +18 -15
- package/src/check-settlement/session.ts +12 -3
- package/src/data-boundary/closed-values.ts +29 -0
- package/src/data-boundary/value-shapes.ts +12 -0
- package/src/index.ts +70 -2
- package/src/learned-critical-path/duration-model/bounded-history.ts +108 -0
- package/src/learned-critical-path/duration-model/prediction.ts +181 -0
- package/src/learned-critical-path/duration-model/preparation.ts +77 -0
- package/src/learned-critical-path/duration-model/recording.ts +208 -0
- package/src/learned-critical-path/duration-model/storage.ts +252 -0
- package/src/learned-critical-path/selection-layers.ts +72 -0
- package/src/learned-critical-path/static-decision.ts +105 -0
- package/src/learned-critical-path/strategy.ts +299 -0
- package/src/machine-output/v4/atomic-publication.ts +1 -16
- package/src/package-checks/code-quality-findings/finding-waiver-authoring.ts +46 -0
- package/src/package-checks/code-quality-findings/finding-waiver-evidence.ts +95 -0
- package/src/package-checks/code-quality-findings/policy.ts +23 -0
- package/src/package-checks/duplicate-detection/area-policy.ts +24 -13
- package/src/package-checks/duplicate-detection/cache/identity.ts +1 -1
- package/src/package-checks/duplicate-detection/default-check.ts +1 -1
- package/src/package-checks/duplicate-detection/execution.ts +82 -22
- package/src/package-checks/duplicate-detection/finding-messages.ts +75 -0
- package/src/package-checks/duplicate-detection/finding-waiver-identity.ts +68 -0
- package/src/package-checks/duplicate-detection/jscpd/availability.ts +1 -1
- package/src/package-checks/duplicate-detection/jscpd/command-resolution.ts +1 -1
- package/src/package-checks/duplicate-detection/jscpd/json-report.ts +24 -5
- package/src/package-checks/duplicate-detection/jscpd/scanner.ts +6 -7
- package/src/package-checks/duplicate-detection/options-resolution.ts +32 -57
- package/src/package-checks/duplicate-detection/options-validation.ts +23 -31
- package/src/package-checks/duplicate-detection/options.ts +21 -1
- package/src/package-checks/duplicate-detection/records.ts +65 -12
- package/src/package-checks/file-metrics/execution.ts +16 -17
- package/src/package-checks/file-metrics/finding-messages.ts +29 -0
- package/src/package-checks/file-metrics/options-resolution.ts +19 -52
- package/src/package-checks/file-metrics/options-validation.ts +23 -32
- package/src/package-checks/file-metrics/records.ts +11 -23
- package/src/package-checks/file-metrics/scc/availability.ts +1 -1
- package/src/package-checks/file-metrics/scc/parser.ts +4 -4
- package/src/package-checks/file-metrics/scc/scanner.ts +2 -2
- package/src/package-checks/function-metrics/analysis.ts +76 -21
- package/src/package-checks/function-metrics/analyzer/analysis-context.ts +749 -0
- package/src/package-checks/function-metrics/analyzer/analysis-model.ts +421 -0
- package/src/package-checks/function-metrics/analyzer/contracts.ts +54 -0
- package/src/package-checks/function-metrics/analyzer/extension-output.ts +261 -0
- package/src/package-checks/function-metrics/analyzer/extensions/extension-base.ts +33 -0
- package/src/package-checks/function-metrics/analyzer/extensions/lizardcomplextags.ts +27 -0
- package/src/package-checks/function-metrics/analyzer/extensions/lizardnd.ts +144 -0
- package/src/package-checks/function-metrics/analyzer/extensions/protocol.ts +345 -0
- package/src/package-checks/function-metrics/analyzer/extensions/registry.ts +157 -0
- package/src/package-checks/function-metrics/analyzer/pipeline.ts +311 -0
- package/src/package-checks/function-metrics/analyzer/port-facade.ts +142 -0
- package/src/package-checks/function-metrics/analyzer/reader-registry.ts +84 -0
- package/src/package-checks/function-metrics/analyzer/readers/csharp.ts +110 -0
- package/src/package-checks/function-metrics/analyzer/readers/erlang.ts +501 -0
- package/src/package-checks/function-metrics/analyzer/readers/fortran.ts +294 -0
- package/src/package-checks/function-metrics/analyzer/readers/gdscript.ts +42 -0
- package/src/package-checks/function-metrics/analyzer/readers/go.ts +53 -0
- package/src/package-checks/function-metrics/analyzer/readers/java-body-states.ts +141 -0
- package/src/package-checks/function-metrics/analyzer/readers/java.ts +270 -0
- package/src/package-checks/function-metrics/analyzer/readers/javascript.ts +19 -0
- package/src/package-checks/function-metrics/analyzer/readers/kotlin.ts +120 -0
- package/src/package-checks/function-metrics/analyzer/readers/lua.ts +68 -0
- package/src/package-checks/function-metrics/analyzer/readers/objc.ts +107 -0
- package/src/package-checks/function-metrics/analyzer/readers/perl.ts +340 -0
- package/src/package-checks/function-metrics/analyzer/readers/php-states.ts +246 -0
- package/src/package-checks/function-metrics/analyzer/readers/php.ts +63 -0
- package/src/package-checks/function-metrics/analyzer/readers/plsql.ts +306 -0
- package/src/package-checks/function-metrics/analyzer/readers/python.ts +431 -0
- package/src/package-checks/function-metrics/analyzer/readers/r.ts +234 -0
- package/src/package-checks/function-metrics/analyzer/readers/ruby.ts +88 -0
- package/src/package-checks/function-metrics/analyzer/readers/rust.ts +47 -0
- package/src/package-checks/function-metrics/analyzer/readers/scala.ts +60 -0
- package/src/package-checks/function-metrics/analyzer/readers/solidity.ts +32 -0
- package/src/package-checks/function-metrics/analyzer/readers/st.ts +161 -0
- package/src/package-checks/function-metrics/analyzer/readers/swift.ts +116 -0
- package/src/package-checks/function-metrics/analyzer/readers/tsx.ts +165 -0
- package/src/package-checks/function-metrics/analyzer/readers/ttcn.ts +90 -0
- package/src/package-checks/function-metrics/analyzer/readers/typescript.ts +593 -0
- package/src/package-checks/function-metrics/analyzer/readers/vue.ts +43 -0
- package/src/package-checks/function-metrics/analyzer/readers/zig.ts +35 -0
- package/src/package-checks/function-metrics/analyzer/shared/clike.ts +541 -0
- package/src/package-checks/function-metrics/analyzer/shared/code-reader.ts +682 -0
- package/src/package-checks/function-metrics/analyzer/shared/golike.ts +143 -0
- package/src/package-checks/function-metrics/analyzer/shared/js-style-regex.ts +75 -0
- package/src/package-checks/function-metrics/analyzer/shared/rubylike.ts +161 -0
- package/src/package-checks/function-metrics/analyzer/shared/script-language.ts +50 -0
- package/src/package-checks/function-metrics/analyzer-adapter.ts +84 -0
- package/src/package-checks/function-metrics/analyzer-worker-contract.ts +10 -0
- package/src/package-checks/function-metrics/analyzer-worker-port.ts +150 -0
- package/src/package-checks/function-metrics/analyzer-worker.ts +31 -0
- package/src/package-checks/function-metrics/constructor.ts +2 -2
- package/src/package-checks/function-metrics/execution.ts +94 -39
- package/src/package-checks/function-metrics/finding-messages.ts +95 -0
- package/src/package-checks/function-metrics/finding-waiver-identity.ts +36 -0
- package/src/package-checks/function-metrics/measurement-model.ts +15 -1
- package/src/package-checks/function-metrics/measurement.ts +221 -36
- package/src/package-checks/function-metrics/options-resolution.ts +39 -75
- package/src/package-checks/function-metrics/options-validation.ts +30 -39
- package/src/package-checks/function-metrics/options.ts +27 -11
- package/src/package-checks/function-metrics/records.ts +73 -7
- package/src/package-checks/function-metrics/target-files.ts +10 -70
- package/src/package-checks/{file-metrics/scc → host-environment}/csv.ts +1 -2
- package/src/package-checks/host-environment/git.ts +2 -2
- package/src/package-checks/host-environment/process.ts +10 -0
- package/src/package-checks/json-schema-validation/final-data.ts +8 -0
- package/src/package-checks/json-schema-validation/options-validation.ts +16 -23
- package/src/package-checks/json-schema-validation/options.ts +23 -0
- package/src/package-checks/json-validation/final-data.ts +5 -0
- package/src/package-checks/json-validation/options-validation.ts +4 -18
- package/src/package-checks/maintenance-reminders/final-data.ts +18 -0
- package/src/package-checks/markdown-link-validation/default-check.ts +9 -3
- package/src/package-checks/markdown-link-validation/execution.ts +51 -57
- package/src/package-checks/markdown-link-validation/filesystem-probes.ts +108 -51
- package/src/package-checks/markdown-link-validation/final-data.ts +5 -0
- package/src/package-checks/markdown-link-validation/finding-messages.ts +48 -0
- package/src/package-checks/markdown-link-validation/local-resolution.ts +17 -9
- package/src/package-checks/markdown-link-validation/local-resolver.ts +5 -2
- package/src/package-checks/markdown-link-validation/options-resolution.ts +31 -3
- package/src/package-checks/markdown-link-validation/options-validation.ts +27 -19
- package/src/package-checks/markdown-link-validation/options.ts +15 -0
- package/src/package-checks/markdown-link-validation/parse-facts-cache-payload.ts +246 -0
- package/src/package-checks/markdown-link-validation/parse-facts-cache.ts +154 -0
- package/src/package-checks/markdown-link-validation/resolver-engine.ts +75 -65
- package/src/package-checks/markdown-link-validation/source-reader.ts +86 -0
- package/src/package-checks/markdown-link-validation/unavailable-reasons.ts +42 -0
- package/src/package-checks/project-files/collection.ts +1 -1
- package/src/package-checks/project-files/configuration.ts +3 -14
- package/src/package-checks/project-files/gitlink-revision.ts +1 -1
- package/src/package-checks/project-files/gitlink-worktree.ts +1 -1
- package/src/package-checks/project-files/public-collection.ts +92 -0
- package/src/package-checks/project-files/revision-worktree-files.ts +1 -1
- package/src/package-checks/secret-detection/classification.ts +30 -0
- package/src/package-checks/secret-detection/default-check.ts +50 -0
- package/src/package-checks/secret-detection/execution.ts +247 -0
- package/src/package-checks/secret-detection/final-data.ts +57 -0
- package/src/package-checks/secret-detection/finding-waiver-identity.ts +37 -0
- package/src/package-checks/secret-detection/input-preparation.ts +233 -0
- package/src/package-checks/secret-detection/options-resolution.ts +65 -0
- package/src/package-checks/secret-detection/options-validation.ts +27 -0
- package/src/package-checks/secret-detection/options.ts +36 -0
- package/src/package-checks/secret-detection/records.ts +77 -0
- package/src/package-checks/secret-detection/secretlint/adapter.ts +123 -0
- package/src/project-definition/check-tree/authoring.ts +29 -230
- package/src/project-definition/check-tree/check-fields-authoring.ts +227 -0
- package/src/project-definition/check-tree/collection-authoring.ts +13 -0
- package/src/project-definition/check-tree/materialization.ts +9 -1
- package/src/project-definition/check-tree/resolution.ts +80 -22
- package/src/project-definition/check-tree/scheduling-authoring.ts +114 -0
- package/src/project-definition/declarative-snapshot.ts +87 -0
- package/src/project-definition/output-defaults.ts +32 -1
- package/src/project-definition/output-validation.ts +15 -15
- package/src/project-definition/progress-rendering-output.ts +121 -0
- package/src/project-definition/project-definition-validation.ts +117 -18
- package/src/project-definition/project-definition.ts +198 -61
- package/src/project-definition/resource-unit-mapping.ts +25 -0
- package/src/project-definition/scheduler-policy.ts +553 -0
- package/src/project-run/admission-strategy-provider/custom-strategy-preparation.ts +80 -0
- package/src/project-run/admission-strategy-provider/prepared-admission-strategy.ts +27 -0
- package/src/project-run/admission-strategy-provider/provider.ts +45 -0
- package/src/project-run/aggregation.ts +10 -5
- package/src/project-run/check-execution/callback.ts +50 -8
- package/src/project-run/check-execution/console-capture.ts +262 -0
- package/src/project-run/check-execution/dependencies.ts +43 -6
- package/src/project-run/check-execution/execution-finalization.ts +99 -25
- package/src/project-run/check-execution/execution-settlement.ts +19 -11
- package/src/project-run/check-execution/flag-controls.ts +132 -0
- package/src/project-run/check-execution/lifecycle.ts +21 -0
- package/src/project-run/check-execution/messages.ts +8 -0
- package/src/project-run/check-execution/plan.ts +12 -8
- package/src/project-run/check-execution/preflight.ts +23 -43
- package/src/project-run/check-execution/resolved-checks.ts +165 -126
- package/src/project-run/check-execution/resolved-execution-result.ts +22 -0
- package/src/project-run/{completion.ts → completion/completion.ts} +17 -57
- package/src/project-run/{machine-publication.ts → completion/machine-publication.ts} +4 -4
- package/src/project-run/completion/result-resolver.ts +60 -0
- package/src/project-run/controls/contract.ts +25 -2
- package/src/project-run/controls/outputs-override-validation.ts +83 -60
- package/src/project-run/controls/validation-result.ts +17 -6
- package/src/project-run/controls/validation.ts +107 -12
- package/src/project-run/diagnostic-logging/logger.ts +132 -207
- package/src/project-run/diagnostic-logging/observation-rendering.ts +203 -0
- package/src/project-run/invocation/candidate.ts +86 -0
- package/src/project-run/invocation/creation.ts +116 -0
- package/src/project-run/invocation/paths.ts +154 -0
- package/src/project-run/invocation/progress.ts +38 -0
- package/src/project-run/{invocation.ts → invocation/run.ts} +125 -120
- package/src/project-run/invocation/scheduler.ts +75 -0
- package/src/project-run/{output-configuration.ts → outputs/configuration.ts} +6 -5
- package/src/project-run/outputs/status.ts +161 -0
- package/src/project-run/progress-rendering/presentation.ts +118 -26
- package/src/project-run/progress-rendering/renderer-formatting.ts +166 -19
- package/src/project-run/progress-rendering/renderer-lifecycle.ts +38 -3
- package/src/project-run/progress-rendering/renderer.ts +13 -2
- package/src/project-run/project-context.ts +3 -2
- package/src/project-run/result.ts +49 -3
- package/src/project-run/run.ts +7 -6
- package/src/project-run/task-scheduler/admission-core/compiled-graph.ts +316 -0
- package/src/project-run/task-scheduler/admission-core/core.ts +278 -0
- package/src/project-run/task-scheduler/admission-core/input.ts +138 -0
- package/src/project-run/task-scheduler/admission-core/projection.ts +164 -0
- package/src/project-run/task-scheduler/admission-core/selection-index.ts +165 -0
- package/src/project-run/task-scheduler/admission-core/selection-query.ts +295 -0
- package/src/project-run/task-scheduler/admission-core/selection-seed.ts +252 -0
- package/src/project-run/task-scheduler/admission-core/selection-transition.ts +236 -0
- package/src/project-run/task-scheduler/admission-core/selection.ts +140 -0
- package/src/project-run/task-scheduler/admission-core/trace.ts +177 -0
- package/src/project-run/task-scheduler/admission-scope-layers.ts +44 -0
- package/src/project-run/task-scheduler/admission-selection-policy.ts +116 -0
- package/src/project-run/task-scheduler/critical-path-ranking.ts +76 -0
- package/src/project-run/task-scheduler/custom-admission-policy.ts +128 -0
- package/src/project-run/task-scheduler/execution-state.ts +97 -6
- package/src/project-run/task-scheduler/forced-block-effect-replay.ts +68 -0
- package/src/project-run/task-scheduler/graph-validation.ts +77 -31
- package/src/project-run/task-scheduler/graph.ts +111 -3
- package/src/project-run/task-scheduler/measurement/diagnostics.ts +261 -0
- package/src/project-run/task-scheduler/measurement/integrals.ts +177 -0
- package/src/project-run/task-scheduler/measurement/policy.ts +105 -0
- package/src/project-run/task-scheduler/measurement/summary.ts +175 -0
- package/src/project-run/task-scheduler/measurement/timing.ts +190 -0
- package/src/project-run/task-scheduler/scheduler-admission-decision.ts +143 -134
- package/src/project-run/task-scheduler/scheduler-blocker-summary.ts +34 -9
- package/src/project-run/task-scheduler/scheduler-decision-inspection.ts +28 -170
- package/src/project-run/task-scheduler/scheduler-decision-model.ts +36 -40
- package/src/project-run/task-scheduler/scheduler-decision.ts +68 -36
- package/src/project-run/task-scheduler/scheduler-observation.ts +124 -0
- package/src/project-run/task-scheduler/scheduler-task-lifecycle.ts +150 -0
- package/src/project-run/task-scheduler/scheduler-terminal-measurement.ts +95 -0
- package/src/project-run/task-scheduler/scheduler.ts +216 -171
- package/types/cache/cache-json-by-key.d.ts +53 -0
- package/types/check/check.d.ts +62 -17
- package/types/check/finding-presentation.d.ts +25 -0
- package/types/check/inherited-collection.d.ts +1 -1
- package/types/check-settlement/reason-shape.d.ts +5 -0
- package/types/check-settlement/record-store.d.ts +2 -2
- package/types/check-settlement/session.d.ts +3 -1
- package/types/data-boundary/closed-values.d.ts +8 -0
- package/types/data-boundary/value-shapes.d.ts +3 -0
- package/types/index.d.ts +22 -7
- package/types/learned-critical-path/duration-model/bounded-history.d.ts +34 -0
- package/types/learned-critical-path/duration-model/prediction.d.ts +32 -0
- package/types/learned-critical-path/duration-model/preparation.d.ts +28 -0
- package/types/learned-critical-path/duration-model/recording.d.ts +28 -0
- package/types/learned-critical-path/duration-model/storage.d.ts +12 -0
- package/types/learned-critical-path/selection-layers.d.ts +14 -0
- package/types/learned-critical-path/static-decision.d.ts +3 -0
- package/types/learned-critical-path/strategy.d.ts +35 -0
- package/types/package-checks/code-quality-findings/finding-waiver-authoring.d.ts +7 -0
- package/types/package-checks/code-quality-findings/finding-waiver-evidence.d.ts +34 -0
- package/types/package-checks/code-quality-findings/policy.d.ts +4 -0
- package/types/package-checks/duplicate-detection/area-policy.d.ts +1 -1
- package/types/package-checks/duplicate-detection/finding-messages.d.ts +7 -0
- package/types/package-checks/duplicate-detection/finding-waiver-identity.d.ts +3 -0
- package/types/package-checks/duplicate-detection/jscpd/command-resolution.d.ts +1 -1
- package/types/package-checks/duplicate-detection/options.d.ts +18 -1
- package/types/package-checks/duplicate-detection/records.d.ts +20 -3
- package/types/package-checks/file-metrics/finding-messages.d.ts +4 -0
- package/types/package-checks/file-metrics/records.d.ts +5 -10
- package/types/package-checks/file-metrics/scc/parser.d.ts +4 -4
- package/types/package-checks/function-metrics/analysis.d.ts +1 -1
- package/types/package-checks/function-metrics/analyzer/analysis-context.d.ts +174 -0
- package/types/package-checks/function-metrics/analyzer/analysis-model.d.ts +135 -0
- package/types/package-checks/function-metrics/analyzer/contracts.d.ts +48 -0
- package/types/package-checks/function-metrics/analyzer/extensions/lizardcomplextags.d.ts +13 -0
- package/types/package-checks/function-metrics/analyzer/extensions/lizardnd.d.ts +28 -0
- package/types/package-checks/function-metrics/analyzer/extensions/protocol.d.ts +99 -0
- package/types/package-checks/function-metrics/analyzer/extensions/registry.d.ts +34 -0
- package/types/package-checks/function-metrics/analyzer/pipeline.d.ts +67 -0
- package/types/package-checks/function-metrics/analyzer/port-facade.d.ts +38 -0
- package/types/package-checks/function-metrics/analyzer/reader-registry.d.ts +18 -0
- package/types/package-checks/function-metrics/analyzer/readers/csharp.d.ts +22 -0
- package/types/package-checks/function-metrics/analyzer/readers/erlang.d.ts +22 -0
- package/types/package-checks/function-metrics/analyzer/readers/fortran.d.ts +29 -0
- package/types/package-checks/function-metrics/analyzer/readers/gdscript.d.ts +18 -0
- package/types/package-checks/function-metrics/analyzer/readers/go.d.ts +18 -0
- package/types/package-checks/function-metrics/analyzer/readers/java-body-states.d.ts +18 -0
- package/types/package-checks/function-metrics/analyzer/readers/java.d.ts +44 -0
- package/types/package-checks/function-metrics/analyzer/readers/javascript.d.ts +14 -0
- package/types/package-checks/function-metrics/analyzer/readers/kotlin.d.ts +23 -0
- package/types/package-checks/function-metrics/analyzer/readers/lua.d.ts +16 -0
- package/types/package-checks/function-metrics/analyzer/readers/objc.d.ts +18 -0
- package/types/package-checks/function-metrics/analyzer/readers/perl.d.ts +28 -0
- package/types/package-checks/function-metrics/analyzer/readers/php-states.d.ts +41 -0
- package/types/package-checks/function-metrics/analyzer/readers/php.d.ts +22 -0
- package/types/package-checks/function-metrics/analyzer/readers/plsql.d.ts +24 -0
- package/types/package-checks/function-metrics/analyzer/readers/python.d.ts +50 -0
- package/types/package-checks/function-metrics/analyzer/readers/r.d.ts +22 -0
- package/types/package-checks/function-metrics/analyzer/readers/ruby.d.ts +16 -0
- package/types/package-checks/function-metrics/analyzer/readers/rust.d.ts +20 -0
- package/types/package-checks/function-metrics/analyzer/readers/scala.d.ts +20 -0
- package/types/package-checks/function-metrics/analyzer/readers/solidity.d.ts +19 -0
- package/types/package-checks/function-metrics/analyzer/readers/st.d.ts +37 -0
- package/types/package-checks/function-metrics/analyzer/readers/swift.d.ts +30 -0
- package/types/package-checks/function-metrics/analyzer/readers/tsx.d.ts +15 -0
- package/types/package-checks/function-metrics/analyzer/readers/ttcn.d.ts +22 -0
- package/types/package-checks/function-metrics/analyzer/readers/typescript.d.ts +35 -0
- package/types/package-checks/function-metrics/analyzer/readers/vue.d.ts +18 -0
- package/types/package-checks/function-metrics/analyzer/readers/zig.d.ts +19 -0
- package/types/package-checks/function-metrics/analyzer/shared/clike.d.ts +101 -0
- package/types/package-checks/function-metrics/analyzer/shared/code-reader.d.ts +176 -0
- package/types/package-checks/function-metrics/analyzer/shared/golike.d.ts +39 -0
- package/types/package-checks/function-metrics/analyzer/shared/js-style-regex.d.ts +16 -0
- package/types/package-checks/function-metrics/analyzer/shared/rubylike.d.ts +40 -0
- package/types/package-checks/function-metrics/analyzer/shared/script-language.d.ts +17 -0
- package/types/package-checks/function-metrics/analyzer-adapter.d.ts +26 -0
- package/types/package-checks/function-metrics/analyzer-worker-contract.d.ts +5 -0
- package/types/package-checks/function-metrics/analyzer-worker-port.d.ts +24 -0
- package/types/package-checks/function-metrics/analyzer-worker.d.ts +1 -0
- package/types/package-checks/function-metrics/constructor.d.ts +1 -1
- package/types/package-checks/function-metrics/execution.d.ts +5 -2
- package/types/package-checks/function-metrics/finding-messages.d.ts +9 -0
- package/types/package-checks/function-metrics/finding-waiver-identity.d.ts +2 -0
- package/types/package-checks/function-metrics/measurement-model.d.ts +13 -1
- package/types/package-checks/function-metrics/measurement.d.ts +22 -7
- package/types/package-checks/function-metrics/options.d.ts +23 -10
- package/types/package-checks/function-metrics/records.d.ts +24 -5
- package/types/package-checks/function-metrics/target-files.d.ts +4 -3
- package/types/package-checks/host-environment/csv.d.ts +2 -0
- package/types/package-checks/host-environment/git.d.ts +1 -1
- package/types/package-checks/host-environment/process.d.ts +5 -0
- package/types/package-checks/json-schema-validation/final-data.d.ts +8 -0
- package/types/package-checks/json-schema-validation/options.d.ts +31 -3
- package/types/package-checks/json-validation/final-data.d.ts +5 -0
- package/types/package-checks/maintenance-reminders/final-data.d.ts +18 -0
- package/types/package-checks/markdown-link-validation/default-check.d.ts +9 -3
- package/types/package-checks/markdown-link-validation/execution.d.ts +1 -3
- package/types/package-checks/markdown-link-validation/final-data.d.ts +5 -0
- package/types/package-checks/markdown-link-validation/finding-messages.d.ts +4 -0
- package/types/package-checks/markdown-link-validation/local-resolution.d.ts +12 -6
- package/types/package-checks/markdown-link-validation/local-resolver.d.ts +2 -1
- package/types/package-checks/markdown-link-validation/options.d.ts +15 -0
- package/types/package-checks/markdown-link-validation/parse-facts-cache-payload.d.ts +24 -0
- package/types/package-checks/markdown-link-validation/parse-facts-cache.d.ts +13 -0
- package/types/package-checks/markdown-link-validation/resolver-engine.d.ts +6 -4
- package/types/package-checks/markdown-link-validation/source-reader.d.ts +11 -0
- package/types/package-checks/markdown-link-validation/unavailable-reasons.d.ts +4 -0
- package/types/package-checks/project-files/public-collection.d.ts +16 -0
- package/types/package-checks/secret-detection/classification.d.ts +12 -0
- package/types/package-checks/secret-detection/default-check.d.ts +11 -0
- package/types/package-checks/secret-detection/execution.d.ts +14 -0
- package/types/package-checks/secret-detection/final-data.d.ts +15 -0
- package/types/package-checks/secret-detection/finding-waiver-identity.d.ts +5 -0
- package/types/package-checks/secret-detection/input-preparation.d.ts +24 -0
- package/types/package-checks/secret-detection/options-resolution.d.ts +6 -0
- package/types/package-checks/secret-detection/options-validation.d.ts +3 -0
- package/types/package-checks/secret-detection/options.d.ts +32 -0
- package/types/package-checks/secret-detection/records.d.ts +35 -0
- package/types/package-checks/secret-detection/secretlint/adapter.d.ts +28 -0
- package/types/project-definition/check-tree/authoring.d.ts +11 -14
- package/types/project-definition/check-tree/check-fields-authoring.d.ts +25 -0
- package/types/project-definition/check-tree/collection-authoring.d.ts +2 -0
- package/types/project-definition/check-tree/resolution.d.ts +8 -3
- package/types/project-definition/check-tree/scheduling-authoring.d.ts +19 -0
- package/types/project-definition/declarative-snapshot.d.ts +7 -0
- package/types/project-definition/output-defaults.d.ts +7 -0
- package/types/project-definition/output-validation.d.ts +2 -1
- package/types/project-definition/progress-rendering-output.d.ts +41 -0
- package/types/project-definition/project-definition.d.ts +61 -16
- package/types/project-definition/resource-unit-mapping.d.ts +4 -0
- package/types/project-definition/scheduler-policy.d.ts +497 -0
- package/types/project-run/admission-strategy-provider/custom-strategy-preparation.d.ts +9 -0
- package/types/project-run/admission-strategy-provider/prepared-admission-strategy.d.ts +23 -0
- package/types/project-run/admission-strategy-provider/provider.d.ts +13 -0
- package/types/project-run/aggregation.d.ts +1 -1
- package/types/project-run/check-execution/callback.d.ts +5 -1
- package/types/project-run/check-execution/console-capture.d.ts +18 -0
- package/types/project-run/check-execution/dependencies.d.ts +1 -1
- package/types/project-run/check-execution/execution-finalization.d.ts +17 -7
- package/types/project-run/check-execution/execution-settlement.d.ts +5 -2
- package/types/project-run/check-execution/flag-controls.d.ts +27 -0
- package/types/project-run/check-execution/lifecycle.d.ts +20 -0
- package/types/project-run/check-execution/messages.d.ts +2 -0
- package/types/project-run/check-execution/plan.d.ts +2 -3
- package/types/project-run/check-execution/preflight.d.ts +6 -5
- package/types/project-run/check-execution/resolved-checks.d.ts +32 -38
- package/types/project-run/check-execution/resolved-execution-result.d.ts +21 -0
- package/types/project-run/{completion.d.ts → completion/completion.d.ts} +4 -4
- package/types/project-run/{machine-publication.d.ts → completion/machine-publication.d.ts} +3 -3
- package/types/project-run/completion/result-resolver.d.ts +4 -0
- package/types/project-run/controls/contract.d.ts +25 -2
- package/types/project-run/controls/outputs-override-validation.d.ts +2 -1
- package/types/project-run/controls/validation-result.d.ts +12 -4
- package/types/project-run/diagnostic-logging/logger.d.ts +34 -4
- package/types/project-run/diagnostic-logging/observation-rendering.d.ts +7 -0
- package/types/project-run/invocation/candidate.d.ts +12 -0
- package/types/project-run/{invocation-creation.d.ts → invocation/creation.d.ts} +3 -3
- package/types/project-run/invocation/paths.d.ts +40 -0
- package/types/project-run/invocation/progress.d.ts +11 -0
- package/types/project-run/invocation/run.d.ts +43 -0
- package/types/project-run/invocation/scheduler.d.ts +16 -0
- package/types/project-run/outputs/configuration.d.ts +3 -0
- package/types/project-run/outputs/status.d.ts +48 -0
- package/types/project-run/progress-rendering/presentation.d.ts +9 -5
- package/types/project-run/progress-rendering/renderer-formatting.d.ts +8 -0
- package/types/project-run/progress-rendering/renderer-lifecycle.d.ts +6 -1
- package/types/project-run/progress-rendering/renderer.d.ts +7 -1
- package/types/project-run/project-context.d.ts +2 -1
- package/types/project-run/result.d.ts +37 -3
- package/types/project-run/run.d.ts +6 -5
- package/types/project-run/task-scheduler/admission-core/compiled-graph.d.ts +31 -0
- package/types/project-run/task-scheduler/admission-core/core.d.ts +57 -0
- package/types/project-run/task-scheduler/admission-core/input.d.ts +4 -0
- package/types/project-run/task-scheduler/admission-core/projection.d.ts +22 -0
- package/types/project-run/task-scheduler/admission-core/selection-index.d.ts +61 -0
- package/types/project-run/task-scheduler/admission-core/selection-query.d.ts +28 -0
- package/types/project-run/task-scheduler/admission-core/selection-seed.d.ts +9 -0
- package/types/project-run/task-scheduler/admission-core/selection-transition.d.ts +4 -0
- package/types/project-run/task-scheduler/admission-core/selection.d.ts +20 -0
- package/types/project-run/task-scheduler/admission-scope-layers.d.ts +8 -0
- package/types/project-run/task-scheduler/admission-selection-policy.d.ts +31 -0
- package/types/project-run/task-scheduler/critical-path-ranking.d.ts +19 -0
- package/types/project-run/task-scheduler/custom-admission-policy.d.ts +6 -0
- package/types/project-run/task-scheduler/execution-state.d.ts +43 -1
- package/types/project-run/task-scheduler/forced-block-effect-replay.d.ts +9 -0
- package/types/project-run/task-scheduler/graph-validation.d.ts +3 -2
- package/types/project-run/task-scheduler/graph.d.ts +15 -0
- package/types/project-run/task-scheduler/measurement/diagnostics.d.ts +47 -0
- package/types/project-run/task-scheduler/measurement/integrals.d.ts +27 -0
- package/types/project-run/task-scheduler/measurement/policy.d.ts +10 -0
- package/types/project-run/task-scheduler/measurement/summary.d.ts +3 -0
- package/types/project-run/task-scheduler/measurement/timing.d.ts +33 -0
- package/types/project-run/task-scheduler/scheduler-admission-decision.d.ts +13 -1
- package/types/project-run/task-scheduler/scheduler-decision-inspection.d.ts +20 -19
- package/types/project-run/task-scheduler/scheduler-decision-model.d.ts +38 -22
- package/types/project-run/task-scheduler/scheduler-decision.d.ts +4 -1
- package/types/project-run/task-scheduler/scheduler-observation.d.ts +14 -0
- package/types/project-run/task-scheduler/scheduler-task-lifecycle.d.ts +18 -0
- package/types/project-run/task-scheduler/scheduler-terminal-measurement.d.ts +9 -0
- package/dist/esm/package-checks/file-metrics/scc/csv.mjs.map +0 -1
- package/dist/esm/package-checks/function-metrics/lizard/availability.mjs +0 -64
- package/dist/esm/package-checks/function-metrics/lizard/availability.mjs.map +0 -1
- package/dist/esm/package-checks/function-metrics/lizard/csv.mjs +0 -17
- package/dist/esm/package-checks/function-metrics/lizard/csv.mjs.map +0 -1
- package/dist/esm/package-checks/function-metrics/lizard/parser.mjs +0 -138
- package/dist/esm/package-checks/function-metrics/lizard/parser.mjs.map +0 -1
- package/dist/esm/package-checks/function-metrics/lizard/scanner.mjs +0 -35
- package/dist/esm/package-checks/function-metrics/lizard/scanner.mjs.map +0 -1
- package/dist/esm/package-checks/host-environment/process/command.mjs +0 -13
- package/dist/esm/package-checks/host-environment/process/command.mjs.map +0 -1
- package/dist/esm/project-run/completion.mjs.map +0 -1
- package/dist/esm/project-run/invocation-creation.mjs +0 -111
- package/dist/esm/project-run/invocation-creation.mjs.map +0 -1
- package/dist/esm/project-run/invocation.mjs.map +0 -1
- package/dist/esm/project-run/machine-publication.mjs.map +0 -1
- package/dist/esm/project-run/output-configuration.mjs.map +0 -1
- package/dist/esm/project-run/output-status.mjs +0 -43
- package/dist/esm/project-run/output-status.mjs.map +0 -1
- package/src/package-checks/function-metrics/lizard/availability.ts +0 -90
- package/src/package-checks/function-metrics/lizard/csv.ts +0 -20
- package/src/package-checks/function-metrics/lizard/parser.ts +0 -179
- package/src/package-checks/function-metrics/lizard/scanner.ts +0 -62
- package/src/package-checks/host-environment/process/command.ts +0 -21
- package/src/project-run/invocation-creation.ts +0 -160
- package/src/project-run/output-status.ts +0 -69
- package/types/package-checks/file-metrics/scc/csv.d.ts +0 -1
- package/types/package-checks/function-metrics/lizard/availability.d.ts +0 -11
- package/types/package-checks/function-metrics/lizard/csv.d.ts +0 -1
- package/types/package-checks/function-metrics/lizard/parser.d.ts +0 -17
- package/types/package-checks/function-metrics/lizard/scanner.d.ts +0 -15
- package/types/package-checks/host-environment/process/command.d.ts +0 -7
- package/types/project-run/invocation.d.ts +0 -34
- package/types/project-run/output-configuration.d.ts +0 -3
- package/types/project-run/output-status.d.ts +0 -21
|
@@ -1,61 +1,68 @@
|
|
|
1
1
|
# `functionMetrics`
|
|
2
2
|
|
|
3
|
-
返回 [README 的随包 Check 概览](../../README.md#随包提供的-check)。
|
|
4
|
-
|
|
5
3
|
## 用途
|
|
6
4
|
|
|
7
|
-
`functionMetrics
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
`functionMetrics` 是普通 Check,评估每个函数的 NLOC、cyclomatic complexity(CCN)、最大 nesting depth 与 parameter count。
|
|
6
|
+
它使用随包 TypeScript analyzer 分析所选的受支持源文件。
|
|
7
|
+
|
|
8
|
+
## 最小用法
|
|
9
|
+
|
|
10
|
+
示例保留终端进度,不写 machine files。
|
|
10
11
|
|
|
11
12
|
```ts
|
|
12
|
-
import { functionMetrics } from "@zxyycom/vibe-check";
|
|
13
|
+
import { defineConfig, functionMetrics, run } from "@zxyycom/vibe-check";
|
|
13
14
|
|
|
14
|
-
const check = functionMetrics();
|
|
15
|
+
const check = functionMetrics({ findingPolicy: "blocking" });
|
|
16
|
+
const result = await run(defineConfig({
|
|
17
|
+
checks: [check],
|
|
18
|
+
outputs: { machinePublication: { enabled: false } }
|
|
19
|
+
}));
|
|
20
|
+
const outcome = result.kind === "completed"
|
|
21
|
+
? result.snapshot.checks.find(({ checkId }) => checkId === check.checkId)?.outcome
|
|
22
|
+
: undefined;
|
|
23
|
+
if (result.kind !== "completed" || outcome?.status !== "passed") {
|
|
24
|
+
console.error(`Function metrics did not pass: ${result.kind} / ${outcome?.status ?? "no outcome"}`);
|
|
25
|
+
process.exitCode = 1;
|
|
26
|
+
}
|
|
15
27
|
```
|
|
16
28
|
|
|
17
|
-
|
|
18
|
-
|
|
29
|
+
示例显式使用 `findingPolicy: "blocking"`,让未豁免的普通 Finding 导致失败;默认 `non-blocking` 只警告,不因 Finding 退出非零。
|
|
30
|
+
|
|
31
|
+
本例只接受 `completed` Run 中的 `passed` Check,否则退出非零。若需接受 `not-applicable` 或聚合多个 Check,
|
|
32
|
+
显式配置并读取 [`checkAggregation`](../api-mechanics.md#runcontrols-与-check-aggregation);`run(...)` 返回本身不表示通过。
|
|
19
33
|
|
|
20
34
|
## 参数与默认配置
|
|
21
35
|
|
|
22
|
-
|
|
23
|
-
|
|
36
|
+
`FunctionMetricsOptions` 接受 `codeAreas`、`findingPolicy` 与 `findingWaivers`;未知字段使 constructor 同步抛出 `TypeError`。
|
|
37
|
+
|
|
38
|
+
无参调用建立冻结的 `project` area:`files` 使用 `defaultProjectFileSelection` 的 source/exclude,include 由内置 analyzer
|
|
39
|
+
支持的大小写不敏感 suffix 生成;finding policy 为 `non-blocking`,无 waiver。
|
|
24
40
|
|
|
25
|
-
|
|
|
41
|
+
| `limits` 字段 | 默认值 |
|
|
26
42
|
| --- | --- |
|
|
27
|
-
| `
|
|
28
|
-
| `
|
|
29
|
-
| `
|
|
30
|
-
| `
|
|
31
|
-
| `
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
优先。省略 source/exclude 时沿用公开 baseline,省略 include 时使用上述 Lizard-specific globs;显式数组完整替换对应
|
|
48
|
-
默认值,`include: []` 不选择路径,`exclude: []` 不排除路径。显式组合完整 `defaultProjectFileSelection` 会明确选择
|
|
49
|
-
`**/*`,不受支持的路径因而形成 input-rejection Records。nested limit 字段和 area `findingPolicy` 仍可分别省略并继承
|
|
50
|
-
各自默认值。
|
|
51
|
-
|
|
52
|
-
### 区域与阻断政策
|
|
53
|
-
|
|
54
|
-
顶层 `findingPolicy` 只能是 `"blocking" | "non-blocking"`,省略时为 `"non-blocking"`。显式 `codeAreas` 必须非空,
|
|
55
|
-
每个非空 area ID 必须声明 `files: {}`;file fields、limits 和 area `findingPolicy` 都可省略并由 constructor 补齐。
|
|
43
|
+
| `codeLines.maximum` | `60` |
|
|
44
|
+
| `codeLines.lowComplexityAllowance` | `{ cyclomaticComplexityBelow: 6, maximum: 180 }`,CCN 严格低于阈值时使用 |
|
|
45
|
+
| `cyclomaticComplexity.maximum` | `12` |
|
|
46
|
+
| `nestingDepth.maximum` | `7` |
|
|
47
|
+
| `parameters.maximum` | `6` |
|
|
48
|
+
|
|
49
|
+
嵌套字段可分别省略;所有 limit 值必须是正安全整数,allowance maximum 不得小于普通 NLOC maximum。
|
|
50
|
+
指标严格超过有效上限才形成 Finding。nesting depth 计算控制结构、ternary `?`、每个 condition 的首个 `&&` 或 `||`;
|
|
51
|
+
后续 logical operator 和 `else if` 不额外增深,因此不是纯大括号深度。
|
|
52
|
+
|
|
53
|
+
每次 analysis 还受独立的输入资源上限约束:单个 source file 最大 `8 MiB`,本次 invocation 的 accepted
|
|
54
|
+
source aggregate 最大 `64 MiB`。这两个上限不改变上述 metric limits;超限结算为
|
|
55
|
+
`unavailable / resource-limit-exceeded`,不会发布 partial analysis。
|
|
56
|
+
|
|
57
|
+
### 区域与 finding policy
|
|
58
|
+
|
|
59
|
+
显式 area map 非空,每个非空 ID 必须声明 `files`;其 grammar、source failure 与数组替换见
|
|
60
|
+
[共享的 files 选择语义](../guides/collecting-project-files.md#共享的-files-选择语义)。area policy 省略时继承顶层值。
|
|
61
|
+
路径按 source/include/exclude 收集后稳定去重,不重复分析或发布同一 metric Finding;重叠区域取最严格有效 limit,
|
|
62
|
+
任一 matching area 为 `blocking` 时 Finding 就是 blocking。
|
|
56
63
|
|
|
57
64
|
```ts
|
|
58
|
-
import {
|
|
65
|
+
import { functionMetrics } from "@zxyycom/vibe-check";
|
|
59
66
|
|
|
60
67
|
const metrics = functionMetrics({
|
|
61
68
|
findingPolicy: "non-blocking",
|
|
@@ -65,158 +72,88 @@ const metrics = functionMetrics({
|
|
|
65
72
|
findingPolicy: "blocking",
|
|
66
73
|
limits: {
|
|
67
74
|
cyclomaticComplexity: { maximum: 10 },
|
|
75
|
+
nestingDepth: { maximum: 6 },
|
|
68
76
|
parameters: { maximum: 5 }
|
|
69
77
|
}
|
|
70
|
-
},
|
|
71
|
-
tooling: {
|
|
72
|
-
files: {
|
|
73
|
-
...defaultProjectFileSelection,
|
|
74
|
-
include: ["scripts/**/*.ts"],
|
|
75
|
-
exclude: [...defaultProjectFileSelection.exclude, "scripts/**/*.test.ts"]
|
|
76
|
-
}
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
});
|
|
80
81
|
```
|
|
81
82
|
|
|
82
|
-
|
|
83
|
-
其它函数与 area,然后以完整计数结算。
|
|
84
|
-
|
|
85
|
-
同一路径匹配多个 area 时,area authoring order 不参与结算:
|
|
86
|
-
|
|
87
|
-
1. Record 的 `codeAreas` 保存该路径匹配的全部 area IDs,并按文本稳定排序。
|
|
88
|
-
2. 每项 metric 分别计算所有 matching areas 的适用 maximum,并以其中最小值作为 effective limit。
|
|
89
|
-
3. 任一 matching area 的 effective `findingPolicy` 为 `"blocking"` 时,该路径上的 finding 就是 blocking;这一判断不取决于
|
|
90
|
-
哪个 area 提供了最小 limit。
|
|
83
|
+
### 精确豁免一个函数指标
|
|
91
84
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
85
|
+
`findingWaivers` 只匹配 normal metric findings,不匹配 input rejection。共同 authoring、matching 与 audit 见
|
|
86
|
+
[对账 Finding waiver](../guides/finding-waivers.md);本 Check 的 identity 是 `functionName`、`metric`、`path` 与
|
|
87
|
+
`startLine`,其中 path 是 normalized project-root-relative slash path,`startLine` 是正安全整数。恰好匹配的 waiver
|
|
88
|
+
保留原 finding Record、附上 reason 并不再 blocking;本 Check 仍为未匹配或过宽 authoring 发布 audit,且不应用 waiver。
|
|
95
89
|
|
|
96
90
|
```ts
|
|
97
91
|
const metrics = functionMetrics({
|
|
98
|
-
|
|
92
|
+
findingWaivers: [
|
|
93
|
+
{
|
|
94
|
+
identity: {
|
|
95
|
+
functionName: "legacyParser",
|
|
96
|
+
metric: "cyclomatic-complexity",
|
|
97
|
+
path: "src/legacy/parser.ts",
|
|
98
|
+
startLine: 24
|
|
99
|
+
},
|
|
100
|
+
reason: "在重构窗口结束前保留该函数。"
|
|
101
|
+
}
|
|
102
|
+
]
|
|
99
103
|
});
|
|
100
104
|
```
|
|
101
105
|
|
|
102
|
-
owning adapter 固定执行 `--version` probe,并以 approved exact paths 和 `--csv` 扫描。显式 executable 表示项目授权执行
|
|
103
|
-
该命令;需要 wrapper 时由项目提供直接接受这套协议的 executable wrapper。不兼容命令会 fail closed 为 unavailable,
|
|
104
|
-
而不会产生成功空结果。
|
|
105
|
-
|
|
106
|
-
### 安装兼容 Lizard
|
|
107
|
-
|
|
108
|
-
项目可以用自己的工具管理方式提供 `lizard`。本仓库验证的项目拥有安装方式是在 `mise.toml` 固定 uv 与 Lizard:
|
|
109
|
-
|
|
110
|
-
```toml
|
|
111
|
-
[tools]
|
|
112
|
-
uv = "0.11.28"
|
|
113
|
-
"pipx:lizard" = { version = "1.23.0", depends = ["uv"] }
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
运行 `mise install` 后,用 `lizard --version` 确认当前 project runtime 能解析到该命令。若项目使用其它安装方式,只要
|
|
117
|
-
`scanner.executable` 指向已授权、直接接受上述协议并产生 Lizard 1.23-compatible output 的 executable 即可。
|
|
118
|
-
|
|
119
106
|
## 工作原理
|
|
120
107
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
3. accepted 并集非空时,Lizard adapter 对它执行一次 measurement;parser output 必须完整,且所有 source paths 必须属于
|
|
126
|
-
本次 exact set,否则整批结果结算为 unavailable,不发布 partial Records。
|
|
127
|
-
4. 可信 measurements 恢复全部 matching areas,按上一节的 overlap 规则计算 effective limit 与 blocking,再完整形成 Records
|
|
128
|
-
和 final counts,不因首个 finding 短路。
|
|
108
|
+
Check 用内置 reader registry 将 selected paths 分为 accepted/rejected;suffix 大小写不敏感。
|
|
109
|
+
Markdown、JSON、YAML、无扩展名等不支持路径不进入 analyzer,每项先发布 non-blocking input-rejected Record。
|
|
110
|
+
accepted paths 经有界读取后整批分析,只使用本次 exact inputs,不重新发现文件;取消会停止分析。
|
|
111
|
+
空 selection、全 rejected 与分析失败的区别见[不可用原因](#not-applicable-与-unavailable)。
|
|
129
112
|
|
|
130
113
|
## 效果与结果
|
|
131
114
|
|
|
132
|
-
|
|
115
|
+
正常 final data 恰为 `{ findingCount, blockingFindingCount }`:前者包括全部 metric Finding 与 input rejection,
|
|
116
|
+
不含 waiver audit;后者只计仍 actionable 的 blocking Finding。后者大于零为 `failed`,否则为 `passed`。
|
|
133
117
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
functionName: string,
|
|
139
|
-
limit: number,
|
|
140
|
-
metric: "cyclomatic-complexity" | "function-code-density" | "parameter-count",
|
|
141
|
-
path: string,
|
|
142
|
-
startLine: number,
|
|
143
|
-
value: number
|
|
144
|
-
}
|
|
145
|
-
```
|
|
118
|
+
metric Record 保留 `blocking`、`functionName`、`metric`、`value`、`limit`、`path`、`startLine` 与全部 matching `codeAreas`。
|
|
119
|
+
metric 是 `function-code-density`、`cyclomatic-complexity`、`nesting-depth` 或 `parameter-count`。
|
|
120
|
+
只有 CCN Record 另带完整 source-order `complexityContributors: Array<{ token, line }>`,说明各 reader condition token 的贡献;
|
|
121
|
+
它不独立形成 Finding、limit 或 waiver identity。CCN detail message 最多展示八项,余数仍在 Record 中。
|
|
146
122
|
|
|
147
|
-
Record
|
|
123
|
+
input-rejected Record 的 ID 为 `/input-rejected/<path>`,data 包含 `blocking: false`、`kind: "input-rejected"`、
|
|
124
|
+
`path`、全部 `codeAreas` 与 `reason: "unsupported-file-type"`。metric details 后展示 rejection details,并附 `input-rejected` 数量 warning;
|
|
125
|
+
终端呈现和 progress 预览边界见[呈现 Check Finding](../guides/presenting-findings.md)。
|
|
148
126
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
| `function-code-density` | function NLOC;该 ID 不表示比例 | matching areas 按各自 allowance 条件计算后的 code-line maximum 最小值 |
|
|
153
|
-
| `parameter-count` | function parameter count | matching areas 的 `parameters.maximum` 最小值 |
|
|
154
|
-
|
|
155
|
-
每个 rejected selected path 另产生一条 ID 为 `/input-rejected/<path>` 的 Record:
|
|
156
|
-
|
|
157
|
-
```ts
|
|
158
|
-
{
|
|
159
|
-
blocking: false,
|
|
160
|
-
codeAreas: readonly string[],
|
|
161
|
-
kind: "input-rejected",
|
|
162
|
-
path: string,
|
|
163
|
-
reason: "unsupported-file-type"
|
|
164
|
-
}
|
|
165
|
-
```
|
|
127
|
+
Applied waiver 为原 Record 加 `waiver.reason`、将 `blocking` 设为 `false`,并附 `finding-waived` info。
|
|
128
|
+
Unused/overmatched authoring 不应用 waiver,另发 `kind: "finding-waiver-audit"` Record,包含 identity、reason、matchCount、status,
|
|
129
|
+
ID 为 `/finding-waiver-audit/sha256:<canonical-identity-digest>`,并附 warning。
|
|
166
130
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
`
|
|
172
|
-
findings 时 outcome 为 `passed`,Records 仍完整保留。
|
|
173
|
-
|
|
174
|
-
`failed` 的 `blocking-findings` message 与携带 non-blocking metric Records 的 `passed` 的 `non-blocking-findings` message
|
|
175
|
-
都会引导调用方检查本 Check 的 Records;有 rejected input 时另附一条 `input-rejected` warning,只汇总数量,不省略逐路径
|
|
176
|
-
Record。由本 Check 结算的 `unavailable` 会使用对应 `reason.code` 提供 error message;若 rejection Records 已发布,它们与
|
|
177
|
-
对应 warning 仍保留。零 finding 的 `passed` 与 `not-applicable` 不合成人为提示。
|
|
178
|
-
|
|
179
|
-
用返回 Check 的 `check.parseData(value)` 或 package root 的 `parseFunctionMetricsData(value)` 验证 final data。两者返回
|
|
180
|
-
`FunctionMetricsFinalData`,Record 与不可用原因可分别用 `FunctionMetricsRecordData` 和
|
|
181
|
-
`FunctionMetricsUnavailableReasonCode` 标注;authoring / resolved options types 是 `FunctionMetricsOptions` 与
|
|
182
|
-
`ResolvedFunctionMetricsOptions`。parser 只适用于 `passed` / `failed` data,不匹配时抛出 `TypeError`。
|
|
131
|
+
用返回 Check 的 `check.parseData(value)` 或 `parseFunctionMetricsData(value)` 验证 passed/failed 的 final data,返回
|
|
132
|
+
`FunctionMetricsFinalData`;字段或计数不变量不匹配时抛出 `TypeError`。
|
|
133
|
+
公开类型包括 `FunctionMetricsOptions`、`ResolvedFunctionMetricsOptions`、`FunctionMetricsFindingIdentity`、
|
|
134
|
+
`FunctionMetricsFindingMetric`、`FunctionMetricsFindingWaiver`、`FunctionMetricsRecordData` 与
|
|
135
|
+
`FunctionMetricsUnavailableReasonCode`。
|
|
183
136
|
|
|
184
137
|
## `not-applicable` 与 `unavailable`
|
|
185
138
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
可信 final data 的边界结算为 `unavailable`:
|
|
139
|
+
selected union 为空时为 `not-applicable / no-eligible-input`;非空但全 rejected 时为带 Records、warning 与 final data 的 `passed`。
|
|
140
|
+
两种情况下 configured waiver 均产生 unused audit。以下条件在完整 metric Finding 集合形成前结算为 `unavailable`:
|
|
189
141
|
|
|
190
|
-
|
|
|
191
|
-
| --- | --- |
|
|
192
|
-
| `invalid-options` |
|
|
193
|
-
| `source-unavailable` |
|
|
194
|
-
| `
|
|
195
|
-
| `
|
|
196
|
-
| `
|
|
197
|
-
| `cancelled` | invocation signal 在可观察的工作边界终止本 Check | 检查调用方取消原因;不要把该结果解释为 clean scan |
|
|
142
|
+
| reason code | 含义与恢复操作 |
|
|
143
|
+
| --- | --- |
|
|
144
|
+
| `invalid-options` | 完整 resolved options 被普通 object composition 破坏;重新通过 `functionMetrics(options)` 构造 Check。 |
|
|
145
|
+
| `source-unavailable` | 无法形成 filesystem/git-worktree 候选快照或安全读取 source;检查 project root、权限和 selected files。 |
|
|
146
|
+
| `cancelled` | invocation signal 在可观察工作边界取消;检查调用方取消原因,必要时重试。 |
|
|
147
|
+
| `resource-limit-exceeded` | 单文件超过 `8 MiB` 或 accepted aggregate 超过 `64 MiB`;缩小 selection 或减小 source input。 |
|
|
148
|
+
| `analysis-failed` | 内置 analyzer 无法形成完整可信结果;检查选中的 source 并在修正后重试。 |
|
|
198
149
|
|
|
199
|
-
|
|
200
|
-
constructor 返回后又被替换的 resolved options。通用 preflight 语法见
|
|
201
|
-
[options preflight 与 execution](../api-mechanics.md#options-preflight-与-execution)。
|
|
150
|
+
`unavailable` 带对应 `reason.code` 的 error message,无 final data,不伪造 waiver audit;已发布的 input-rejected Records 与 warning 保留。
|
|
202
151
|
|
|
203
152
|
## I/O 与安全边界
|
|
204
153
|
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
产生拒绝 Finding,但不交给 Lizard,避免其 C-like fallback 误解析非代码文本;scanner 不接收 project root 重新发现输入。
|
|
208
|
-
该 Check 的网络 request 数为零。Lizard 收到 accepted exact path 后是否产生函数 row 属于 backend measurement semantics,
|
|
209
|
-
不能由本 Check 推断为 input rejection。
|
|
210
|
-
|
|
211
|
-
## 最小用法
|
|
212
|
-
|
|
213
|
-
```ts
|
|
214
|
-
import { defineConfig, functionMetrics, run } from "@zxyycom/vibe-check";
|
|
215
|
-
const result = await run(defineConfig({ checks: [functionMetrics()] }));
|
|
216
|
-
```
|
|
154
|
+
Check 只读取其 `codeAreas[id].files` 选出的 project-local exact inputs,并将 accepted paths 交给内置 analyzer。
|
|
155
|
+
分析在本地完成,不执行外部 command、不发起网络请求,也不修改 source files。
|
|
217
156
|
|
|
218
157
|
## 适用边界
|
|
219
158
|
|
|
220
|
-
|
|
221
|
-
[`fileMetrics`](file-metrics.md) 评估,重复片段由
|
|
222
|
-
[`duplicateDetection`](duplicate-detection.md) 报告。
|
|
159
|
+
文件级 code-line policy 由 [`fileMetrics`](file-metrics.md) 评估,重复片段由 [`duplicateDetection`](duplicate-detection.md) 报告。
|
|
@@ -1,12 +1,39 @@
|
|
|
1
1
|
# `jsonSchemaValidation`
|
|
2
2
|
|
|
3
|
-
返回 [README 的随包 Check 概览](../../README.md#随包提供的-check)。
|
|
4
|
-
|
|
5
3
|
## 用途
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
`jsonSchemaValidation(options?)` 构造普通 Check,使用显式 schema registry 与 instance bindings 验证 JSON instances。
|
|
6
|
+
先声明 schema 与 binding;无参调用不发现 schema,并结算为 `not-applicable / no-bindings`。
|
|
7
|
+
|
|
8
|
+
## 最小用法
|
|
9
|
+
|
|
10
|
+
示例保留终端进度,不写 machine files。
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
import { defineConfig, jsonSchemaValidation, run } from "@zxyycom/vibe-check";
|
|
14
|
+
|
|
15
|
+
const configured = {
|
|
16
|
+
schemas: [{ id: "urn:example:config", path: "schema/config.json" }],
|
|
17
|
+
bindings: [
|
|
18
|
+
{ id: "config", instancePath: "config.json", schemaId: "urn:example:config" }
|
|
19
|
+
]
|
|
20
|
+
};
|
|
21
|
+
const schemaCheck = jsonSchemaValidation(configured);
|
|
22
|
+
const result = await run(defineConfig({
|
|
23
|
+
checks: [schemaCheck],
|
|
24
|
+
outputs: { machinePublication: { enabled: false } }
|
|
25
|
+
}));
|
|
26
|
+
const outcome = result.kind === "completed"
|
|
27
|
+
? result.snapshot.checks.find(({ checkId }) => checkId === schemaCheck.checkId)?.outcome
|
|
28
|
+
: undefined;
|
|
29
|
+
if (result.kind !== "completed" || outcome?.status !== "passed") {
|
|
30
|
+
console.error(`JSON Schema validation did not pass: ${result.kind} / ${outcome?.status ?? "no outcome"}`);
|
|
31
|
+
process.exitCode = 1;
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
本例只接受 `completed` Run 中的 `passed` Check,否则退出非零。若需接受 `not-applicable` 或聚合多个 Check,
|
|
36
|
+
显式配置并读取 [`checkAggregation`](../api-mechanics.md#runcontrols-与-check-aggregation);`run(...)` 返回本身不表示通过。
|
|
10
37
|
|
|
11
38
|
## 参数与默认配置
|
|
12
39
|
|
|
@@ -21,17 +48,11 @@ Definition `checks` 的普通 Check。
|
|
|
21
48
|
}
|
|
22
49
|
```
|
|
23
50
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
`referenceResolution
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
resolved shape。
|
|
30
|
-
|
|
31
|
-
- `files` 完整定义本 Check 可读取的 local paths;source 可选 `filesystem` 或 `git-worktree`,selected path 必须命中
|
|
32
|
-
`include` 且不能命中 `exclude`。filesystem 不解释 `.gitignore`;git-worktree 使用已跟踪文件和未被 Git 标准忽略
|
|
33
|
-
规则排除的未跟踪文件。schema 与 instance 的读取 scope 是 selected set;来源不可用时 Check 结算为
|
|
34
|
-
`unavailable`,不会切换到另一来源。
|
|
51
|
+
无参调用物化上述完整 options;`files` 使用 package root 公开的深冻结 `defaultProjectFileSelection` 基线。
|
|
52
|
+
六个顶层字段及 `files` 子字段都可省略;显式 `schemas`、`bindings`、`referenceResolution.sources` 数组完整替换默认值。
|
|
53
|
+
`schemaIdentity` 与 `referenceResolution` 的显式 discriminated branch 必须完整;constructor 后替换 `check.options` 也须保留完整 resolved shape。
|
|
54
|
+
|
|
55
|
+
- `files` 遵循[共享 files 选择语义](../guides/collecting-project-files.md#共享的-files-选择语义),selected set 是 schema 与 instance 的本地读取 scope;来源不可用时不切换来源。
|
|
35
56
|
- `maximumBytes` 是每个 schema 或 instance document 的 raw byte 上限,必须是正安全整数。
|
|
36
57
|
- `schemas` 每项为 `{ id, path }`;schema `id` 是 1–256 字符且没有 credentials、query 或 fragment 的绝对
|
|
37
58
|
`https:` / `urn:` identity,`path` 是 1–512 字符的 normalized project-relative 小写 `.json` path。schema ID 与 path
|
|
@@ -82,11 +103,12 @@ fragment 的精确 HTTPS origin;`pathPrefix` 最长 256 字符,从 `/` 开
|
|
|
82
103
|
|
|
83
104
|
## 工作原理
|
|
84
105
|
|
|
85
|
-
constructor
|
|
86
|
-
bindings
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
instance
|
|
106
|
+
constructor 补齐并冻结 closed options;获 Scheduler admission 后先 preflight,再建立 selected path set、加载 registry、
|
|
107
|
+
按 identity policy 编译并验证 bindings。selected set 外的声明路径形成 `out-of-scope` issue,不扩大读取范围。
|
|
108
|
+
schema document、compile 与 instance issues 均形成 Records。
|
|
109
|
+
|
|
110
|
+
local schema 与 instance document 复用 [JSON Validation 工作原理](json-validation.md#工作原理)定义的 strict-document
|
|
111
|
+
boundary;本指南只增加 schema identity、reference resolution、binding 与 engine settlement,不建立另一套 JSON 解析规则。
|
|
90
112
|
|
|
91
113
|
## 效果与结果
|
|
92
114
|
|
|
@@ -167,21 +189,6 @@ binding 数量为零时结算为 `not-applicable / no-bindings`。`unavailable.r
|
|
|
167
189
|
remote scope;每次 response 最多读取 1,048,576 bytes,单次请求 timeout 为 5 秒。request 不携带 credentials 或 custom
|
|
168
190
|
headers,也不跟随 redirect。remote reference authorization 保持 local file selection 不变。
|
|
169
191
|
|
|
170
|
-
## 最小用法
|
|
171
|
-
|
|
172
|
-
```ts
|
|
173
|
-
import { defineConfig, jsonSchemaValidation, run } from "@zxyycom/vibe-check";
|
|
174
|
-
|
|
175
|
-
const configured = {
|
|
176
|
-
schemas: [{ id: "urn:example:config", path: "schema/config.json" }],
|
|
177
|
-
bindings: [
|
|
178
|
-
{ id: "config", instancePath: "config.json", schemaId: "urn:example:config" }
|
|
179
|
-
]
|
|
180
|
-
};
|
|
181
|
-
const schemaCheck = jsonSchemaValidation(configured);
|
|
182
|
-
const result = await run(defineConfig({ checks: [schemaCheck] }));
|
|
183
|
-
```
|
|
184
|
-
|
|
185
192
|
## 适用边界
|
|
186
193
|
|
|
187
194
|
该 Check 适用于显式 schema registry 与 bindings。JSON Schema `format` 使用 2020-12 annotation 语义,不加载 format
|
|
@@ -1,12 +1,33 @@
|
|
|
1
1
|
# `jsonValidation`
|
|
2
2
|
|
|
3
|
-
返回 [README 的随包 Check 概览](../../README.md#随包提供的-check)。
|
|
4
|
-
|
|
5
3
|
## 用途
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
`jsonValidation(options?)` 构造普通 Check,严格验证所选小写 `.json` 文档的完整性,报告 syntax error、duplicate key
|
|
6
|
+
与 incomplete document。
|
|
7
|
+
|
|
8
|
+
## 最小用法
|
|
9
|
+
|
|
10
|
+
示例保留终端进度,不写 machine files。
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
import { defineConfig, jsonValidation, run } from "@zxyycom/vibe-check";
|
|
14
|
+
|
|
15
|
+
const check = jsonValidation();
|
|
16
|
+
const result = await run(defineConfig({
|
|
17
|
+
checks: [check],
|
|
18
|
+
outputs: { machinePublication: { enabled: false } }
|
|
19
|
+
}));
|
|
20
|
+
const outcome = result.kind === "completed"
|
|
21
|
+
? result.snapshot.checks.find(({ checkId }) => checkId === check.checkId)?.outcome
|
|
22
|
+
: undefined;
|
|
23
|
+
if (result.kind !== "completed" || outcome?.status !== "passed") {
|
|
24
|
+
console.error(`JSON validation did not pass: ${result.kind} / ${outcome?.status ?? "no outcome"}`);
|
|
25
|
+
process.exitCode = 1;
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
本例只接受 `completed` Run 中的 `passed` Check,否则退出非零。若需接受 `not-applicable` 或聚合多个 Check,
|
|
30
|
+
显式配置并读取 [`checkAggregation`](../api-mechanics.md#runcontrols-与-check-aggregation);`run(...)` 返回本身不表示通过。
|
|
10
31
|
|
|
11
32
|
## 参数与默认配置
|
|
12
33
|
|
|
@@ -21,16 +42,12 @@
|
|
|
21
42
|
}
|
|
22
43
|
```
|
|
23
44
|
|
|
24
|
-
|
|
25
|
-
`
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
本页 `files` branch 的 `include` / `exclude` glob;来源不可用时 Check 结算为 `unavailable`,不会切换到另一来源。
|
|
31
|
-
`maximumBytes` 是每个 raw JSON document 的 byte 上限,必须是正安全整数。显式 `include` / `exclude` 数组是完整替换值;
|
|
32
|
-
例如显式 `include: ["**/*"]` 会选择其它类型,Check 将为每个不受支持的 path 发布拒绝 Finding,而不会静默过滤。
|
|
33
|
-
constructor 返回后若通过普通对象组合替换 `check.options`,该 replacement 才必须提供完整 resolved shape。
|
|
45
|
+
无参调用物化上述完整 options,其中 `exclude` 是公开 `defaultProjectFileSelection.exclude` 的独立副本。
|
|
46
|
+
`files`、其子字段和 `maximumBytes` 都可省略;`maximumBytes` 必须是正安全整数。
|
|
47
|
+
|
|
48
|
+
文件来源、glob 与数组替换遵循[共享 files 选择语义](../guides/collecting-project-files.md#共享的-files-选择语义)。
|
|
49
|
+
本 Check 只读取 case-sensitive `path.endsWith(".json")` 的 selected paths;宽泛 include 选中的其它路径发布拒绝 Finding,
|
|
50
|
+
不静默过滤。constructor 后替换 `check.options` 时,必须提供完整 resolved shape。
|
|
34
51
|
|
|
35
52
|
### 定制 authoring options
|
|
36
53
|
|
|
@@ -46,9 +63,12 @@ const configJsonValidation = jsonValidation({
|
|
|
46
63
|
|
|
47
64
|
## 工作原理
|
|
48
65
|
|
|
49
|
-
constructor
|
|
50
|
-
|
|
51
|
-
|
|
66
|
+
constructor 补齐并冻结 closed options,获 Scheduler admission 后先 preflight,再按本页 suffix 规则完整分类输入。
|
|
67
|
+
每个 rejected path 先发布 Record;accepted path 才读取、解析,无效文档另发 Record。
|
|
68
|
+
|
|
69
|
+
strict-document boundary 先按 byte length 应用 `maximumBytes`,再依次区分 BOM、fatal UTF-8、strict JSON grammar 与 decoded
|
|
70
|
+
duplicate key;每个文档只返回最先成立的封闭 reason。合法文档只向 owning Check 交付不含 prototype 的深冻结私有值,
|
|
71
|
+
不会保留 source、AST、key 或 parser detail;读取或边界执行失败结算为 unavailable,而不是伪装成 invalid document。
|
|
52
72
|
|
|
53
73
|
## 效果与结果
|
|
54
74
|
|
|
@@ -120,13 +140,6 @@ Records 与 warning 的 `passed` 结算。`unavailable.reason.code` 只使用以
|
|
|
120
140
|
I/O scope 是 `files` 选中且通过小写 `.json` eligibility 的本地文件;rejected path 只形成事实,不读取内容。external
|
|
121
141
|
command 和 network request 数均为零。
|
|
122
142
|
|
|
123
|
-
## 最小用法
|
|
124
|
-
|
|
125
|
-
```ts
|
|
126
|
-
import { defineConfig, jsonValidation, run } from "@zxyycom/vibe-check";
|
|
127
|
-
const result = await run(defineConfig({ checks: [jsonValidation()] }));
|
|
128
|
-
```
|
|
129
|
-
|
|
130
143
|
## 适用边界
|
|
131
144
|
|
|
132
145
|
该 Check 适用于 JSON document integrity;需要按 schema 评估字段与结构时使用
|
|
@@ -1,11 +1,42 @@
|
|
|
1
1
|
# `maintenanceReminders`
|
|
2
2
|
|
|
3
|
-
返回 [README 的随包 Check 概览](../../README.md#随包提供的-check)。
|
|
4
|
-
|
|
5
3
|
## 用途
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
`maintenanceReminders(entries)` 创建固定 ID 为 `maintenance-reminders` 的 Check,用 Git first-parent history 提醒定期复核。
|
|
6
|
+
|
|
7
|
+
## 最小用法
|
|
8
|
+
|
|
9
|
+
示例保留终端进度,不写 machine files。
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { defineConfig, maintenanceReminders, run } from "@zxyycom/vibe-check";
|
|
13
|
+
const check = maintenanceReminders([
|
|
14
|
+
{
|
|
15
|
+
id: "docs",
|
|
16
|
+
baseCommit: "0123456789abcdef0123456789abcdef01234567",
|
|
17
|
+
limits: { commits: 40 },
|
|
18
|
+
message: "Review docs.",
|
|
19
|
+
mode: "enforcing"
|
|
20
|
+
}
|
|
21
|
+
]);
|
|
22
|
+
const result = await run(defineConfig({
|
|
23
|
+
checks: [check],
|
|
24
|
+
outputs: { machinePublication: { enabled: false } }
|
|
25
|
+
}));
|
|
26
|
+
const outcome = result.kind === "completed"
|
|
27
|
+
? result.snapshot.checks.find(({ checkId }) => checkId === check.checkId)?.outcome
|
|
28
|
+
: undefined;
|
|
29
|
+
if (result.kind !== "completed" || outcome?.status !== "passed") {
|
|
30
|
+
console.error(`Maintenance reminders did not pass: ${result.kind} / ${outcome?.status ?? "no outcome"}`);
|
|
31
|
+
process.exitCode = 1;
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
将占位 commit ID 换成项目 first-parent history 中的真实复核 commit;不存在的基线产生条目 `unavailable`。
|
|
36
|
+
示例使用 `enforcing`,会因到期或不可测量失败;默认 `advisory` 只提醒。
|
|
37
|
+
|
|
38
|
+
本例只接受 `completed` Run 中的 `passed` Check,否则退出非零。若需接受 `not-applicable` 或聚合多个 Check,
|
|
39
|
+
显式配置并读取 [`checkAggregation`](../api-mechanics.md#runcontrols-与-check-aggregation);`run(...)` 返回本身不表示通过。
|
|
9
40
|
|
|
10
41
|
## 参数与默认配置
|
|
11
42
|
|
|
@@ -30,8 +61,8 @@ ReadonlyArray<{
|
|
|
30
61
|
- `message` 是到期或不可测量时展示的非空人读正文。
|
|
31
62
|
- `mode` 省略时为 `advisory`;`enforcing` 使到期或不可测量的条目令所属 Check 失败。
|
|
32
63
|
|
|
33
|
-
constructor 把输入固定为完整 options `{ entries, git: { executable: "git" } }`。所属 Check
|
|
34
|
-
execution
|
|
64
|
+
constructor 把输入固定为完整 options `{ entries, git: { executable: "git" } }`。所属 Check 获 Scheduler admission 后,其 task-local
|
|
65
|
+
preflight 在自身 execution 前验证 unknown、sparse、duplicate 或 malformed entries;失败时当前 Check 以
|
|
35
66
|
`unavailable / invalid-options` 结算。
|
|
36
67
|
|
|
37
68
|
## 工作原理
|
|
@@ -87,12 +118,11 @@ type FinalData = Readonly<{ entries: readonly EntryAssessment[] }>;
|
|
|
87
118
|
| `unavailable` | 附加 warning,不贡献失败。 | 附加 error,并令所属 Check 失败。 |
|
|
88
119
|
|
|
89
120
|
`due` message code 是 `maintenance-reminder-due`,`unavailable` message code 是
|
|
90
|
-
`maintenance-reminder-unavailable
|
|
91
|
-
`
|
|
92
|
-
|
|
121
|
+
`maintenance-reminder-unavailable`。有条目贡献失败则 Check 为 `failed`,否则为 `passed`。
|
|
122
|
+
`due` 正文是 `<id>: <message>`;`unavailable` 追加 ` (<reason>)`。不发布 supplemental Records;条目不成为独立
|
|
123
|
+
Check、aggregation target、progress row 或 machine row。
|
|
93
124
|
|
|
94
|
-
启用 machine publication
|
|
95
|
-
machine row,terminal messages 也不进入 machine files。
|
|
125
|
+
启用 machine publication 时只发布所属 Check 的 final data,terminal messages 不进入 machine files。
|
|
96
126
|
|
|
97
127
|
用返回 Check 的 `check.parseData(value)` 或 package root 的 `parseMaintenanceRemindersData(value)` 验证 final data。parser
|
|
98
128
|
验证每个 discriminated assessment、commit ID、唯一 reminder ID、计数、`exceeded` 与 reason 不变量,并返回
|
|
@@ -134,24 +164,6 @@ Git/历史测量的普通失败会保留完整 final data,并把受影响条
|
|
|
134
164
|
I/O boundary 是本机 Git 对 committed first-parent history 的 read-only 查询。workspace、staging area 与 network
|
|
135
165
|
request 数为零,baseline 更新由维护者提交。
|
|
136
166
|
|
|
137
|
-
## 最小用法
|
|
138
|
-
|
|
139
|
-
```ts
|
|
140
|
-
import { defineConfig, maintenanceReminders, run } from "@zxyycom/vibe-check";
|
|
141
|
-
const check = maintenanceReminders([
|
|
142
|
-
{
|
|
143
|
-
id: "docs",
|
|
144
|
-
baseCommit: "0123456789abcdef0123456789abcdef01234567",
|
|
145
|
-
limits: { commits: 40 },
|
|
146
|
-
message: "Review docs."
|
|
147
|
-
}
|
|
148
|
-
]);
|
|
149
|
-
const result = await run(defineConfig({ checks: [check] }));
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
示例 commit ID 只是 shape 占位值,必须替换为当前项目 first-parent history 中的真实复核 commit。若直接使用不存在的
|
|
153
|
-
占位值,条目会得到 `assessment: "unavailable"`;这不是一次成功的维护基线配置。
|
|
154
|
-
|
|
155
167
|
## 适用边界
|
|
156
168
|
|
|
157
169
|
该 Check 适用于按 commit count 或 changed-line count 提醒维护复核。是否把 `enforcing` failure 转为调用级阻断,
|