@opensip-cli/graph 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/NOTICE +8 -0
- package/README.md +31 -0
- package/dist/__tests__/baseline-plane.test.d.ts +11 -0
- package/dist/__tests__/baseline-plane.test.d.ts.map +1 -0
- package/dist/__tests__/baseline-plane.test.js +60 -0
- package/dist/__tests__/baseline-plane.test.js.map +1 -0
- package/dist/__tests__/cache/engine-version.test.d.ts +12 -0
- package/dist/__tests__/cache/engine-version.test.d.ts.map +1 -0
- package/dist/__tests__/cache/engine-version.test.js +79 -0
- package/dist/__tests__/cache/engine-version.test.js.map +1 -0
- package/dist/__tests__/cache/invalidate.test.d.ts +9 -0
- package/dist/__tests__/cache/invalidate.test.d.ts.map +1 -0
- package/dist/__tests__/cache/invalidate.test.js +228 -0
- package/dist/__tests__/cache/invalidate.test.js.map +1 -0
- package/dist/__tests__/cli/contribution-from-signals.test.d.ts +17 -0
- package/dist/__tests__/cli/contribution-from-signals.test.d.ts.map +1 -0
- package/dist/__tests__/cli/contribution-from-signals.test.js +89 -0
- package/dist/__tests__/cli/contribution-from-signals.test.js.map +1 -0
- package/dist/__tests__/cli/detect.test.d.ts +2 -0
- package/dist/__tests__/cli/detect.test.d.ts.map +1 -0
- package/dist/__tests__/cli/detect.test.js +96 -0
- package/dist/__tests__/cli/detect.test.js.map +1 -0
- package/dist/__tests__/cli/graph-config.test.d.ts +9 -0
- package/dist/__tests__/cli/graph-config.test.d.ts.map +1 -0
- package/dist/__tests__/cli/graph-config.test.js +113 -0
- package/dist/__tests__/cli/graph-config.test.js.map +1 -0
- package/dist/__tests__/cli/graph-execute.test.d.ts +9 -0
- package/dist/__tests__/cli/graph-execute.test.d.ts.map +1 -0
- package/dist/__tests__/cli/graph-execute.test.js +434 -0
- package/dist/__tests__/cli/graph-execute.test.js.map +1 -0
- package/dist/__tests__/cli/graph.test.d.ts +12 -0
- package/dist/__tests__/cli/graph.test.d.ts.map +1 -0
- package/dist/__tests__/cli/graph.test.js +589 -0
- package/dist/__tests__/cli/graph.test.js.map +1 -0
- package/dist/__tests__/cli/heap-preflight.test.d.ts +11 -0
- package/dist/__tests__/cli/heap-preflight.test.d.ts.map +1 -0
- package/dist/__tests__/cli/heap-preflight.test.js +150 -0
- package/dist/__tests__/cli/heap-preflight.test.js.map +1 -0
- package/dist/__tests__/cli/language-mismatch.test.d.ts +10 -0
- package/dist/__tests__/cli/language-mismatch.test.d.ts.map +1 -0
- package/dist/__tests__/cli/language-mismatch.test.js +155 -0
- package/dist/__tests__/cli/language-mismatch.test.js.map +1 -0
- package/dist/__tests__/cli/lookup.test.d.ts +7 -0
- package/dist/__tests__/cli/lookup.test.d.ts.map +1 -0
- package/dist/__tests__/cli/lookup.test.js +104 -0
- package/dist/__tests__/cli/lookup.test.js.map +1 -0
- package/dist/__tests__/cli/orchestrate.test.d.ts +12 -0
- package/dist/__tests__/cli/orchestrate.test.d.ts.map +1 -0
- package/dist/__tests__/cli/orchestrate.test.js +315 -0
- package/dist/__tests__/cli/orchestrate.test.js.map +1 -0
- package/dist/__tests__/cli/positional-paths.test.d.ts +5 -0
- package/dist/__tests__/cli/positional-paths.test.d.ts.map +1 -0
- package/dist/__tests__/cli/positional-paths.test.js +87 -0
- package/dist/__tests__/cli/positional-paths.test.js.map +1 -0
- package/dist/__tests__/cli/pressure-monitor.test.d.ts +11 -0
- package/dist/__tests__/cli/pressure-monitor.test.d.ts.map +1 -0
- package/dist/__tests__/cli/pressure-monitor.test.js +94 -0
- package/dist/__tests__/cli/pressure-monitor.test.js.map +1 -0
- package/dist/__tests__/cli/sarif-export.test.d.ts +8 -0
- package/dist/__tests__/cli/sarif-export.test.d.ts.map +1 -0
- package/dist/__tests__/cli/sarif-export.test.js +94 -0
- package/dist/__tests__/cli/sarif-export.test.js.map +1 -0
- package/dist/__tests__/cli/session-contract.test.d.ts +17 -0
- package/dist/__tests__/cli/session-contract.test.d.ts.map +1 -0
- package/dist/__tests__/cli/session-contract.test.js +225 -0
- package/dist/__tests__/cli/session-contract.test.js.map +1 -0
- package/dist/__tests__/cli/symbol-index.test.d.ts +7 -0
- package/dist/__tests__/cli/symbol-index.test.d.ts.map +1 -0
- package/dist/__tests__/cli/symbol-index.test.js +117 -0
- package/dist/__tests__/cli/symbol-index.test.js.map +1 -0
- package/dist/__tests__/cli/tool-show-mode.test.d.ts +10 -0
- package/dist/__tests__/cli/tool-show-mode.test.d.ts.map +1 -0
- package/dist/__tests__/cli/tool-show-mode.test.js +128 -0
- package/dist/__tests__/cli/tool-show-mode.test.js.map +1 -0
- package/dist/__tests__/cli/workspace-runner-polyglot.test.d.ts +10 -0
- package/dist/__tests__/cli/workspace-runner-polyglot.test.d.ts.map +1 -0
- package/dist/__tests__/cli/workspace-runner-polyglot.test.js +120 -0
- package/dist/__tests__/cli/workspace-runner-polyglot.test.js.map +1 -0
- package/dist/__tests__/graph-catalog-drift.test.d.ts +24 -0
- package/dist/__tests__/graph-catalog-drift.test.d.ts.map +1 -0
- package/dist/__tests__/graph-catalog-drift.test.js +34 -0
- package/dist/__tests__/graph-catalog-drift.test.js.map +1 -0
- package/dist/__tests__/internal-surface.test.d.ts +17 -0
- package/dist/__tests__/internal-surface.test.d.ts.map +1 -0
- package/dist/__tests__/internal-surface.test.js +45 -0
- package/dist/__tests__/internal-surface.test.js.map +1 -0
- package/dist/__tests__/lang-adapter/body-digest.test.d.ts +13 -0
- package/dist/__tests__/lang-adapter/body-digest.test.d.ts.map +1 -0
- package/dist/__tests__/lang-adapter/body-digest.test.js +51 -0
- package/dist/__tests__/lang-adapter/body-digest.test.js.map +1 -0
- package/dist/__tests__/lang-adapter/edge-helpers.test.d.ts +12 -0
- package/dist/__tests__/lang-adapter/edge-helpers.test.d.ts.map +1 -0
- package/dist/__tests__/lang-adapter/edge-helpers.test.js +147 -0
- package/dist/__tests__/lang-adapter/edge-helpers.test.js.map +1 -0
- package/dist/__tests__/lang-adapter/registry.test.d.ts +9 -0
- package/dist/__tests__/lang-adapter/registry.test.d.ts.map +1 -0
- package/dist/__tests__/lang-adapter/registry.test.js +228 -0
- package/dist/__tests__/lang-adapter/registry.test.js.map +1 -0
- package/dist/__tests__/persistence/catalog-repo.test.d.ts +2 -0
- package/dist/__tests__/persistence/catalog-repo.test.d.ts.map +1 -0
- package/dist/__tests__/persistence/catalog-repo.test.js +188 -0
- package/dist/__tests__/persistence/catalog-repo.test.js.map +1 -0
- package/dist/__tests__/persistence/session-payload.test.d.ts +2 -0
- package/dist/__tests__/persistence/session-payload.test.d.ts.map +1 -0
- package/dist/__tests__/persistence/session-payload.test.js +81 -0
- package/dist/__tests__/persistence/session-payload.test.js.map +1 -0
- package/dist/__tests__/persistence/session-replay.test.d.ts +10 -0
- package/dist/__tests__/persistence/session-replay.test.d.ts.map +1 -0
- package/dist/__tests__/persistence/session-replay.test.js +196 -0
- package/dist/__tests__/persistence/session-replay.test.js.map +1 -0
- package/dist/__tests__/public-api.test.d.ts +19 -0
- package/dist/__tests__/public-api.test.d.ts.map +1 -0
- package/dist/__tests__/public-api.test.js +96 -0
- package/dist/__tests__/public-api.test.js.map +1 -0
- package/dist/__tests__/render/catalog-json-types.test.d.ts +10 -0
- package/dist/__tests__/render/catalog-json-types.test.d.ts.map +1 -0
- package/dist/__tests__/render/catalog-json-types.test.js +121 -0
- package/dist/__tests__/render/catalog-json-types.test.js.map +1 -0
- package/dist/__tests__/render/catalog-json.test.d.ts +19 -0
- package/dist/__tests__/render/catalog-json.test.d.ts.map +1 -0
- package/dist/__tests__/render/catalog-json.test.js +435 -0
- package/dist/__tests__/render/catalog-json.test.js.map +1 -0
- package/dist/__tests__/render/opensip-id-derivation.test.d.ts +21 -0
- package/dist/__tests__/render/opensip-id-derivation.test.d.ts.map +1 -0
- package/dist/__tests__/render/opensip-id-derivation.test.js +159 -0
- package/dist/__tests__/render/opensip-id-derivation.test.js.map +1 -0
- package/dist/__tests__/render/rule-id-mapping.test.d.ts +13 -0
- package/dist/__tests__/render/rule-id-mapping.test.d.ts.map +1 -0
- package/dist/__tests__/render/rule-id-mapping.test.js +50 -0
- package/dist/__tests__/render/rule-id-mapping.test.js.map +1 -0
- package/dist/__tests__/render/sarif-opensip.test.d.ts +20 -0
- package/dist/__tests__/render/sarif-opensip.test.d.ts.map +1 -0
- package/dist/__tests__/render/sarif-opensip.test.js +235 -0
- package/dist/__tests__/render/sarif-opensip.test.js.map +1 -0
- package/dist/__tests__/resolution-mode.test.d.ts +10 -0
- package/dist/__tests__/resolution-mode.test.d.ts.map +1 -0
- package/dist/__tests__/resolution-mode.test.js +96 -0
- package/dist/__tests__/resolution-mode.test.js.map +1 -0
- package/dist/__tests__/resolve-callee.test.d.ts +2 -0
- package/dist/__tests__/resolve-callee.test.d.ts.map +1 -0
- package/dist/__tests__/resolve-callee.test.js +119 -0
- package/dist/__tests__/resolve-callee.test.js.map +1 -0
- package/dist/__tests__/rules/_entry-points.test.d.ts +8 -0
- package/dist/__tests__/rules/_entry-points.test.d.ts.map +1 -0
- package/dist/__tests__/rules/_entry-points.test.js +74 -0
- package/dist/__tests__/rules/_entry-points.test.js.map +1 -0
- package/dist/__tests__/rules/_helpers.d.ts +18 -0
- package/dist/__tests__/rules/_helpers.d.ts.map +1 -0
- package/dist/__tests__/rules/_helpers.js +72 -0
- package/dist/__tests__/rules/_helpers.js.map +1 -0
- package/dist/__tests__/rules/always-throws-branch.test.d.ts +9 -0
- package/dist/__tests__/rules/always-throws-branch.test.d.ts.map +1 -0
- package/dist/__tests__/rules/always-throws-branch.test.js +113 -0
- package/dist/__tests__/rules/always-throws-branch.test.js.map +1 -0
- package/dist/__tests__/rules/cycle-and-coupling.test.d.ts +13 -0
- package/dist/__tests__/rules/cycle-and-coupling.test.d.ts.map +1 -0
- package/dist/__tests__/rules/cycle-and-coupling.test.js +224 -0
- package/dist/__tests__/rules/cycle-and-coupling.test.js.map +1 -0
- package/dist/__tests__/rules/duplicated-function-body-config.test.d.ts +8 -0
- package/dist/__tests__/rules/duplicated-function-body-config.test.d.ts.map +1 -0
- package/dist/__tests__/rules/duplicated-function-body-config.test.js +132 -0
- package/dist/__tests__/rules/duplicated-function-body-config.test.js.map +1 -0
- package/dist/__tests__/rules/duplicated-function-body-cross-package.test.d.ts +10 -0
- package/dist/__tests__/rules/duplicated-function-body-cross-package.test.d.ts.map +1 -0
- package/dist/__tests__/rules/duplicated-function-body-cross-package.test.js +274 -0
- package/dist/__tests__/rules/duplicated-function-body-cross-package.test.js.map +1 -0
- package/dist/__tests__/rules/feature-column-parity.test.d.ts +11 -0
- package/dist/__tests__/rules/feature-column-parity.test.d.ts.map +1 -0
- package/dist/__tests__/rules/feature-column-parity.test.js +169 -0
- package/dist/__tests__/rules/feature-column-parity.test.js.map +1 -0
- package/dist/__tests__/rules/high-blast-untested.test.d.ts +13 -0
- package/dist/__tests__/rules/high-blast-untested.test.d.ts.map +1 -0
- package/dist/__tests__/rules/high-blast-untested.test.js +108 -0
- package/dist/__tests__/rules/high-blast-untested.test.js.map +1 -0
- package/dist/__tests__/rules/large-function.test.d.ts +11 -0
- package/dist/__tests__/rules/large-function.test.d.ts.map +1 -0
- package/dist/__tests__/rules/large-function.test.js +105 -0
- package/dist/__tests__/rules/large-function.test.js.map +1 -0
- package/dist/__tests__/rules/no-side-effect-path.test.d.ts +10 -0
- package/dist/__tests__/rules/no-side-effect-path.test.d.ts.map +1 -0
- package/dist/__tests__/rules/no-side-effect-path.test.js +301 -0
- package/dist/__tests__/rules/no-side-effect-path.test.js.map +1 -0
- package/dist/__tests__/rules/orphan-subtree-config.test.d.ts +8 -0
- package/dist/__tests__/rules/orphan-subtree-config.test.d.ts.map +1 -0
- package/dist/__tests__/rules/orphan-subtree-config.test.js +176 -0
- package/dist/__tests__/rules/orphan-subtree-config.test.js.map +1 -0
- package/dist/__tests__/rules/registry.test.d.ts +11 -0
- package/dist/__tests__/rules/registry.test.d.ts.map +1 -0
- package/dist/__tests__/rules/registry.test.js +50 -0
- package/dist/__tests__/rules/registry.test.js.map +1 -0
- package/dist/__tests__/rules/severity-override.test.d.ts +11 -0
- package/dist/__tests__/rules/severity-override.test.d.ts.map +1 -0
- package/dist/__tests__/rules/severity-override.test.js +67 -0
- package/dist/__tests__/rules/severity-override.test.js.map +1 -0
- package/dist/__tests__/rules/test-only-reachable.test.d.ts +9 -0
- package/dist/__tests__/rules/test-only-reachable.test.d.ts.map +1 -0
- package/dist/__tests__/rules/test-only-reachable.test.js +142 -0
- package/dist/__tests__/rules/test-only-reachable.test.js.map +1 -0
- package/dist/__tests__/rules/wide-function.test.d.ts +9 -0
- package/dist/__tests__/rules/wide-function.test.d.ts.map +1 -0
- package/dist/__tests__/rules/wide-function.test.js +64 -0
- package/dist/__tests__/rules/wide-function.test.js.map +1 -0
- package/dist/__tests__/test-utils/with-graph-scope.d.ts +14 -0
- package/dist/__tests__/test-utils/with-graph-scope.d.ts.map +1 -0
- package/dist/__tests__/test-utils/with-graph-scope.js +26 -0
- package/dist/__tests__/test-utils/with-graph-scope.js.map +1 -0
- package/dist/__tests__/tool-branches.test.d.ts +18 -0
- package/dist/__tests__/tool-branches.test.d.ts.map +1 -0
- package/dist/__tests__/tool-branches.test.js +262 -0
- package/dist/__tests__/tool-branches.test.js.map +1 -0
- package/dist/__tests__/tool-register.test.d.ts +16 -0
- package/dist/__tests__/tool-register.test.d.ts.map +1 -0
- package/dist/__tests__/tool-register.test.js +419 -0
- package/dist/__tests__/tool-register.test.js.map +1 -0
- package/dist/__tests__/tool.test.d.ts +18 -0
- package/dist/__tests__/tool.test.d.ts.map +1 -0
- package/dist/__tests__/tool.test.js +65 -0
- package/dist/__tests__/tool.test.js.map +1 -0
- package/dist/baseline-strategy.d.ts +28 -0
- package/dist/baseline-strategy.d.ts.map +1 -0
- package/dist/baseline-strategy.js +27 -0
- package/dist/baseline-strategy.js.map +1 -0
- package/dist/cache/engine-version.d.ts +69 -0
- package/dist/cache/engine-version.d.ts.map +1 -0
- package/dist/cache/engine-version.js +60 -0
- package/dist/cache/engine-version.js.map +1 -0
- package/dist/cache/invalidate.d.ts +60 -0
- package/dist/cache/invalidate.d.ts.map +1 -0
- package/dist/cache/invalidate.js +120 -0
- package/dist/cache/invalidate.js.map +1 -0
- package/dist/cli/__tests__/build-envelope.test.d.ts +8 -0
- package/dist/cli/__tests__/build-envelope.test.d.ts.map +1 -0
- package/dist/cli/__tests__/build-envelope.test.js +70 -0
- package/dist/cli/__tests__/build-envelope.test.js.map +1 -0
- package/dist/cli/__tests__/dispatch-envelope.test.d.ts +15 -0
- package/dist/cli/__tests__/dispatch-envelope.test.d.ts.map +1 -0
- package/dist/cli/__tests__/dispatch-envelope.test.js +73 -0
- package/dist/cli/__tests__/dispatch-envelope.test.js.map +1 -0
- package/dist/cli/__tests__/dispatch-suppression-root.test.d.ts +18 -0
- package/dist/cli/__tests__/dispatch-suppression-root.test.d.ts.map +1 -0
- package/dist/cli/__tests__/dispatch-suppression-root.test.js +91 -0
- package/dist/cli/__tests__/dispatch-suppression-root.test.js.map +1 -0
- package/dist/cli/__tests__/graph-config-schema.test.d.ts +7 -0
- package/dist/cli/__tests__/graph-config-schema.test.d.ts.map +1 -0
- package/dist/cli/__tests__/graph-config-schema.test.js +60 -0
- package/dist/cli/__tests__/graph-config-schema.test.js.map +1 -0
- package/dist/cli/__tests__/graph-gate-mode.test.d.ts +15 -0
- package/dist/cli/__tests__/graph-gate-mode.test.d.ts.map +1 -0
- package/dist/cli/__tests__/graph-gate-mode.test.js +99 -0
- package/dist/cli/__tests__/graph-gate-mode.test.js.map +1 -0
- package/dist/cli/__tests__/graph-recipes.test.d.ts +7 -0
- package/dist/cli/__tests__/graph-recipes.test.d.ts.map +1 -0
- package/dist/cli/__tests__/graph-recipes.test.js +24 -0
- package/dist/cli/__tests__/graph-recipes.test.js.map +1 -0
- package/dist/cli/__tests__/graph-report.test.d.ts +7 -0
- package/dist/cli/__tests__/graph-report.test.d.ts.map +1 -0
- package/dist/cli/__tests__/graph-report.test.js +138 -0
- package/dist/cli/__tests__/graph-report.test.js.map +1 -0
- package/dist/cli/__tests__/graph-tracer.test.d.ts +11 -0
- package/dist/cli/__tests__/graph-tracer.test.d.ts.map +1 -0
- package/dist/cli/__tests__/graph-tracer.test.js +41 -0
- package/dist/cli/__tests__/graph-tracer.test.js.map +1 -0
- package/dist/cli/__tests__/graph-worker.test.d.ts +13 -0
- package/dist/cli/__tests__/graph-worker.test.d.ts.map +1 -0
- package/dist/cli/__tests__/graph-worker.test.js +127 -0
- package/dist/cli/__tests__/graph-worker.test.js.map +1 -0
- package/dist/cli/__tests__/list-files.test.d.ts +12 -0
- package/dist/cli/__tests__/list-files.test.d.ts.map +1 -0
- package/dist/cli/__tests__/list-files.test.js +146 -0
- package/dist/cli/__tests__/list-files.test.js.map +1 -0
- package/dist/cli/__tests__/live-suppression-parity.test.d.ts +23 -0
- package/dist/cli/__tests__/live-suppression-parity.test.d.ts.map +1 -0
- package/dist/cli/__tests__/live-suppression-parity.test.js +136 -0
- package/dist/cli/__tests__/live-suppression-parity.test.js.map +1 -0
- package/dist/cli/__tests__/orchestrate-spans.test.d.ts +18 -0
- package/dist/cli/__tests__/orchestrate-spans.test.d.ts.map +1 -0
- package/dist/cli/__tests__/orchestrate-spans.test.js +108 -0
- package/dist/cli/__tests__/orchestrate-spans.test.js.map +1 -0
- package/dist/cli/__tests__/shard-worker.test.d.ts +10 -0
- package/dist/cli/__tests__/shard-worker.test.d.ts.map +1 -0
- package/dist/cli/__tests__/shard-worker.test.js +153 -0
- package/dist/cli/__tests__/shard-worker.test.js.map +1 -0
- package/dist/cli/__tests__/workspace-report.test.d.ts +6 -0
- package/dist/cli/__tests__/workspace-report.test.d.ts.map +1 -0
- package/dist/cli/__tests__/workspace-report.test.js +89 -0
- package/dist/cli/__tests__/workspace-report.test.js.map +1 -0
- package/dist/cli/apply-suppressions.d.ts +86 -0
- package/dist/cli/apply-suppressions.d.ts.map +1 -0
- package/dist/cli/apply-suppressions.js +101 -0
- package/dist/cli/apply-suppressions.js.map +1 -0
- package/dist/cli/apply-suppressions.test.d.ts +12 -0
- package/dist/cli/apply-suppressions.test.d.ts.map +1 -0
- package/dist/cli/apply-suppressions.test.js +85 -0
- package/dist/cli/apply-suppressions.test.js.map +1 -0
- package/dist/cli/build-envelope.d.ts +53 -0
- package/dist/cli/build-envelope.d.ts.map +1 -0
- package/dist/cli/build-envelope.js +88 -0
- package/dist/cli/build-envelope.js.map +1 -0
- package/dist/cli/detect.d.ts +37 -0
- package/dist/cli/detect.d.ts.map +1 -0
- package/dist/cli/detect.js +60 -0
- package/dist/cli/detect.js.map +1 -0
- package/dist/cli/equivalence-check-command.d.ts +45 -0
- package/dist/cli/equivalence-check-command.d.ts.map +1 -0
- package/dist/cli/equivalence-check-command.js +196 -0
- package/dist/cli/equivalence-check-command.js.map +1 -0
- package/dist/cli/graph/graph-aux-command-specs.d.ts +60 -0
- package/dist/cli/graph/graph-aux-command-specs.d.ts.map +1 -0
- package/dist/cli/graph/graph-aux-command-specs.js +390 -0
- package/dist/cli/graph/graph-aux-command-specs.js.map +1 -0
- package/dist/cli/graph/graph-command-spec.d.ts +43 -0
- package/dist/cli/graph/graph-command-spec.d.ts.map +1 -0
- package/dist/cli/graph/graph-command-spec.js +456 -0
- package/dist/cli/graph/graph-command-spec.js.map +1 -0
- package/dist/cli/graph-config-schema.d.ts +70 -0
- package/dist/cli/graph-config-schema.d.ts.map +1 -0
- package/dist/cli/graph-config-schema.js +68 -0
- package/dist/cli/graph-config-schema.js.map +1 -0
- package/dist/cli/graph-config.d.ts +53 -0
- package/dist/cli/graph-config.d.ts.map +1 -0
- package/dist/cli/graph-config.js +111 -0
- package/dist/cli/graph-config.js.map +1 -0
- package/dist/cli/graph-modes.d.ts +36 -0
- package/dist/cli/graph-modes.d.ts.map +1 -0
- package/dist/cli/graph-modes.js +161 -0
- package/dist/cli/graph-modes.js.map +1 -0
- package/dist/cli/graph-options.d.ts +143 -0
- package/dist/cli/graph-options.d.ts.map +1 -0
- package/dist/cli/graph-options.js +15 -0
- package/dist/cli/graph-options.js.map +1 -0
- package/dist/cli/graph-progress.d.ts +31 -0
- package/dist/cli/graph-progress.d.ts.map +1 -0
- package/dist/cli/graph-progress.js +56 -0
- package/dist/cli/graph-progress.js.map +1 -0
- package/dist/cli/graph-recipes.d.ts +23 -0
- package/dist/cli/graph-recipes.d.ts.map +1 -0
- package/dist/cli/graph-recipes.js +44 -0
- package/dist/cli/graph-recipes.js.map +1 -0
- package/dist/cli/graph-report.d.ts +79 -0
- package/dist/cli/graph-report.d.ts.map +1 -0
- package/dist/cli/graph-report.js +186 -0
- package/dist/cli/graph-report.js.map +1 -0
- package/dist/cli/graph-runner.d.ts +106 -0
- package/dist/cli/graph-runner.d.ts.map +1 -0
- package/dist/cli/graph-runner.js +274 -0
- package/dist/cli/graph-runner.js.map +1 -0
- package/dist/cli/graph-tracer.d.ts +27 -0
- package/dist/cli/graph-tracer.d.ts.map +1 -0
- package/dist/cli/graph-tracer.js +33 -0
- package/dist/cli/graph-tracer.js.map +1 -0
- package/dist/cli/graph-worker.d.ts +29 -0
- package/dist/cli/graph-worker.d.ts.map +1 -0
- package/dist/cli/graph-worker.js +86 -0
- package/dist/cli/graph-worker.js.map +1 -0
- package/dist/cli/graph.d.ts +171 -0
- package/dist/cli/graph.d.ts.map +1 -0
- package/dist/cli/graph.js +1041 -0
- package/dist/cli/graph.js.map +1 -0
- package/dist/cli/heap-preflight.d.ts +62 -0
- package/dist/cli/heap-preflight.d.ts.map +1 -0
- package/dist/cli/heap-preflight.js +176 -0
- package/dist/cli/heap-preflight.js.map +1 -0
- package/dist/cli/list-files.d.ts +37 -0
- package/dist/cli/list-files.d.ts.map +1 -0
- package/dist/cli/list-files.js +166 -0
- package/dist/cli/list-files.js.map +1 -0
- package/dist/cli/lookup.d.ts +19 -0
- package/dist/cli/lookup.d.ts.map +1 -0
- package/dist/cli/lookup.js +87 -0
- package/dist/cli/lookup.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/_equivalence-harness.d.ts +47 -0
- package/dist/cli/orchestrate/__tests__/_equivalence-harness.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/_equivalence-harness.js +331 -0
- package/dist/cli/orchestrate/__tests__/_equivalence-harness.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/_flat-large-fixture.d.ts +69 -0
- package/dist/cli/orchestrate/__tests__/_flat-large-fixture.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/_flat-large-fixture.js +181 -0
- package/dist/cli/orchestrate/__tests__/_flat-large-fixture.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/canonical-file-set.test.d.ts +8 -0
- package/dist/cli/orchestrate/__tests__/canonical-file-set.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/canonical-file-set.test.js +51 -0
- package/dist/cli/orchestrate/__tests__/canonical-file-set.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/catalog-builder-incremental.test.d.ts +9 -0
- package/dist/cli/orchestrate/__tests__/catalog-builder-incremental.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/catalog-builder-incremental.test.js +147 -0
- package/dist/cli/orchestrate/__tests__/catalog-builder-incremental.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/cross-shard-resolve.test.d.ts +12 -0
- package/dist/cli/orchestrate/__tests__/cross-shard-resolve.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/cross-shard-resolve.test.js +509 -0
- package/dist/cli/orchestrate/__tests__/cross-shard-resolve.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/determinism.test.d.ts +19 -0
- package/dist/cli/orchestrate/__tests__/determinism.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/determinism.test.js +163 -0
- package/dist/cli/orchestrate/__tests__/determinism.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/edge-identity.test.d.ts +9 -0
- package/dist/cli/orchestrate/__tests__/edge-identity.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/edge-identity.test.js +103 -0
- package/dist/cli/orchestrate/__tests__/edge-identity.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/equivalence-check.test.d.ts +10 -0
- package/dist/cli/orchestrate/__tests__/equivalence-check.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/equivalence-check.test.js +277 -0
- package/dist/cli/orchestrate/__tests__/equivalence-check.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/equivalence-repo-scale.test.d.ts +51 -0
- package/dist/cli/orchestrate/__tests__/equivalence-repo-scale.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/equivalence-repo-scale.test.js +183 -0
- package/dist/cli/orchestrate/__tests__/equivalence-repo-scale.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/equivalence.test.d.ts +47 -0
- package/dist/cli/orchestrate/__tests__/equivalence.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/equivalence.test.js +259 -0
- package/dist/cli/orchestrate/__tests__/equivalence.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/exact-boundary-recovery.test.d.ts +9 -0
- package/dist/cli/orchestrate/__tests__/exact-boundary-recovery.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/exact-boundary-recovery.test.js +105 -0
- package/dist/cli/orchestrate/__tests__/exact-boundary-recovery.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/export-index.test.d.ts +12 -0
- package/dist/cli/orchestrate/__tests__/export-index.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/export-index.test.js +346 -0
- package/dist/cli/orchestrate/__tests__/export-index.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/flat-large-fixture.test.d.ts +16 -0
- package/dist/cli/orchestrate/__tests__/flat-large-fixture.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/flat-large-fixture.test.js +99 -0
- package/dist/cli/orchestrate/__tests__/flat-large-fixture.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/flat-monorepo-strategy.test.d.ts +11 -0
- package/dist/cli/orchestrate/__tests__/flat-monorepo-strategy.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/flat-monorepo-strategy.test.js +271 -0
- package/dist/cli/orchestrate/__tests__/flat-monorepo-strategy.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/function-set-parity.test.d.ts +38 -0
- package/dist/cli/orchestrate/__tests__/function-set-parity.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/function-set-parity.test.js +163 -0
- package/dist/cli/orchestrate/__tests__/function-set-parity.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/incremental-merge.test.d.ts +8 -0
- package/dist/cli/orchestrate/__tests__/incremental-merge.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/incremental-merge.test.js +153 -0
- package/dist/cli/orchestrate/__tests__/incremental-merge.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/partition-files.test.d.ts +10 -0
- package/dist/cli/orchestrate/__tests__/partition-files.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/partition-files.test.js +104 -0
- package/dist/cli/orchestrate/__tests__/partition-files.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/resolution-completeness-floor.test.d.ts +21 -0
- package/dist/cli/orchestrate/__tests__/resolution-completeness-floor.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/resolution-completeness-floor.test.js +59 -0
- package/dist/cli/orchestrate/__tests__/resolution-completeness-floor.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/shard-model.test.d.ts +8 -0
- package/dist/cli/orchestrate/__tests__/shard-model.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/shard-model.test.js +77 -0
- package/dist/cli/orchestrate/__tests__/shard-model.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/shard-runner-spawn.test.d.ts +13 -0
- package/dist/cli/orchestrate/__tests__/shard-runner-spawn.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/shard-runner-spawn.test.js +103 -0
- package/dist/cli/orchestrate/__tests__/shard-runner-spawn.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/sharded-graph.test.d.ts +13 -0
- package/dist/cli/orchestrate/__tests__/sharded-graph.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/sharded-graph.test.js +257 -0
- package/dist/cli/orchestrate/__tests__/sharded-graph.test.js.map +1 -0
- package/dist/cli/orchestrate/__tests__/worker-pool.test.d.ts +6 -0
- package/dist/cli/orchestrate/__tests__/worker-pool.test.d.ts.map +1 -0
- package/dist/cli/orchestrate/__tests__/worker-pool.test.js +38 -0
- package/dist/cli/orchestrate/__tests__/worker-pool.test.js.map +1 -0
- package/dist/cli/orchestrate/cache-orchestrator.d.ts +42 -0
- package/dist/cli/orchestrate/cache-orchestrator.d.ts.map +1 -0
- package/dist/cli/orchestrate/cache-orchestrator.js +92 -0
- package/dist/cli/orchestrate/cache-orchestrator.js.map +1 -0
- package/dist/cli/orchestrate/canonical-file-set.d.ts +51 -0
- package/dist/cli/orchestrate/canonical-file-set.d.ts.map +1 -0
- package/dist/cli/orchestrate/canonical-file-set.js +58 -0
- package/dist/cli/orchestrate/canonical-file-set.js.map +1 -0
- package/dist/cli/orchestrate/catalog-builder.d.ts +121 -0
- package/dist/cli/orchestrate/catalog-builder.d.ts.map +1 -0
- package/dist/cli/orchestrate/catalog-builder.js +279 -0
- package/dist/cli/orchestrate/catalog-builder.js.map +1 -0
- package/dist/cli/orchestrate/catalog-stats.d.ts +31 -0
- package/dist/cli/orchestrate/catalog-stats.d.ts.map +1 -0
- package/dist/cli/orchestrate/catalog-stats.js +52 -0
- package/dist/cli/orchestrate/catalog-stats.js.map +1 -0
- package/dist/cli/orchestrate/cross-shard-resolve.d.ts +190 -0
- package/dist/cli/orchestrate/cross-shard-resolve.d.ts.map +1 -0
- package/dist/cli/orchestrate/cross-shard-resolve.js +523 -0
- package/dist/cli/orchestrate/cross-shard-resolve.js.map +1 -0
- package/dist/cli/orchestrate/edge-identity.d.ts +48 -0
- package/dist/cli/orchestrate/edge-identity.d.ts.map +1 -0
- package/dist/cli/orchestrate/edge-identity.js +68 -0
- package/dist/cli/orchestrate/edge-identity.js.map +1 -0
- package/dist/cli/orchestrate/equivalence-check.d.ts +227 -0
- package/dist/cli/orchestrate/equivalence-check.d.ts.map +1 -0
- package/dist/cli/orchestrate/equivalence-check.js +264 -0
- package/dist/cli/orchestrate/equivalence-check.js.map +1 -0
- package/dist/cli/orchestrate/exact-boundary-recovery.d.ts +33 -0
- package/dist/cli/orchestrate/exact-boundary-recovery.d.ts.map +1 -0
- package/dist/cli/orchestrate/exact-boundary-recovery.js +62 -0
- package/dist/cli/orchestrate/exact-boundary-recovery.js.map +1 -0
- package/dist/cli/orchestrate/flat-monorepo-strategy.d.ts +171 -0
- package/dist/cli/orchestrate/flat-monorepo-strategy.d.ts.map +1 -0
- package/dist/cli/orchestrate/flat-monorepo-strategy.js +328 -0
- package/dist/cli/orchestrate/flat-monorepo-strategy.js.map +1 -0
- package/dist/cli/orchestrate/incremental-merge.d.ts +46 -0
- package/dist/cli/orchestrate/incremental-merge.d.ts.map +1 -0
- package/dist/cli/orchestrate/incremental-merge.js +236 -0
- package/dist/cli/orchestrate/incremental-merge.js.map +1 -0
- package/dist/cli/orchestrate/partition-chunk.d.ts +36 -0
- package/dist/cli/orchestrate/partition-chunk.d.ts.map +1 -0
- package/dist/cli/orchestrate/partition-chunk.js +37 -0
- package/dist/cli/orchestrate/partition-chunk.js.map +1 -0
- package/dist/cli/orchestrate/partition-files.d.ts +52 -0
- package/dist/cli/orchestrate/partition-files.d.ts.map +1 -0
- package/dist/cli/orchestrate/partition-files.js +94 -0
- package/dist/cli/orchestrate/partition-files.js.map +1 -0
- package/dist/cli/orchestrate/resolution-trace.d.ts +11 -0
- package/dist/cli/orchestrate/resolution-trace.d.ts.map +1 -0
- package/dist/cli/orchestrate/resolution-trace.js +27 -0
- package/dist/cli/orchestrate/resolution-trace.js.map +1 -0
- package/dist/cli/orchestrate/shard-model.d.ts +99 -0
- package/dist/cli/orchestrate/shard-model.d.ts.map +1 -0
- package/dist/cli/orchestrate/shard-model.js +23 -0
- package/dist/cli/orchestrate/shard-model.js.map +1 -0
- package/dist/cli/orchestrate/shard-runner.d.ts +65 -0
- package/dist/cli/orchestrate/shard-runner.d.ts.map +1 -0
- package/dist/cli/orchestrate/shard-runner.js +169 -0
- package/dist/cli/orchestrate/shard-runner.js.map +1 -0
- package/dist/cli/orchestrate/sharded-graph.d.ts +86 -0
- package/dist/cli/orchestrate/sharded-graph.d.ts.map +1 -0
- package/dist/cli/orchestrate/sharded-graph.js +227 -0
- package/dist/cli/orchestrate/sharded-graph.js.map +1 -0
- package/dist/cli/orchestrate/types.d.ts +31 -0
- package/dist/cli/orchestrate/types.d.ts.map +1 -0
- package/dist/cli/orchestrate/types.js +24 -0
- package/dist/cli/orchestrate/types.js.map +1 -0
- package/dist/cli/orchestrate/worker-pool.d.ts +16 -0
- package/dist/cli/orchestrate/worker-pool.d.ts.map +1 -0
- package/dist/cli/orchestrate/worker-pool.js +39 -0
- package/dist/cli/orchestrate/worker-pool.js.map +1 -0
- package/dist/cli/orchestrate.d.ts +106 -0
- package/dist/cli/orchestrate.d.ts.map +1 -0
- package/dist/cli/orchestrate.js +228 -0
- package/dist/cli/orchestrate.js.map +1 -0
- package/dist/cli/positional-paths.d.ts +23 -0
- package/dist/cli/positional-paths.d.ts.map +1 -0
- package/dist/cli/positional-paths.js +64 -0
- package/dist/cli/positional-paths.js.map +1 -0
- package/dist/cli/pressure-monitor.d.ts +62 -0
- package/dist/cli/pressure-monitor.d.ts.map +1 -0
- package/dist/cli/pressure-monitor.js +110 -0
- package/dist/cli/pressure-monitor.js.map +1 -0
- package/dist/cli/profile.d.ts +82 -0
- package/dist/cli/profile.d.ts.map +1 -0
- package/dist/cli/profile.js +120 -0
- package/dist/cli/profile.js.map +1 -0
- package/dist/cli/report-data.d.ts +46 -0
- package/dist/cli/report-data.d.ts.map +1 -0
- package/dist/cli/report-data.js +48 -0
- package/dist/cli/report-data.js.map +1 -0
- package/dist/cli/resolve-adapters.d.ts +19 -0
- package/dist/cli/resolve-adapters.d.ts.map +1 -0
- package/dist/cli/resolve-adapters.js +38 -0
- package/dist/cli/resolve-adapters.js.map +1 -0
- package/dist/cli/sarif-export.d.ts +40 -0
- package/dist/cli/sarif-export.d.ts.map +1 -0
- package/dist/cli/sarif-export.js +69 -0
- package/dist/cli/sarif-export.js.map +1 -0
- package/dist/cli/shard-worker.d.ts +25 -0
- package/dist/cli/shard-worker.d.ts.map +1 -0
- package/dist/cli/shard-worker.js +98 -0
- package/dist/cli/shard-worker.js.map +1 -0
- package/dist/cli/symbol-index.d.ts +51 -0
- package/dist/cli/symbol-index.d.ts.map +1 -0
- package/dist/cli/symbol-index.js +120 -0
- package/dist/cli/symbol-index.js.map +1 -0
- package/dist/cli/workspace-report.d.ts +32 -0
- package/dist/cli/workspace-report.d.ts.map +1 -0
- package/dist/cli/workspace-report.js +107 -0
- package/dist/cli/workspace-report.js.map +1 -0
- package/dist/cli/workspace-runner.d.ts +104 -0
- package/dist/cli/workspace-runner.d.ts.map +1 -0
- package/dist/cli/workspace-runner.js +166 -0
- package/dist/cli/workspace-runner.js.map +1 -0
- package/dist/cross-package/export-index.d.ts +118 -0
- package/dist/cross-package/export-index.d.ts.map +1 -0
- package/dist/cross-package/export-index.js +296 -0
- package/dist/cross-package/export-index.js.map +1 -0
- package/dist/cross-package/posix-path.d.ts +16 -0
- package/dist/cross-package/posix-path.d.ts.map +1 -0
- package/dist/cross-package/posix-path.js +18 -0
- package/dist/cross-package/posix-path.js.map +1 -0
- package/dist/cross-package/resolve.d.ts +68 -0
- package/dist/cross-package/resolve.d.ts.map +1 -0
- package/dist/cross-package/resolve.js +83 -0
- package/dist/cross-package/resolve.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/index.js.map +1 -0
- package/dist/internal.d.ts +25 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +38 -0
- package/dist/internal.js.map +1 -0
- package/dist/lang-adapter/body-digest.d.ts +46 -0
- package/dist/lang-adapter/body-digest.d.ts.map +1 -0
- package/dist/lang-adapter/body-digest.js +49 -0
- package/dist/lang-adapter/body-digest.js.map +1 -0
- package/dist/lang-adapter/edge-helpers.d.ts +104 -0
- package/dist/lang-adapter/edge-helpers.d.ts.map +1 -0
- package/dist/lang-adapter/edge-helpers.js +120 -0
- package/dist/lang-adapter/edge-helpers.js.map +1 -0
- package/dist/lang-adapter/registry.d.ts +59 -0
- package/dist/lang-adapter/registry.d.ts.map +1 -0
- package/dist/lang-adapter/registry.js +100 -0
- package/dist/lang-adapter/registry.js.map +1 -0
- package/dist/lang-adapter/selector.d.ts +39 -0
- package/dist/lang-adapter/selector.d.ts.map +1 -0
- package/dist/lang-adapter/selector.js +140 -0
- package/dist/lang-adapter/selector.js.map +1 -0
- package/dist/lang-adapter/types.d.ts +217 -0
- package/dist/lang-adapter/types.d.ts.map +1 -0
- package/dist/lang-adapter/types.js +18 -0
- package/dist/lang-adapter/types.js.map +1 -0
- package/dist/owner-key.d.ts +22 -0
- package/dist/owner-key.d.ts.map +1 -0
- package/dist/owner-key.js +25 -0
- package/dist/owner-key.js.map +1 -0
- package/dist/persistence/__tests__/shard-fragment-cache.test.d.ts +8 -0
- package/dist/persistence/__tests__/shard-fragment-cache.test.d.ts.map +1 -0
- package/dist/persistence/__tests__/shard-fragment-cache.test.js +126 -0
- package/dist/persistence/__tests__/shard-fragment-cache.test.js.map +1 -0
- package/dist/persistence/catalog-repo.d.ts +77 -0
- package/dist/persistence/catalog-repo.d.ts.map +1 -0
- package/dist/persistence/catalog-repo.js +229 -0
- package/dist/persistence/catalog-repo.js.map +1 -0
- package/dist/persistence/schema.d.ts +249 -0
- package/dist/persistence/schema.d.ts.map +1 -0
- package/dist/persistence/schema.js +53 -0
- package/dist/persistence/schema.js.map +1 -0
- package/dist/persistence/session-payload.d.ts +96 -0
- package/dist/persistence/session-payload.d.ts.map +1 -0
- package/dist/persistence/session-payload.js +116 -0
- package/dist/persistence/session-payload.js.map +1 -0
- package/dist/persistence/session-replay.d.ts +15 -0
- package/dist/persistence/session-replay.d.ts.map +1 -0
- package/dist/persistence/session-replay.js +80 -0
- package/dist/persistence/session-replay.js.map +1 -0
- package/dist/pipeline/__tests__/assign-packages.test.d.ts +2 -0
- package/dist/pipeline/__tests__/assign-packages.test.d.ts.map +1 -0
- package/dist/pipeline/__tests__/assign-packages.test.js +88 -0
- package/dist/pipeline/__tests__/assign-packages.test.js.map +1 -0
- package/dist/pipeline/__tests__/constrain-edges.test.d.ts +2 -0
- package/dist/pipeline/__tests__/constrain-edges.test.d.ts.map +1 -0
- package/dist/pipeline/__tests__/constrain-edges.test.js +228 -0
- package/dist/pipeline/__tests__/constrain-edges.test.js.map +1 -0
- package/dist/pipeline/__tests__/features.test.d.ts +9 -0
- package/dist/pipeline/__tests__/features.test.d.ts.map +1 -0
- package/dist/pipeline/__tests__/features.test.js +458 -0
- package/dist/pipeline/__tests__/features.test.js.map +1 -0
- package/dist/pipeline/__tests__/indexes-imports.test.d.ts +2 -0
- package/dist/pipeline/__tests__/indexes-imports.test.d.ts.map +1 -0
- package/dist/pipeline/__tests__/indexes-imports.test.js +114 -0
- package/dist/pipeline/__tests__/indexes-imports.test.js.map +1 -0
- package/dist/pipeline/assign-packages.d.ts +18 -0
- package/dist/pipeline/assign-packages.d.ts.map +1 -0
- package/dist/pipeline/assign-packages.js +86 -0
- package/dist/pipeline/assign-packages.js.map +1 -0
- package/dist/pipeline/constrain-edges.d.ts +34 -0
- package/dist/pipeline/constrain-edges.d.ts.map +1 -0
- package/dist/pipeline/constrain-edges.js +139 -0
- package/dist/pipeline/constrain-edges.js.map +1 -0
- package/dist/pipeline/feature-deps.d.ts +19 -0
- package/dist/pipeline/feature-deps.d.ts.map +1 -0
- package/dist/pipeline/feature-deps.js +28 -0
- package/dist/pipeline/feature-deps.js.map +1 -0
- package/dist/pipeline/features.d.ts +50 -0
- package/dist/pipeline/features.d.ts.map +1 -0
- package/dist/pipeline/features.js +462 -0
- package/dist/pipeline/features.js.map +1 -0
- package/dist/pipeline/indexes.d.ts +27 -0
- package/dist/pipeline/indexes.d.ts.map +1 -0
- package/dist/pipeline/indexes.js +159 -0
- package/dist/pipeline/indexes.js.map +1 -0
- package/dist/recipes/__tests__/built-in-recipes.test.d.ts +5 -0
- package/dist/recipes/__tests__/built-in-recipes.test.d.ts.map +1 -0
- package/dist/recipes/__tests__/built-in-recipes.test.js +24 -0
- package/dist/recipes/__tests__/built-in-recipes.test.js.map +1 -0
- package/dist/recipes/__tests__/registry.test.d.ts +7 -0
- package/dist/recipes/__tests__/registry.test.d.ts.map +1 -0
- package/dist/recipes/__tests__/registry.test.js +34 -0
- package/dist/recipes/__tests__/registry.test.js.map +1 -0
- package/dist/recipes/__tests__/resolve.test.d.ts +10 -0
- package/dist/recipes/__tests__/resolve.test.d.ts.map +1 -0
- package/dist/recipes/__tests__/resolve.test.js +38 -0
- package/dist/recipes/__tests__/resolve.test.js.map +1 -0
- package/dist/recipes/built-in-recipes.d.ts +26 -0
- package/dist/recipes/built-in-recipes.d.ts.map +1 -0
- package/dist/recipes/built-in-recipes.js +43 -0
- package/dist/recipes/built-in-recipes.js.map +1 -0
- package/dist/recipes/registry.d.ts +31 -0
- package/dist/recipes/registry.d.ts.map +1 -0
- package/dist/recipes/registry.js +48 -0
- package/dist/recipes/registry.js.map +1 -0
- package/dist/recipes/resolve.d.ts +31 -0
- package/dist/recipes/resolve.d.ts.map +1 -0
- package/dist/recipes/resolve.js +70 -0
- package/dist/recipes/resolve.js.map +1 -0
- package/dist/recipes/types.d.ts +58 -0
- package/dist/recipes/types.d.ts.map +1 -0
- package/dist/recipes/types.js +39 -0
- package/dist/recipes/types.js.map +1 -0
- package/dist/render/__tests__/catalog-json.test.d.ts +9 -0
- package/dist/render/__tests__/catalog-json.test.d.ts.map +1 -0
- package/dist/render/__tests__/catalog-json.test.js +132 -0
- package/dist/render/__tests__/catalog-json.test.js.map +1 -0
- package/dist/render/catalog-json-types.d.ts +114 -0
- package/dist/render/catalog-json-types.d.ts.map +1 -0
- package/dist/render/catalog-json-types.js +23 -0
- package/dist/render/catalog-json-types.js.map +1 -0
- package/dist/render/catalog-json.d.ts +43 -0
- package/dist/render/catalog-json.d.ts.map +1 -0
- package/dist/render/catalog-json.js +303 -0
- package/dist/render/catalog-json.js.map +1 -0
- package/dist/render/opensip-id-derivation.d.ts +73 -0
- package/dist/render/opensip-id-derivation.d.ts.map +1 -0
- package/dist/render/opensip-id-derivation.js +65 -0
- package/dist/render/opensip-id-derivation.js.map +1 -0
- package/dist/render/rule-id-mapping.d.ts +61 -0
- package/dist/render/rule-id-mapping.d.ts.map +1 -0
- package/dist/render/rule-id-mapping.js +82 -0
- package/dist/render/rule-id-mapping.js.map +1 -0
- package/dist/resolve-callee.d.ts +50 -0
- package/dist/resolve-callee.d.ts.map +1 -0
- package/dist/resolve-callee.js +80 -0
- package/dist/resolve-callee.js.map +1 -0
- package/dist/rules/__tests__/__fixtures__/catalog.fixture.d.ts +22 -0
- package/dist/rules/__tests__/__fixtures__/catalog.fixture.d.ts.map +1 -0
- package/dist/rules/__tests__/__fixtures__/catalog.fixture.js +143 -0
- package/dist/rules/__tests__/__fixtures__/catalog.fixture.js.map +1 -0
- package/dist/rules/__tests__/create-graph-signal.test.d.ts +8 -0
- package/dist/rules/__tests__/create-graph-signal.test.d.ts.map +1 -0
- package/dist/rules/__tests__/create-graph-signal.test.js +55 -0
- package/dist/rules/__tests__/create-graph-signal.test.js.map +1 -0
- package/dist/rules/__tests__/define-rule.test.d.ts +13 -0
- package/dist/rules/__tests__/define-rule.test.d.ts.map +1 -0
- package/dist/rules/__tests__/define-rule.test.js +102 -0
- package/dist/rules/__tests__/define-rule.test.js.map +1 -0
- package/dist/rules/__tests__/fingerprint-golden.test.d.ts +21 -0
- package/dist/rules/__tests__/fingerprint-golden.test.d.ts.map +1 -0
- package/dist/rules/__tests__/fingerprint-golden.test.js +69 -0
- package/dist/rules/__tests__/fingerprint-golden.test.js.map +1 -0
- package/dist/rules/__tests__/registry.test.d.ts +6 -0
- package/dist/rules/__tests__/registry.test.d.ts.map +1 -0
- package/dist/rules/__tests__/registry.test.js +37 -0
- package/dist/rules/__tests__/registry.test.js.map +1 -0
- package/dist/rules/__tests__/rule-behaviors.test.d.ts +9 -0
- package/dist/rules/__tests__/rule-behaviors.test.d.ts.map +1 -0
- package/dist/rules/__tests__/rule-behaviors.test.js +204 -0
- package/dist/rules/__tests__/rule-behaviors.test.js.map +1 -0
- package/dist/rules/__tests__/signal-output.snapshot.test.d.ts +11 -0
- package/dist/rules/__tests__/signal-output.snapshot.test.d.ts.map +1 -0
- package/dist/rules/__tests__/signal-output.snapshot.test.js +55 -0
- package/dist/rules/__tests__/signal-output.snapshot.test.js.map +1 -0
- package/dist/rules/_approximation.d.ts +23 -0
- package/dist/rules/_approximation.d.ts.map +1 -0
- package/dist/rules/_approximation.js +28 -0
- package/dist/rules/_approximation.js.map +1 -0
- package/dist/rules/_entry-points.d.ts +27 -0
- package/dist/rules/_entry-points.d.ts.map +1 -0
- package/dist/rules/_entry-points.js +81 -0
- package/dist/rules/_entry-points.js.map +1 -0
- package/dist/rules/_severity-override.d.ts +32 -0
- package/dist/rules/_severity-override.d.ts.map +1 -0
- package/dist/rules/_severity-override.js +33 -0
- package/dist/rules/_severity-override.js.map +1 -0
- package/dist/rules/always-throws-branch.d.ts +26 -0
- package/dist/rules/always-throws-branch.d.ts.map +1 -0
- package/dist/rules/always-throws-branch.js +66 -0
- package/dist/rules/always-throws-branch.js.map +1 -0
- package/dist/rules/create-graph-signal.d.ts +38 -0
- package/dist/rules/create-graph-signal.d.ts.map +1 -0
- package/dist/rules/create-graph-signal.js +35 -0
- package/dist/rules/create-graph-signal.js.map +1 -0
- package/dist/rules/cycle.d.ts +29 -0
- package/dist/rules/cycle.d.ts.map +1 -0
- package/dist/rules/cycle.js +166 -0
- package/dist/rules/cycle.js.map +1 -0
- package/dist/rules/cycle.memberlocations.test.d.ts +11 -0
- package/dist/rules/cycle.memberlocations.test.d.ts.map +1 -0
- package/dist/rules/cycle.memberlocations.test.js +84 -0
- package/dist/rules/cycle.memberlocations.test.js.map +1 -0
- package/dist/rules/define-rule.d.ts +67 -0
- package/dist/rules/define-rule.d.ts.map +1 -0
- package/dist/rules/define-rule.js +66 -0
- package/dist/rules/define-rule.js.map +1 -0
- package/dist/rules/duplicated-function-body.d.ts +40 -0
- package/dist/rules/duplicated-function-body.d.ts.map +1 -0
- package/dist/rules/duplicated-function-body.js +232 -0
- package/dist/rules/duplicated-function-body.js.map +1 -0
- package/dist/rules/high-blast-untested.d.ts +26 -0
- package/dist/rules/high-blast-untested.d.ts.map +1 -0
- package/dist/rules/high-blast-untested.js +82 -0
- package/dist/rules/high-blast-untested.js.map +1 -0
- package/dist/rules/large-function.d.ts +22 -0
- package/dist/rules/large-function.d.ts.map +1 -0
- package/dist/rules/large-function.js +72 -0
- package/dist/rules/large-function.js.map +1 -0
- package/dist/rules/no-side-effect-path.d.ts +31 -0
- package/dist/rules/no-side-effect-path.d.ts.map +1 -0
- package/dist/rules/no-side-effect-path.js +217 -0
- package/dist/rules/no-side-effect-path.js.map +1 -0
- package/dist/rules/orphan-subtree.d.ts +11 -0
- package/dist/rules/orphan-subtree.d.ts.map +1 -0
- package/dist/rules/orphan-subtree.js +104 -0
- package/dist/rules/orphan-subtree.js.map +1 -0
- package/dist/rules/registry.d.ts +35 -0
- package/dist/rules/registry.d.ts.map +1 -0
- package/dist/rules/registry.js +96 -0
- package/dist/rules/registry.js.map +1 -0
- package/dist/rules/test-only-reachable.d.ts +9 -0
- package/dist/rules/test-only-reachable.d.ts.map +1 -0
- package/dist/rules/test-only-reachable.js +101 -0
- package/dist/rules/test-only-reachable.js.map +1 -0
- package/dist/rules/unexpected-coupling.d.ts +29 -0
- package/dist/rules/unexpected-coupling.d.ts.map +1 -0
- package/dist/rules/unexpected-coupling.js +0 -0
- package/dist/rules/unexpected-coupling.js.map +1 -0
- package/dist/rules/wide-function.d.ts +18 -0
- package/dist/rules/wide-function.d.ts.map +1 -0
- package/dist/rules/wide-function.js +58 -0
- package/dist/rules/wide-function.js.map +1 -0
- package/dist/scope-augmentation.d.ts +58 -0
- package/dist/scope-augmentation.d.ts.map +1 -0
- package/dist/scope-augmentation.js +29 -0
- package/dist/scope-augmentation.js.map +1 -0
- package/dist/tool.d.ts +29 -0
- package/dist/tool.d.ts.map +1 -0
- package/dist/tool.js +241 -0
- package/dist/tool.js.map +1 -0
- package/dist/types.d.ts +642 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +136 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unexpected-coupling.js","sourceRoot":"","sources":["../../src/rules/unexpected-coupling.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAK9C,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;IAC/C,IAAI,EAAE,2BAA2B;IACjC,eAAe,EAAE,OAAO;IACxB,WAAW,EAAE,CAAC,iBAAiB,EAAE,KAAK,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE;QACpC,4EAA4E;QAC5E,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAElC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YACvD,oEAAoE;YACpE,yDAAyD;YACzD,oBAAoB;YACpB,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,MAAM,eAAe,GAAG,qBAAqB,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CACV,iBAAiB,CAAC,2BAA2B,EAAE,MAAM,EAAE;gBACrD,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,cAAc;gBACxB,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,qDAAqD;gBACpF,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;gBACzE,UAAU,EACR,2GAA2G;gBAC7G,QAAQ,EAAE;oBACR,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;oBAChB,eAAe;iBAChB;aACF,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC,CAAC;AAEH;;;;GAIG;AACH,SAAS,iBAAiB,CACxB,KAAoC;IAEpC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,aAAa;YAAE,SAAS,CAAC,8BAA8B;QACjF,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAkC,EAAE,CAAC;IAC9C,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAqB,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;YAAE,SAAS,CAAC,gCAAgC;QAC9E,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QAChC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC,CAAC;IAC5B,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5F,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAC/B,CAAS,EACT,CAAS,EACT,OAAgB;IAEhB,IAAI,IAAoC,CAAC;IACzC,IAAI,IAAoC,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,IAAI,GAAG,CAAC,QAAQ;gBAAE,OAAO,GAAG,CAAC;YAC3D,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ;gBAAE,IAAI,GAAG,GAAG,CAAC;QACxC,CAAC;aAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9C,IAAI,GAAG,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,IAAI,IAAI,IAAI,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAC5B,IAA4B,EAC5B,CAAS,EACT,CAAS,EACT,OAAgB;IAEhB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,eAAe,IAAI,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC;YAAE,KAAK,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gFAAgF;AAChF,SAAS,YAAY,CAAC,GAAgB,EAAE,CAAS,EAAE,CAAS,EAAE,OAAgB;IAC5E,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,GAAG,KAAK,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC;aACtB,IAAI,GAAG,KAAK,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC;QAChC,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* graph:wide-function — flag functions with too many parameters. A two-band
|
|
3
|
+
* predicate over `FunctionOccurrence.params.length` (raw catalog data — no
|
|
4
|
+
* feature column, hence no Plan C dependency).
|
|
5
|
+
*
|
|
6
|
+
* Bands (defaults from the dashboard's former Wide Functions view,
|
|
7
|
+
* `view-wide.ts`: "above 5–6 worth scrutinizing"):
|
|
8
|
+
* - `params.length <= warn` → no signal.
|
|
9
|
+
* - `(warn, error]` → base `medium`.
|
|
10
|
+
* - `> error` → base `high`.
|
|
11
|
+
*
|
|
12
|
+
* Thresholds are in-rule opinionated constants, overridable via
|
|
13
|
+
* `config.wideFunctionWarnParams` / `wideFunctionErrorParams` (Phase A). The
|
|
14
|
+
* emitted severity routes through the opt-in `applySeverityOverride` clamp
|
|
15
|
+
* (ADR-0005). Language-agnostic: every adapter emits `params`.
|
|
16
|
+
*/
|
|
17
|
+
export declare const wideFunctionRule: import("../types.js").Rule;
|
|
18
|
+
//# sourceMappingURL=wide-function.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wide-function.d.ts","sourceRoot":"","sources":["../../src/rules/wide-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAYH,eAAO,MAAM,gBAAgB,4BAkC3B,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* graph:wide-function — flag functions with too many parameters. A two-band
|
|
3
|
+
* predicate over `FunctionOccurrence.params.length` (raw catalog data — no
|
|
4
|
+
* feature column, hence no Plan C dependency).
|
|
5
|
+
*
|
|
6
|
+
* Bands (defaults from the dashboard's former Wide Functions view,
|
|
7
|
+
* `view-wide.ts`: "above 5–6 worth scrutinizing"):
|
|
8
|
+
* - `params.length <= warn` → no signal.
|
|
9
|
+
* - `(warn, error]` → base `medium`.
|
|
10
|
+
* - `> error` → base `high`.
|
|
11
|
+
*
|
|
12
|
+
* Thresholds are in-rule opinionated constants, overridable via
|
|
13
|
+
* `config.wideFunctionWarnParams` / `wideFunctionErrorParams` (Phase A). The
|
|
14
|
+
* emitted severity routes through the opt-in `applySeverityOverride` clamp
|
|
15
|
+
* (ADR-0005). Language-agnostic: every adapter emits `params`.
|
|
16
|
+
*/
|
|
17
|
+
import { createGraphSignal } from './create-graph-signal.js';
|
|
18
|
+
import { defineRule } from './define-rule.js';
|
|
19
|
+
// warn=5: `> 4 params` is a common, clean signature (e.g. a small options-ish
|
|
20
|
+
// positional set), so warning at 5 was noisy; warn at 6+, error at 8+ instead.
|
|
21
|
+
const DEFAULT_WARN_PARAMS = 5;
|
|
22
|
+
const DEFAULT_ERROR_PARAMS = 7;
|
|
23
|
+
export const wideFunctionRule = defineRule({
|
|
24
|
+
slug: 'graph:wide-function',
|
|
25
|
+
defaultSeverity: 'warning',
|
|
26
|
+
evaluate({ indexes, config }) {
|
|
27
|
+
const warn = config.wideFunctionWarnParams ?? DEFAULT_WARN_PARAMS;
|
|
28
|
+
const error = config.wideFunctionErrorParams ?? DEFAULT_ERROR_PARAMS;
|
|
29
|
+
const signals = [];
|
|
30
|
+
for (const occ of indexes.byBodyHash.values()) {
|
|
31
|
+
/* v8 ignore next */
|
|
32
|
+
if (!occ.filePath)
|
|
33
|
+
continue;
|
|
34
|
+
// Test files are not production code subject to this quality gate (same
|
|
35
|
+
// exclusion as large-function / high-blast-untested).
|
|
36
|
+
if (occ.inTestFile)
|
|
37
|
+
continue;
|
|
38
|
+
const n = occ.params.length;
|
|
39
|
+
if (n <= warn)
|
|
40
|
+
continue;
|
|
41
|
+
const base = n > error ? 'high' : 'medium';
|
|
42
|
+
signals.push(createGraphSignal('graph:wide-function', config, {
|
|
43
|
+
severity: base,
|
|
44
|
+
category: 'quality',
|
|
45
|
+
message: `${occ.simpleName} takes ${String(n)} parameters.`,
|
|
46
|
+
code: { file: occ.filePath, line: occ.line, column: occ.column },
|
|
47
|
+
suggestion: 'Group related parameters into an options object or split the function.',
|
|
48
|
+
metadata: {
|
|
49
|
+
paramCount: n,
|
|
50
|
+
params: occ.params.map((p) => p.name),
|
|
51
|
+
qualifiedName: occ.qualifiedName,
|
|
52
|
+
},
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
return signals;
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=wide-function.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wide-function.js","sourceRoot":"","sources":["../../src/rules/wide-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI9C,8EAA8E;AAC9E,+EAA+E;AAC/E,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,qBAAqB;IAC3B,eAAe,EAAE,SAAS;IAC1B,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE;QAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,sBAAsB,IAAI,mBAAmB,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,CAAC,uBAAuB,IAAI,oBAAoB,CAAC;QAErE,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,oBAAoB;YACpB,IAAI,CAAC,GAAG,CAAC,QAAQ;gBAAE,SAAS;YAC5B,wEAAwE;YACxE,sDAAsD;YACtD,IAAI,GAAG,CAAC,UAAU;gBAAE,SAAS;YAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,IAAI,IAAI;gBAAE,SAAS;YACxB,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC3C,OAAO,CAAC,IAAI,CACV,iBAAiB,CAAC,qBAAqB,EAAE,MAAM,EAAE;gBAC/C,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,GAAG,GAAG,CAAC,UAAU,UAAU,MAAM,CAAC,CAAC,CAAC,cAAc;gBAC3D,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE;gBAChE,UAAU,EAAE,wEAAwE;gBACpF,QAAQ,EAAE;oBACR,UAAU,EAAE,CAAC;oBACb,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;oBACrC,aAAa,EAAE,GAAG,CAAC,aAAa;iBACjC;aACF,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview RunScope augmentation for graph.
|
|
3
|
+
*
|
|
4
|
+
* D7 (tool subscopes via module augmentation, per the RunScope/
|
|
5
|
+
* Registry architecture): tool-specific concerns nest under the
|
|
6
|
+
* tool's name on `RunScope` and
|
|
7
|
+
* are added via TypeScript module augmentation from the tool's own
|
|
8
|
+
* package. Core never imports graph-shaped types — the layer rule
|
|
9
|
+
* stays intact (`core ← contracts ← {graph, ...}`).
|
|
10
|
+
*
|
|
11
|
+
* Two singletons used to hang off this package as module-level state:
|
|
12
|
+
*
|
|
13
|
+
* - lang-adapter `registry` — per-process language adapter registry.
|
|
14
|
+
* - rules `registry` — per-process rule registry (seeded with
|
|
15
|
+
* the built-in rules at construction).
|
|
16
|
+
*
|
|
17
|
+
* Both are now per-RunScope. The graph tool's `contributeScope` hook (in
|
|
18
|
+
* `tool.ts`) instantiates fresh registries and attaches them to
|
|
19
|
+
* `scope.graph` once per CLI invocation. Tools and library code read
|
|
20
|
+
* via `currentScope()?.graph?.{adapters,rules}`.
|
|
21
|
+
*
|
|
22
|
+
* The `graph` slot is intentionally optional and mutable (no
|
|
23
|
+
* `readonly`) on the augmented interface: the kernel doesn't construct
|
|
24
|
+
* it, and only the graph tool's `contributeScope` writes to it during
|
|
25
|
+
* scope construction. A run that doesn't load the graph tool carries
|
|
26
|
+
* no `scope.graph`, and reads return `undefined`.
|
|
27
|
+
*/
|
|
28
|
+
import type { GraphAdapterRegistry } from './lang-adapter/registry.js';
|
|
29
|
+
import type { GraphRecipeRegistry } from './recipes/registry.js';
|
|
30
|
+
import type { GraphRulesRegistry } from './rules/registry.js';
|
|
31
|
+
/**
|
|
32
|
+
* Per-RunScope graph state. Constructed by the graph tool's
|
|
33
|
+
* `contributeScope()` hook and attached to `scope.graph`.
|
|
34
|
+
*/
|
|
35
|
+
export interface GraphSubscope {
|
|
36
|
+
/** Language-adapter registry — populated when first-party graph
|
|
37
|
+
* adapter packages (graph-typescript, graph-python, graph-rust)
|
|
38
|
+
* register via the CLI's discovery walker. */
|
|
39
|
+
readonly adapters: GraphAdapterRegistry;
|
|
40
|
+
/** Rule registry — pre-seeded with the built-in rules. */
|
|
41
|
+
readonly rules: GraphRulesRegistry;
|
|
42
|
+
/** Recipe registry — pre-seeded with the built-in graph recipes. */
|
|
43
|
+
readonly recipes: GraphRecipeRegistry;
|
|
44
|
+
}
|
|
45
|
+
declare module '@opensip-cli/core' {
|
|
46
|
+
interface ScopeContribution {
|
|
47
|
+
/**
|
|
48
|
+
* Graph tool's per-run state. Returned by the graph tool's
|
|
49
|
+
* `contributeScope` hook and installed by the kernel; absent in runs
|
|
50
|
+
* where the graph tool is not registered. Consumers MUST null-check
|
|
51
|
+
* before reading. Augments `ScopeContribution`, which `ToolScope`/
|
|
52
|
+
* `RunScope` extend — so `cli.scope.graph` / `currentScope()?.graph`
|
|
53
|
+
* stay readable (audit 2026-05-29, M4).
|
|
54
|
+
*/
|
|
55
|
+
graph?: GraphSubscope;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=scope-augmentation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope-augmentation.d.ts","sourceRoot":"","sources":["../src/scope-augmentation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;mDAE+C;IAC/C,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,oEAAoE;IACpE,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;CACvC;AAED,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAU,iBAAiB;QACzB;;;;;;;WAOG;QACH,KAAK,CAAC,EAAE,aAAa,CAAC;KACvB;CACF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview RunScope augmentation for graph.
|
|
3
|
+
*
|
|
4
|
+
* D7 (tool subscopes via module augmentation, per the RunScope/
|
|
5
|
+
* Registry architecture): tool-specific concerns nest under the
|
|
6
|
+
* tool's name on `RunScope` and
|
|
7
|
+
* are added via TypeScript module augmentation from the tool's own
|
|
8
|
+
* package. Core never imports graph-shaped types — the layer rule
|
|
9
|
+
* stays intact (`core ← contracts ← {graph, ...}`).
|
|
10
|
+
*
|
|
11
|
+
* Two singletons used to hang off this package as module-level state:
|
|
12
|
+
*
|
|
13
|
+
* - lang-adapter `registry` — per-process language adapter registry.
|
|
14
|
+
* - rules `registry` — per-process rule registry (seeded with
|
|
15
|
+
* the built-in rules at construction).
|
|
16
|
+
*
|
|
17
|
+
* Both are now per-RunScope. The graph tool's `contributeScope` hook (in
|
|
18
|
+
* `tool.ts`) instantiates fresh registries and attaches them to
|
|
19
|
+
* `scope.graph` once per CLI invocation. Tools and library code read
|
|
20
|
+
* via `currentScope()?.graph?.{adapters,rules}`.
|
|
21
|
+
*
|
|
22
|
+
* The `graph` slot is intentionally optional and mutable (no
|
|
23
|
+
* `readonly`) on the augmented interface: the kernel doesn't construct
|
|
24
|
+
* it, and only the graph tool's `contributeScope` writes to it during
|
|
25
|
+
* scope construction. A run that doesn't load the graph tool carries
|
|
26
|
+
* no `scope.graph`, and reads return `undefined`.
|
|
27
|
+
*/
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=scope-augmentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope-augmentation.js","sourceRoot":"","sources":["../src/scope-augmentation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG"}
|
package/dist/tool.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* graphTool — graph as a Tool plugin.
|
|
3
|
+
*
|
|
4
|
+
* Since launch (Phase 5 — the largest migration) the Commander wiring is
|
|
5
|
+
* no longer hand-rolled: the tool exports declarative {@link CommandSpec}s
|
|
6
|
+
* (`commandSpecs`) and the host's `mountCommandSpec` mounts them
|
|
7
|
+
* (name/description/aliases, the ADR-0021 common flags, each command's
|
|
8
|
+
* options/args) and owns the parse→handler→error→exit pipeline. This file owns
|
|
9
|
+
* only the command-spec assembly + the per-run scope/report contributions; the
|
|
10
|
+
* spec modules under `cli/graph/` own the option declarations and handler bodies.
|
|
11
|
+
*
|
|
12
|
+
* Per spec §10A AC-2 / AC-1: this module does NOT import from opensip-cli. It
|
|
13
|
+
* receives the ToolCliContext interface from @opensip-cli/core.
|
|
14
|
+
*
|
|
15
|
+
* History: v0.2 originally registered three subcommands (`graph`,
|
|
16
|
+
* `graph-orphans`, `graph-entry-points`). The orphans and entry-points
|
|
17
|
+
* subcommands were folded into the unified `graph` output — all three data slices
|
|
18
|
+
* (rules, entry points, catalog summary) are reachable via the single `graph`
|
|
19
|
+
* invocation.
|
|
20
|
+
*/
|
|
21
|
+
import './scope-augmentation.js';
|
|
22
|
+
import type { Tool } from '@opensip-cli/core';
|
|
23
|
+
/**
|
|
24
|
+
* Per-tool contract version (ADR-0047). Exported from the public barrel.
|
|
25
|
+
*/
|
|
26
|
+
export declare const GRAPH_CONTRACT_VERSION = "1.0.0";
|
|
27
|
+
export declare const GRAPH_STABLE_ID = "3873f1c2-02a9-4719-930a-bca74b62b706";
|
|
28
|
+
export declare const graphTool: Tool;
|
|
29
|
+
//# sourceMappingURL=tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;GAmBG;AA+BH,OAAO,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAIV,IAAI,EAIL,MAAM,mBAAmB,CAAC;AAyK3B;;GAEG;AACH,eAAO,MAAM,sBAAsB,UAAU,CAAC;AAE9C,eAAO,MAAM,eAAe,yCAAyC,CAAC;AAEtE,eAAO,MAAM,SAAS,EAAE,IAgDvB,CAAC"}
|
package/dist/tool.js
ADDED
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
// @fitness-ignore-file module-coupling-fan-out -- composition root: the graph Tool descriptor wires every subcommand spec, the scope contribution, and the adapter/rule/recipe registries; high intra-project fan-out is inherent to a tool-wiring file (cf. the index.ts / code-paths.ts barrels that suppress the same check).
|
|
2
|
+
/**
|
|
3
|
+
* graphTool — graph as a Tool plugin.
|
|
4
|
+
*
|
|
5
|
+
* Since launch (Phase 5 — the largest migration) the Commander wiring is
|
|
6
|
+
* no longer hand-rolled: the tool exports declarative {@link CommandSpec}s
|
|
7
|
+
* (`commandSpecs`) and the host's `mountCommandSpec` mounts them
|
|
8
|
+
* (name/description/aliases, the ADR-0021 common flags, each command's
|
|
9
|
+
* options/args) and owns the parse→handler→error→exit pipeline. This file owns
|
|
10
|
+
* only the command-spec assembly + the per-run scope/report contributions; the
|
|
11
|
+
* spec modules under `cli/graph/` own the option declarations and handler bodies.
|
|
12
|
+
*
|
|
13
|
+
* Per spec §10A AC-2 / AC-1: this module does NOT import from opensip-cli. It
|
|
14
|
+
* receives the ToolCliContext interface from @opensip-cli/core.
|
|
15
|
+
*
|
|
16
|
+
* History: v0.2 originally registered three subcommands (`graph`,
|
|
17
|
+
* `graph-orphans`, `graph-entry-points`). The orphans and entry-points
|
|
18
|
+
* subcommands were folded into the unified `graph` output — all three data slices
|
|
19
|
+
* (rules, entry points, catalog summary) are reachable via the single `graph`
|
|
20
|
+
* invocation.
|
|
21
|
+
*/
|
|
22
|
+
import { logger, readPackageVersion } from '@opensip-cli/core';
|
|
23
|
+
// PR 3 of plan 2026-05-23-plan-graph-adapter-package-split.md: the
|
|
24
|
+
// engine no longer hosts adapter source. First-party adapters live in
|
|
25
|
+
// their own packages and register via the CLI's discovery walker
|
|
26
|
+
// (register-graph-adapters.ts). The historical engine-side bootstrap is
|
|
27
|
+
// gone.
|
|
28
|
+
import { graphFingerprintStrategy } from './baseline-strategy.js';
|
|
29
|
+
import { graphBaselineExportCommandSpec, graphCatalogExportCommandSpec, graphEquivalenceCheckCommandSpec, graphLookupCommandSpec, graphRecipesCommandSpec, graphSarifExportCommandSpec, graphShardWorkerCommandSpec, graphSymbolIndexCommandSpec, } from './cli/graph/graph-aux-command-specs.js';
|
|
30
|
+
import { graphCommandSpec } from './cli/graph/graph-command-spec.js';
|
|
31
|
+
import { graphConfigDeclaration } from './cli/graph-config-schema.js';
|
|
32
|
+
import { graphRunWorkerCommandSpec } from './cli/graph-worker.js';
|
|
33
|
+
import { buildGraphRecipeCatalog, buildGraphRuleCatalog } from './cli/report-data.js';
|
|
34
|
+
import { createAdapterRegistry, currentAdapterRegistry } from './lang-adapter/registry.js';
|
|
35
|
+
import { CatalogRepo } from './persistence/catalog-repo.js';
|
|
36
|
+
import { graphReplayFromSession } from './persistence/session-replay.js';
|
|
37
|
+
import { createRecipeRegistry } from './recipes/registry.js';
|
|
38
|
+
import { createRulesRegistry } from './rules/registry.js';
|
|
39
|
+
// Side-effect import: ensures the RunScope.graph augmentation is
|
|
40
|
+
// loaded so `scope.graph` is correctly-typed here.
|
|
41
|
+
import './scope-augmentation.js';
|
|
42
|
+
// =============================================================================
|
|
43
|
+
// COMMAND DESCRIPTORS — used by --help listings and conflict detection.
|
|
44
|
+
// =============================================================================
|
|
45
|
+
const GRAPH = {
|
|
46
|
+
name: 'graph',
|
|
47
|
+
description: 'Run static call-graph analysis (rules, entry points, catalog summary in one report)',
|
|
48
|
+
};
|
|
49
|
+
const GRAPH_LOOKUP = {
|
|
50
|
+
name: 'graph-lookup',
|
|
51
|
+
description: 'Look up function occurrences by simple name from the persisted catalog',
|
|
52
|
+
};
|
|
53
|
+
const GRAPH_SYMBOL_INDEX = {
|
|
54
|
+
name: 'graph-symbol-index',
|
|
55
|
+
description: 'Emit a symbolindex.json artifact (name→file:line and file→names) from the persisted catalog',
|
|
56
|
+
};
|
|
57
|
+
const GRAPH_BASELINE_EXPORT = {
|
|
58
|
+
name: 'graph-baseline-export',
|
|
59
|
+
description: 'Export the graph gate baseline (JSON) from the datastore to a file',
|
|
60
|
+
};
|
|
61
|
+
const GRAPH_SHARD_WORKER = {
|
|
62
|
+
name: 'graph-shard-worker',
|
|
63
|
+
description: '[internal] Build one shard from a spec file and emit a ShardBuildResult JSON (spawned by the sharded build)',
|
|
64
|
+
};
|
|
65
|
+
const GRAPH_EQUIVALENCE_CHECK = {
|
|
66
|
+
name: 'graph-equivalence-check',
|
|
67
|
+
description: '[internal] Verify the sharded build is byte-equivalent to the exact build on a real repo (gates production edge divergence against a committed budget)',
|
|
68
|
+
};
|
|
69
|
+
const GRAPH_RUN_WORKER = {
|
|
70
|
+
name: 'graph-run-worker',
|
|
71
|
+
description: '[internal] Run the graph build headless and stream progress + result over IPC (forked by the live view)',
|
|
72
|
+
};
|
|
73
|
+
const GRAPH_CATALOG_EXPORT = {
|
|
74
|
+
name: 'catalog-export',
|
|
75
|
+
description: 'Run graph analysis and write the CatalogExport JSON document (symbols + edges + provenance) to a file',
|
|
76
|
+
};
|
|
77
|
+
const GRAPH_SARIF_EXPORT = {
|
|
78
|
+
name: 'sarif-export',
|
|
79
|
+
description: 'Run graph analysis and write OpenSIP-convention SARIF v2.1.0 findings to a file',
|
|
80
|
+
};
|
|
81
|
+
const GRAPH_RECIPES = {
|
|
82
|
+
name: 'graph-recipes',
|
|
83
|
+
description: 'List available graph recipes',
|
|
84
|
+
};
|
|
85
|
+
// =============================================================================
|
|
86
|
+
// COMMAND-SPEC ASSEMBLY
|
|
87
|
+
// =============================================================================
|
|
88
|
+
/**
|
|
89
|
+
* graph's declarative command surface (launch Phase 5). The host mounts
|
|
90
|
+
* each spec via `mountCommandSpec`; graph no longer touches Commander. Order is
|
|
91
|
+
* preserved from the former `register()` mount order (graph, graph-lookup,
|
|
92
|
+
* graph-shard-worker, graph-symbol-index, graph-baseline-export, catalog-export,
|
|
93
|
+
* sarif-export, graph-recipes). The primary `graph` spec sets its own live-view
|
|
94
|
+
* renderer up lazily inside its handler's interactive branch (no mount-time
|
|
95
|
+
* `register()` hook in the spec-mounted world).
|
|
96
|
+
*/
|
|
97
|
+
const graphCommandSpecs = [
|
|
98
|
+
graphCommandSpec,
|
|
99
|
+
graphLookupCommandSpec,
|
|
100
|
+
graphShardWorkerCommandSpec,
|
|
101
|
+
graphRunWorkerCommandSpec,
|
|
102
|
+
graphSymbolIndexCommandSpec,
|
|
103
|
+
graphBaselineExportCommandSpec,
|
|
104
|
+
graphCatalogExportCommandSpec,
|
|
105
|
+
graphSarifExportCommandSpec,
|
|
106
|
+
graphRecipesCommandSpec,
|
|
107
|
+
graphEquivalenceCheckCommandSpec,
|
|
108
|
+
];
|
|
109
|
+
/**
|
|
110
|
+
* The graph tool's REAL registrar for its `graph-adapter` capability domain
|
|
111
|
+
* (§5.3 / Phase 4). The host registers the domain from graph's manifest with a
|
|
112
|
+
* deferred placeholder, then swaps in this registrar once graph's module is
|
|
113
|
+
* loaded. A routed contribution (already shape-checked against the domain's
|
|
114
|
+
* `requiredKeys: ['id']` schema by the host) is registered into THIS run's
|
|
115
|
+
* scope-owned adapter registry — graph owns the registration semantics, the
|
|
116
|
+
* host only routes.
|
|
117
|
+
*/
|
|
118
|
+
const registerGraphAdapter = (contribution) => {
|
|
119
|
+
currentAdapterRegistry().register(contribution);
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Per-run subscope contribution (D7). Called by the CLI's pre-action-hook
|
|
123
|
+
* after constructing the scope and before entering it; the kernel installs
|
|
124
|
+
* the returned `graph` slot. Fresh adapter + rule registries per run so
|
|
125
|
+
* concurrent scopes carry independent graph state.
|
|
126
|
+
*
|
|
127
|
+
* Adapter seeding: the fresh adapter registry starts EMPTY. The generic
|
|
128
|
+
* capability loader (§5.3/§4.5) discovers `graph-adapter` packages per run and
|
|
129
|
+
* routes each through {@link registerGraphAdapter} into this scope's registry
|
|
130
|
+
* (driven by the CLI pre-action hook), so `pickAdapter` resolves them — no
|
|
131
|
+
* process-global discovered-adapters holder.
|
|
132
|
+
*/
|
|
133
|
+
function contributeScope() {
|
|
134
|
+
return {
|
|
135
|
+
graph: {
|
|
136
|
+
adapters: createAdapterRegistry(),
|
|
137
|
+
rules: createRulesRegistry(),
|
|
138
|
+
recipes: createRecipeRegistry(),
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Dashboard-data contribution (audit 2026-05-29, L2). Graph owns its
|
|
144
|
+
* Code Paths panel data: it returns the graph catalog (via its own
|
|
145
|
+
* `CatalogRepo`) under the `graphCatalog` key that `generateDashboardHtml`
|
|
146
|
+
* consumes. Best-effort — a missing/empty catalog yields no contribution
|
|
147
|
+
* and the panel renders a no-data state. This is what lets the CLI
|
|
148
|
+
* compose the cross-tool dashboard without fitness reaching into graph.
|
|
149
|
+
*
|
|
150
|
+
* The returned `graphCatalog.features` (Plan C) is populated when the
|
|
151
|
+
* producing `graph` run requested the dashboard columns
|
|
152
|
+
* (`['blast','scc','packageCoupling']`, see `executeGraph`); it rides on the
|
|
153
|
+
* loaded contract for free via `loadCatalogContract`. This stays a pure read
|
|
154
|
+
* — no on-demand engine compute at report-compose time (ADR-0006). When a
|
|
155
|
+
* catalog was produced by a non-dashboard run, `features` is absent and the
|
|
156
|
+
* panel renders a no-data state.
|
|
157
|
+
*/
|
|
158
|
+
function collectReportData(scope) {
|
|
159
|
+
// Rule + recipe catalogs are cheap, scope-only reads (no I/O). A run
|
|
160
|
+
// without the graph subscope yields empty arrays, not a throw. These use
|
|
161
|
+
// DISTINCT keys from fitness's `checkCatalog`/`recipeCatalog` (which the
|
|
162
|
+
// CLI merges via Object.assign) so graph never clobbers fitness.
|
|
163
|
+
const graphRuleCatalog = buildGraphRuleCatalog(scope);
|
|
164
|
+
const graphRecipeCatalog = buildGraphRecipeCatalog(scope);
|
|
165
|
+
const datastore = scope.datastore();
|
|
166
|
+
if (!datastore)
|
|
167
|
+
return { graphRuleCatalog, graphRecipeCatalog };
|
|
168
|
+
try {
|
|
169
|
+
return {
|
|
170
|
+
graphCatalog: new CatalogRepo(datastore).loadCatalogContract(),
|
|
171
|
+
graphRuleCatalog,
|
|
172
|
+
graphRecipeCatalog,
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
catch (error) {
|
|
176
|
+
// No catalog (or an unreadable one) → the panel renders its no-data
|
|
177
|
+
// state. Log at debug so the empty-result path is traceable rather
|
|
178
|
+
// than silent.
|
|
179
|
+
logger.debug({
|
|
180
|
+
evt: 'graph.dashboard.catalog_load_failed',
|
|
181
|
+
module: 'graph:tool',
|
|
182
|
+
err: error instanceof Error ? error.message : String(error),
|
|
183
|
+
});
|
|
184
|
+
return { graphRuleCatalog, graphRecipeCatalog };
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Per-tool contract version (ADR-0047). Exported from the public barrel.
|
|
189
|
+
*/
|
|
190
|
+
export const GRAPH_CONTRACT_VERSION = '1.0.0';
|
|
191
|
+
export const GRAPH_STABLE_ID = '3873f1c2-02a9-4719-930a-bca74b62b706';
|
|
192
|
+
export const graphTool = {
|
|
193
|
+
metadata: {
|
|
194
|
+
id: GRAPH_STABLE_ID, // stable UUID (per ADR-0048; matches Checks `id` naming)
|
|
195
|
+
name: 'graph', // human key (previously the value in `id`)
|
|
196
|
+
version: readPackageVersion(import.meta.url),
|
|
197
|
+
description: 'Static call-graph + dead-end analysis',
|
|
198
|
+
},
|
|
199
|
+
commands: [
|
|
200
|
+
GRAPH,
|
|
201
|
+
GRAPH_LOOKUP,
|
|
202
|
+
GRAPH_SYMBOL_INDEX,
|
|
203
|
+
GRAPH_BASELINE_EXPORT,
|
|
204
|
+
GRAPH_SHARD_WORKER,
|
|
205
|
+
GRAPH_EQUIVALENCE_CHECK,
|
|
206
|
+
GRAPH_RUN_WORKER,
|
|
207
|
+
GRAPH_CATALOG_EXPORT,
|
|
208
|
+
GRAPH_SARIF_EXPORT,
|
|
209
|
+
GRAPH_RECIPES,
|
|
210
|
+
],
|
|
211
|
+
// Launch Phase 5: graph declares its command surface; the host mounts
|
|
212
|
+
// each spec via mountCommandSpec. The deprecated `register()` fallback is gone
|
|
213
|
+
// — graph no longer touches Commander.
|
|
214
|
+
commandSpecs: graphCommandSpecs,
|
|
215
|
+
contributeScope,
|
|
216
|
+
collectReportData,
|
|
217
|
+
sessionReplay: {
|
|
218
|
+
tool: 'graph',
|
|
219
|
+
replaySession: graphReplayFromSession,
|
|
220
|
+
},
|
|
221
|
+
// ADR-0023 Phase 4: graph contributes its namespaced `graph:` Zod schema so
|
|
222
|
+
// the host composes + strict-validates the whole config document before
|
|
223
|
+
// dispatch. The schema-bearing `ToolConfigDeclaration` narrows to the
|
|
224
|
+
// kernel-side `ToolConfigContribution` carrier (core carries no Zod).
|
|
225
|
+
config: graphConfigDeclaration,
|
|
226
|
+
// §5.3 Phase 4: graph owns the `graph-adapter` capability domain (declared in
|
|
227
|
+
// its manifest). It supplies the REAL registrar so the host can replace the
|
|
228
|
+
// manifest-time deferred placeholder once graph's module loads.
|
|
229
|
+
capabilityRegistrars: { 'graph-adapter': registerGraphAdapter },
|
|
230
|
+
// ADR-0036: graph's byte-preserved baseline identity (ruleId|filePath|line|col),
|
|
231
|
+
// read by the host baseline/ratchet seams when graph stamps its gate envelope.
|
|
232
|
+
fingerprintStrategy: graphFingerprintStrategy,
|
|
233
|
+
// ADR-0047: per-tool contract version for graph's domain surface (rules, catalog,
|
|
234
|
+
// execution model, adapter contract, etc.). Independent of core
|
|
235
|
+
// TOOL_CONTRACT_VERSION. Declared under extensionPoints for discoverability
|
|
236
|
+
// by hosts, agent-catalog, and third-party graph packs.
|
|
237
|
+
extensionPoints: {
|
|
238
|
+
graphContractVersion: GRAPH_CONTRACT_VERSION,
|
|
239
|
+
},
|
|
240
|
+
};
|
|
241
|
+
//# sourceMappingURL=tool.js.map
|
package/dist/tool.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"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"}
|