@saptools/service-flow 0.1.69 → 0.1.70

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.
Files changed (120) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +2 -2
  3. package/TECHNICAL-NOTE.md +4 -0
  4. package/dist/{chunk-3N3B5KHV.js → chunk-GSLFY6J2.js} +78 -78
  5. package/dist/chunk-GSLFY6J2.js.map +1 -0
  6. package/dist/cli.js +19 -19
  7. package/dist/cli.js.map +1 -1
  8. package/dist/index.js +1 -1
  9. package/package.json +1 -1
  10. package/src/cli/{002-doctor-lifecycle.ts → doctor-lifecycle.ts} +1 -1
  11. package/src/cli/{001-doctor-projection.ts → doctor-projection.ts} +1 -1
  12. package/src/cli/doctor.ts +5 -5
  13. package/src/cli.ts +5 -5
  14. package/src/db/{009-binding-fact-semantics.ts → binding-fact-semantics.ts} +2 -2
  15. package/src/db/{000-call-fact-repository.ts → call-fact-repository.ts} +6 -6
  16. package/src/db/{003-current-fact-semantics.ts → current-fact-semantics.ts} +4 -4
  17. package/src/db/{001-fact-lifecycle.ts → fact-lifecycle.ts} +3 -3
  18. package/src/db/{007-package-fact-semantics.ts → package-fact-semantics.ts} +6 -6
  19. package/src/db/{010-package-symbol-surface-semantics.ts → package-symbol-surface-semantics.ts} +2 -2
  20. package/src/db/{004-package-target-invalidation.ts → package-target-invalidation.ts} +1 -1
  21. package/src/db/{008-relative-fact-semantics.ts → relative-fact-semantics.ts} +3 -3
  22. package/src/db/{006-relative-symbol-resolution.ts → relative-symbol-resolution.ts} +1 -1
  23. package/src/db/repositories.ts +3 -3
  24. package/src/db/{011-symbol-call-semantics.ts → symbol-call-semantics.ts} +1 -1
  25. package/src/index.ts +3 -3
  26. package/src/indexer/repository-indexer.ts +5 -5
  27. package/src/indexer/workspace-indexer.ts +3 -3
  28. package/src/linker/{007-call-edge-insertion.ts → call-edge-insertion.ts} +2 -2
  29. package/src/linker/{002-call-evidence.ts → call-evidence.ts} +2 -2
  30. package/src/linker/cross-repo-linker.ts +5 -5
  31. package/src/linker/dynamic-edge-resolver.ts +1 -1
  32. package/src/linker/{004-event-subscription-handler-linker.ts → event-subscription-handler-linker.ts} +1 -1
  33. package/src/linker/external-http-target.ts +1 -1
  34. package/src/linker/helper-package-linker.ts +1 -1
  35. package/src/linker/{000-implementation-candidates.ts → implementation-candidates.ts} +1 -1
  36. package/src/linker/{001-implementation-evidence-projection.ts → implementation-evidence-projection.ts} +1 -1
  37. package/src/linker/odata-path-normalizer.ts +1 -1
  38. package/src/linker/{005-odata-path-structure.ts → odata-path-structure.ts} +1 -1
  39. package/src/linker/{003-package-import-symbol-resolver.ts → package-import-symbol-resolver.ts} +3 -3
  40. package/src/linker/service-resolver.ts +2 -2
  41. package/src/output/{001-compact-json-output.ts → compact-json-output.ts} +1 -1
  42. package/src/parsers/{006-binding-identity.ts → binding-identity.ts} +3 -3
  43. package/src/parsers/{011-binding-lexical-scope.ts → binding-lexical-scope.ts} +1 -1
  44. package/src/parsers/{021-binding-visibility.ts → binding-visibility.ts} +1 -1
  45. package/src/parsers/{005-event-subscription-facts.ts → event-subscription-facts.ts} +2 -2
  46. package/src/parsers/{016-local-symbol-reference.ts → local-symbol-reference.ts} +2 -2
  47. package/src/parsers/operation-path-analysis.ts +1 -1
  48. package/src/parsers/{023-outbound-call-classifier.ts → outbound-call-classifier.ts} +3 -3
  49. package/src/parsers/outbound-call-parser.ts +2 -2
  50. package/src/parsers/{022-outbound-expression-analysis.ts → outbound-expression-analysis.ts} +2 -2
  51. package/src/parsers/{018-package-commonjs-syntax.ts → package-commonjs-syntax.ts} +1 -1
  52. package/src/parsers/{012-package-fact-contract.ts → package-fact-contract.ts} +3 -3
  53. package/src/parsers/{010-package-public-surface-analysis.ts → package-public-surface-analysis.ts} +2 -2
  54. package/src/parsers/{003-package-public-surface.ts → package-public-surface.ts} +3 -3
  55. package/src/parsers/{008-package-surface-publication.ts → package-surface-publication.ts} +1 -1
  56. package/src/parsers/{001-query-entity-resolution.ts → query-entity-resolution.ts} +1 -1
  57. package/src/parsers/{015-service-binding-collector.ts → service-binding-collector.ts} +3 -3
  58. package/src/parsers/{014-service-binding-helper-flow.ts → service-binding-helper-flow.ts} +2 -2
  59. package/src/parsers/service-binding-parser-helpers.ts +1 -1
  60. package/src/parsers/service-binding-parser.ts +2 -2
  61. package/src/parsers/{007-source-fact-reconciliation.ts → source-fact-reconciliation.ts} +3 -3
  62. package/src/parsers/{020-stable-local-value.ts → stable-local-value.ts} +2 -2
  63. package/src/parsers/{009-symbol-call-facts.ts → symbol-call-facts.ts} +3 -3
  64. package/src/parsers/{017-symbol-derived-contexts.ts → symbol-derived-contexts.ts} +2 -2
  65. package/src/parsers/symbol-parser.ts +6 -6
  66. package/src/trace/{021-compact-decision-normalization.ts → compact-decision-normalization.ts} +2 -2
  67. package/src/trace/{020-compact-field-projection.ts → compact-field-projection.ts} +3 -3
  68. package/src/trace/{024-compact-observation-decision.ts → compact-observation-decision.ts} +3 -3
  69. package/src/trace/{016-compact-projector.ts → compact-projector.ts} +4 -4
  70. package/src/trace/{018-compact-trace.ts → compact-trace.ts} +3 -3
  71. package/src/trace/{006-contextual-projection.ts → contextual-projection.ts} +1 -1
  72. package/src/trace/{008-contextual-runtime-state.ts → contextual-runtime-state.ts} +1 -1
  73. package/src/trace/{001-dynamic-identity.ts → dynamic-identity.ts} +2 -2
  74. package/src/trace/{003-dynamic-references.ts → dynamic-references.ts} +2 -2
  75. package/src/trace/dynamic-targets.ts +6 -6
  76. package/src/trace/{030-event-runtime-resolution.ts → event-runtime-resolution.ts} +2 -2
  77. package/src/trace/{011-event-subscriber-traversal.ts → event-subscriber-traversal.ts} +1 -1
  78. package/src/trace/evidence.ts +2 -2
  79. package/src/trace/implementation-hints.ts +2 -2
  80. package/src/trace/{005-implementation-selection.ts → implementation-selection.ts} +2 -2
  81. package/src/trace/{031-local-call-expansion.ts → local-call-expansion.ts} +3 -3
  82. package/src/trace/{009-selected-handler-provenance.ts → selected-handler-provenance.ts} +1 -1
  83. package/src/trace/selectors.ts +1 -1
  84. package/src/trace/{017-trace-context.ts → trace-context.ts} +2 -2
  85. package/src/trace/{015-trace-edge-recorder.ts → trace-edge-recorder.ts} +2 -2
  86. package/src/trace/{019-trace-edge-semantics.ts → trace-edge-semantics.ts} +3 -3
  87. package/src/trace/trace-engine.ts +10 -10
  88. package/src/trace/{022-trace-fact-preflight.ts → trace-fact-preflight.ts} +2 -2
  89. package/src/trace/{025-trace-implementation-scope.ts → trace-implementation-scope.ts} +1 -1
  90. package/src/trace/{028-trace-operation-execution.ts → trace-operation-execution.ts} +10 -10
  91. package/src/trace/{013-trace-root-scopes.ts → trace-root-scopes.ts} +3 -3
  92. package/src/trace/{027-trace-scope-execution.ts → trace-scope-execution.ts} +14 -14
  93. package/src/trace/{029-trace-start-implementation.ts → trace-start-implementation.ts} +7 -7
  94. package/src/trace/{026-trace-start-scope.ts → trace-start-scope.ts} +5 -5
  95. package/src/trace/{010-traversal-scope.ts → traversal-scope.ts} +1 -1
  96. package/dist/chunk-3N3B5KHV.js.map +0 -1
  97. /package/src/cli/{000-clean.ts → clean.ts} +0 -0
  98. /package/src/cli/{003-doctor-package-resolution.ts → doctor-package-resolution.ts} +0 -0
  99. /package/src/cli/{001-index-summary.ts → index-summary.ts} +0 -0
  100. /package/src/db/{014-binding-helper-provenance.ts → binding-helper-provenance.ts} +0 -0
  101. /package/src/db/{012-binding-reference-proof.ts → binding-reference-proof.ts} +0 -0
  102. /package/src/db/{002-fact-json-inventory.ts → fact-json-inventory.ts} +0 -0
  103. /package/src/db/{013-index-publication-failure.ts → index-publication-failure.ts} +0 -0
  104. /package/src/db/{005-schema-structure.ts → schema-structure.ts} +0 -0
  105. /package/src/linker/{006-event-template-link.ts → event-template-link.ts} +0 -0
  106. /package/src/output/{000-stdout-policy.ts → stdout-policy.ts} +0 -0
  107. /package/src/parsers/{019-binding-assignment-targets.ts → binding-assignment-targets.ts} +0 -0
  108. /package/src/parsers/{000-direct-query-execution.ts → direct-query-execution.ts} +0 -0
  109. /package/src/parsers/{013-executable-body-eligibility.ts → executable-body-eligibility.ts} +0 -0
  110. /package/src/parsers/{004-fact-identity.ts → fact-identity.ts} +0 -0
  111. /package/src/parsers/{002-symbol-import-bindings.ts → symbol-import-bindings.ts} +0 -0
  112. /package/src/trace/{014-compact-contract.ts → compact-contract.ts} +0 -0
  113. /package/src/trace/{004-dynamic-candidate-sources.ts → dynamic-candidate-sources.ts} +0 -0
  114. /package/src/trace/{000-dynamic-target-types.ts → dynamic-target-types.ts} +0 -0
  115. /package/src/trace/{007-implementation-start-diagnostic.ts → implementation-start-diagnostic.ts} +0 -0
  116. /package/src/trace/{023-nested-event-scopes.ts → nested-event-scopes.ts} +0 -0
  117. /package/src/trace/{002-trace-diagnostics.ts → trace-diagnostics.ts} +0 -0
  118. /package/src/trace/{012-trace-graph-lookups.ts → trace-graph-lookups.ts} +0 -0
  119. /package/src/utils/{000-bounded-projection.ts → bounded-projection.ts} +0 -0
  120. /package/src/utils/{001-placeholders.ts → placeholders.ts} +0 -0
package/dist/cli.js CHANGED
@@ -48,7 +48,7 @@ import {
48
48
  stableLocalValueReference,
49
49
  symbolImportReference,
50
50
  trace
51
- } from "./chunk-3N3B5KHV.js";
51
+ } from "./chunk-GSLFY6J2.js";
52
52
 
53
53
  // src/cli.ts
54
54
  import { Command, Option } from "commander";
@@ -614,10 +614,10 @@ import fs4 from "fs/promises";
614
614
  import path4 from "path";
615
615
  import ts8 from "typescript";
616
616
 
617
- // src/parsers/005-event-subscription-facts.ts
617
+ // src/parsers/event-subscription-facts.ts
618
618
  import ts2 from "typescript";
619
619
 
620
- // src/parsers/016-local-symbol-reference.ts
620
+ // src/parsers/local-symbol-reference.ts
621
621
  import ts from "typescript";
622
622
  function functionTargetNode(declaration) {
623
623
  const parent = declaration.parent;
@@ -752,7 +752,7 @@ function localSymbolTarget(expression, source, symbols) {
752
752
  return declaration ? exactPropertyTarget(expression, declaration, symbols, source) : void 0;
753
753
  }
754
754
 
755
- // src/parsers/005-event-subscription-facts.ts
755
+ // src/parsers/event-subscription-facts.ts
756
756
  function lineOf(source, node) {
757
757
  return source.getLineAndCharacterOfPosition(node.getStart(source)).line + 1;
758
758
  }
@@ -935,10 +935,10 @@ function reconcileEventSubscriptions(source, classifications, symbols, calls) {
935
935
  };
936
936
  }
937
937
 
938
- // src/parsers/007-source-fact-reconciliation.ts
938
+ // src/parsers/source-fact-reconciliation.ts
939
939
  import "typescript";
940
940
 
941
- // src/parsers/006-binding-identity.ts
941
+ // src/parsers/binding-identity.ts
942
942
  import ts3 from "typescript";
943
943
  var scopeChainCap = 16;
944
944
  function matchFactsToSites(index, facts) {
@@ -1186,7 +1186,7 @@ function reconcileBindingAndCallIdentity(source, bindingFacts, callFacts, symbol
1186
1186
  return { bindings: bindings.map((binding) => binding.fact), calls };
1187
1187
  }
1188
1188
 
1189
- // src/parsers/007-source-fact-reconciliation.ts
1189
+ // src/parsers/source-fact-reconciliation.ts
1190
1190
  function callKey(call) {
1191
1191
  return `${call.callType}:${call.callSiteStartOffset}:${call.callSiteEndOffset}`;
1192
1192
  }
@@ -1253,7 +1253,7 @@ function reconcileSourceFacts(source, classifications, bindings, outboundCalls,
1253
1253
  };
1254
1254
  }
1255
1255
 
1256
- // src/parsers/009-symbol-call-facts.ts
1256
+ // src/parsers/symbol-call-facts.ts
1257
1257
  import ts5 from "typescript";
1258
1258
  var commonTerminalMembers = /* @__PURE__ */ new Set([
1259
1259
  "push",
@@ -1629,7 +1629,7 @@ function collectSymbolCallFacts(collection) {
1629
1629
  return calls;
1630
1630
  }
1631
1631
 
1632
- // src/parsers/013-executable-body-eligibility.ts
1632
+ // src/parsers/executable-body-eligibility.ts
1633
1633
  import ts6 from "typescript";
1634
1634
  function hasModifier(node, kind) {
1635
1635
  return ts6.canHaveModifiers(node) && Boolean(ts6.getModifiers(node)?.some((item) => item.kind === kind));
@@ -1646,7 +1646,7 @@ function executableBodyEligibility(node, source) {
1646
1646
  };
1647
1647
  }
1648
1648
 
1649
- // src/parsers/017-symbol-derived-contexts.ts
1649
+ // src/parsers/symbol-derived-contexts.ts
1650
1650
  import ts7 from "typescript";
1651
1651
  var builtInConstructors = /* @__PURE__ */ new Set([
1652
1652
  "Set",
@@ -2314,7 +2314,7 @@ async function parseExecutableSymbols(repoPath, filePath, context, preparedOutbo
2314
2314
  };
2315
2315
  }
2316
2316
 
2317
- // src/parsers/008-package-surface-publication.ts
2317
+ // src/parsers/package-surface-publication.ts
2318
2318
  function symbolIdentity(symbol) {
2319
2319
  return [
2320
2320
  symbol.sourceFile,
@@ -2373,7 +2373,7 @@ function sha256Text(text) {
2373
2373
  return createHash("sha256").update(text).digest("hex");
2374
2374
  }
2375
2375
 
2376
- // src/db/004-package-target-invalidation.ts
2376
+ // src/db/package-target-invalidation.ts
2377
2377
  var resolverKeys = /* @__PURE__ */ new Set([
2378
2378
  "candidateStrategy",
2379
2379
  "candidateCount",
@@ -3017,7 +3017,7 @@ function indexSummary(repoCount, state) {
3017
3017
  };
3018
3018
  }
3019
3019
 
3020
- // src/cli/001-doctor-projection.ts
3020
+ // src/cli/doctor-projection.ts
3021
3021
  var boundedDoctorArrayKeys = /* @__PURE__ */ new Set([
3022
3022
  "candidates",
3023
3023
  "candidateScores",
@@ -3132,7 +3132,7 @@ function upperFirst(value) {
3132
3132
  return value ? `${value[0]?.toUpperCase() ?? ""}${value.slice(1)}` : value;
3133
3133
  }
3134
3134
 
3135
- // src/cli/002-doctor-lifecycle.ts
3135
+ // src/cli/doctor-lifecycle.ts
3136
3136
  function linkUpgradeWarnings(db, workspaceId) {
3137
3137
  const lifecycle = factLifecycleDiagnostic(db, workspaceId);
3138
3138
  if (lifecycle) return [lifecycle];
@@ -3186,7 +3186,7 @@ function analyzerVersionDiagnostics(db, strict, workspaceId) {
3186
3186
  return [{ severity: "warning", code: "reindex_required_after_analyzer_upgrade", message: "Repository facts were produced by an older or unknown analyzer; run service-flow index --force before relink to apply current parser semantics.", scope: "workspace", affectedRepositoryCount: rows.length, currentAnalyzerVersion: ANALYZER_VERSION, repositories: rows, remediation: "service-flow index --force && service-flow link" }];
3187
3187
  }
3188
3188
 
3189
- // src/cli/003-doctor-package-resolution.ts
3189
+ // src/cli/doctor-package-resolution.ts
3190
3190
  function pendingPredicate(alias) {
3191
3191
  return `${alias}.status='unresolved'
3192
3192
  AND ${alias}.callee_symbol_id IS NULL
@@ -4058,7 +4058,7 @@ function renderMermaid(trace2) {
4058
4058
  `;
4059
4059
  }
4060
4060
 
4061
- // src/output/000-stdout-policy.ts
4061
+ // src/output/stdout-policy.ts
4062
4062
  var writers = /* @__PURE__ */ new WeakMap();
4063
4063
  function isRecord3(value) {
4064
4064
  return Boolean(value && typeof value === "object" && !Array.isArray(value));
@@ -4096,13 +4096,13 @@ function createStdoutWriter(stream, onUnexpectedError) {
4096
4096
  return writer;
4097
4097
  }
4098
4098
 
4099
- // src/output/001-compact-json-output.ts
4099
+ // src/output/compact-json-output.ts
4100
4100
  function renderCompactJson(value) {
4101
4101
  return `${JSON.stringify(redactValue(value))}
4102
4102
  `;
4103
4103
  }
4104
4104
 
4105
- // src/cli/000-clean.ts
4105
+ // src/cli/clean.ts
4106
4106
  import fs6 from "fs/promises";
4107
4107
  import path6 from "path";
4108
4108
  async function cleanWorkspaceState(config, dbOnly) {
@@ -4161,7 +4161,7 @@ async function markCleanClaimFailed(dbPath, runId, error) {
4161
4161
  }
4162
4162
  }
4163
4163
 
4164
- // src/cli/001-index-summary.ts
4164
+ // src/cli/index-summary.ts
4165
4165
  function indexCommandOutcome(summary) {
4166
4166
  const failed = summary.failedCount > 0 ? `, failed ${summary.failedCount} (${summary.failedRepos.map(({ name, code }) => `${name}: ${code}`).join(", ")})` : "";
4167
4167
  return {