@beignet/cli 0.0.49 → 0.0.51

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 (64) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +54 -5
  3. package/dist/analysis/workspace.d.ts +1 -0
  4. package/dist/analysis/workspace.d.ts.map +1 -1
  5. package/dist/analysis/workspace.js +20 -10
  6. package/dist/analysis/workspace.js.map +1 -1
  7. package/dist/app-map-changes.d.ts +103 -0
  8. package/dist/app-map-changes.d.ts.map +1 -0
  9. package/dist/app-map-changes.js +949 -0
  10. package/dist/app-map-changes.js.map +1 -0
  11. package/dist/git-changes.d.ts +30 -0
  12. package/dist/git-changes.d.ts.map +1 -0
  13. package/dist/git-changes.js +367 -0
  14. package/dist/git-changes.js.map +1 -0
  15. package/dist/index.d.ts +2 -0
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +58 -4
  18. package/dist/index.js.map +1 -1
  19. package/dist/inspect.js +413 -43
  20. package/dist/inspect.js.map +1 -1
  21. package/dist/lib.d.ts +3 -0
  22. package/dist/lib.d.ts.map +1 -1
  23. package/dist/lib.js +1 -0
  24. package/dist/lib.js.map +1 -1
  25. package/dist/make/shared.d.ts.map +1 -1
  26. package/dist/make/shared.js +31 -27
  27. package/dist/make/shared.js.map +1 -1
  28. package/dist/make.d.ts.map +1 -1
  29. package/dist/make.js +0 -2
  30. package/dist/make.js.map +1 -1
  31. package/dist/mcp.d.ts.map +1 -1
  32. package/dist/mcp.js +46 -6
  33. package/dist/mcp.js.map +1 -1
  34. package/dist/operational-process.d.ts +1 -0
  35. package/dist/operational-process.d.ts.map +1 -1
  36. package/dist/operational-process.js.map +1 -1
  37. package/dist/operational-runner.js +1 -0
  38. package/dist/operational-runner.js.map +1 -1
  39. package/dist/outbox.d.ts +1 -0
  40. package/dist/outbox.d.ts.map +1 -1
  41. package/dist/outbox.js +58 -12
  42. package/dist/outbox.js.map +1 -1
  43. package/dist/templates/agents.d.ts.map +1 -1
  44. package/dist/templates/agents.js +28 -3
  45. package/dist/templates/agents.js.map +1 -1
  46. package/dist/templates/base.d.ts.map +1 -1
  47. package/dist/templates/base.js +4 -1
  48. package/dist/templates/base.js.map +1 -1
  49. package/package.json +2 -2
  50. package/skills/app-structure/SKILL.md +30 -5
  51. package/src/analysis/workspace.ts +25 -9
  52. package/src/app-map-changes.ts +1462 -0
  53. package/src/git-changes.ts +511 -0
  54. package/src/index.ts +84 -4
  55. package/src/inspect.ts +586 -51
  56. package/src/lib.ts +21 -0
  57. package/src/make/shared.ts +31 -27
  58. package/src/make.ts +0 -2
  59. package/src/mcp.ts +65 -12
  60. package/src/operational-process.ts +1 -0
  61. package/src/operational-runner.ts +1 -0
  62. package/src/outbox.ts +63 -12
  63. package/src/templates/agents.ts +28 -3
  64. package/src/templates/base.ts +4 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # @beignet/cli
2
2
 
3
+ ## 0.0.51
4
+
5
+ ### Patch Changes
6
+
7
+ - 4f033a6: Forward canonical event payloads, expose framework error ownership through CORS, run focused-route misses through the fallback lifecycle, and inspect formatted route handlers with the TypeScript AST.
8
+ - 7f9b34d: Keep documentation command validation synchronized with the CLI's executable route registry.
9
+ - ea3d734: Renew active outbox claims, reconcile exhausted deliveries, and surface uncertain lease or settlement outcomes across runtime and operational tools. Custom outbox adapters must implement `renewClaim(...)`, return `{ claimed, deadLettered }` from `claimBatch(...)`, and reject renewal or settlement after the active claim expires.
10
+ - Updated dependencies [4f033a6]
11
+ - Updated dependencies [ea3d734]
12
+ - Updated dependencies [98ab47f]
13
+ - @beignet/core@0.0.51
14
+
15
+ ## 0.0.50
16
+
17
+ ### Patch Changes
18
+
19
+ - 6fe026a: Expose event-subscription readiness and asynchronous cleanup, await listener
20
+ registries during provider startup with bounded rollback, diagnose unsafe app
21
+ wiring, and make Redis subscription lifecycle failures observable with bounded
22
+ provider shutdown and recoverable channel state.
23
+ - 4be4573: Keep mail content out of provider instrumentation, document the Redis
24
+ deployment policy required for monotonic fencing, and align generated agent
25
+ guidance with optional seed, worker, and migration paths.
26
+ - 2ec5545: Map local Git changes to bounded, source-backed Beignet concepts through the
27
+ CLI, library API, and MCP server.
28
+ - Updated dependencies [6fe026a]
29
+ - Updated dependencies [4be4573]
30
+ - Updated dependencies [ee402a9]
31
+ - Updated dependencies [d1db53e]
32
+ - Updated dependencies [7b0961b]
33
+ - @beignet/core@0.0.50
34
+
3
35
  ## 0.0.49
4
36
 
5
37
  ### Patch Changes
package/README.md CHANGED
@@ -816,6 +816,9 @@ Generators wire the provider-backed ports their output depends on. `make
816
816
  event` (and `make resource --events`) wires `eventBus: EventBusPort` with
817
817
  `createMemoryEventBusProvider()` from
818
818
  `@beignet/provider-event-bus-memory`, including the package dependency.
819
+ Listener generation also installs provider lifecycle wiring that registers the
820
+ central listener registry in `start()`, waits for its initial readiness with
821
+ the default 10-second registry deadline, and awaits cleanup in `stop()`.
819
822
  `make notification` wires `mailer: MailerPort` with
820
823
  `createMemoryMailerProvider()` and `notifications: NotificationPort` with
821
824
  `createInlineNotificationsProvider()`, both dev-default providers from
@@ -857,7 +860,7 @@ Use `beignet outbox drain` when you need to drain durable events and jobs from
857
860
  an app-owned CLI, CI, or worker entrypoint:
858
861
 
859
862
  ```bash
860
- beignet outbox drain --batch-size 100
863
+ beignet outbox drain --batch-size 100 --concurrency 4
861
864
  ```
862
865
 
863
866
  The runner loads `server/outbox.ts` or `paths.outbox`. That module should export
@@ -867,6 +870,14 @@ lifecycle, so the CLI drain uses the same outbox, event bus, jobs,
867
870
  instrumentation, actor, and tenant decisions as the scheduled drain route.
868
871
  The drain validates all transports required by the registry before claiming a
869
872
  batch, so missing `eventBus` or `jobs` wiring does not consume attempts.
873
+ Delivery is serial by default. `--concurrency` enables unordered parallel
874
+ delivery for handlers that can safely overlap.
875
+
876
+ The drain report includes `abandonedDeadLettered`, `settlementFailed`, and
877
+ `leaseLost`. When either uncertainty counter is nonzero, the CLI prints the
878
+ complete report and exits `1`; the equivalent MCP operation returns the same
879
+ JSON as an error-bearing tool result. Investigate storage availability and
880
+ worker clock synchronization before retrying.
870
881
 
871
882
  Inspect and recover failed deliveries through the same app-owned operational
872
883
  context:
@@ -1047,6 +1058,8 @@ Build a deterministic, source-backed graph of the app:
1047
1058
  beignet map
1048
1059
  beignet map --feature issues
1049
1060
  beignet map --json --kind route,use-case,event,listener
1061
+ beignet map --changed
1062
+ beignet map --changed --base origin/main --json
1050
1063
  ```
1051
1064
 
1052
1065
  The human view summarizes contracts, use cases, workflows, ports, UI, and tests
@@ -1071,6 +1084,36 @@ accepts one or a comma-separated list of node kinds. These projections make
1071
1084
  the same full graph practical for coding-agent context windows. The command is
1072
1085
  report-only and does not fail because doctor or lint findings are present.
1073
1086
 
1087
+ `--changed` maps the current Git change set to potentially affected concepts.
1088
+ Without `--base`, it preserves staged index changes, unstaged worktree changes,
1089
+ and untracked files instead of collapsing them into one net diff against
1090
+ `HEAD`. With `--base <ref>`, it also includes committed branch changes from the
1091
+ merge base of that already-local ref through `HEAD`; Beignet never fetches the
1092
+ ref. The bounded report distinguishes direct source changes, reverse local
1093
+ imports, one-hop semantic consumers, related members of directly changed
1094
+ containers, and feature ownership context. Governing configuration and changed
1095
+ direct local workspace dependencies are marked app-wide. Recognized guide
1096
+ files such as `README.md`, `AGENTS.md`, and `CLAUDE.md`, plus Markdown or text
1097
+ files under a root `docs/` or `documentation/` directory, remain non-impacting.
1098
+ Other `.mdx` and `.txt` paths remain application changes. Deleted declarations,
1099
+ unresolved imports, changed files with no mapped concept, and other
1100
+ static-analysis blind spots remain visible as gaps.
1101
+ Changed-file paths and gap paths are repository-relative; app-map node sources
1102
+ and source evidence remain relative to the selected app root.
1103
+
1104
+ Changed mapping explains potential impact; it does not run checks or claim
1105
+ that a change is correct. Use `beignet check` after inspecting the report.
1106
+ `--changed` cannot be combined with `--feature` or `--kind`, and `--base`
1107
+ requires `--changed`.
1108
+
1109
+ The same report is available to library callers:
1110
+
1111
+ ```ts
1112
+ import { mapAppChanges } from "@beignet/cli";
1113
+
1114
+ const impact = await mapAppChanges({ cwd: "apps/api", base: "origin/main" });
1115
+ ```
1116
+
1074
1117
  ## Explain mapped app concepts
1075
1118
 
1076
1119
  Resolve one app-map target into deterministic, source-backed context:
@@ -1169,9 +1212,10 @@ exits `1` on any error finding.
1169
1212
 
1170
1213
  `beignet task run`, `beignet schedule run`, and `beignet outbox drain` use an
1171
1214
  optional `ctx.ports.errorReporter` from their app-owned context. They report
1172
- terminal command failures, dead letters, and settlement failures, then perform
1173
- a bounded flush before stopping context. Retryable outbox deliveries remain
1174
- instrumentation/log events rather than incident reports.
1215
+ terminal command failures, dead letters, lease failures, and settlement
1216
+ failures, then perform a bounded flush before stopping context. Retryable
1217
+ outbox deliveries remain instrumentation/log events rather than incident
1218
+ reports.
1175
1219
 
1176
1220
  ## Lint app architecture
1177
1221
 
@@ -1245,6 +1289,8 @@ Today it detects:
1245
1289
  application port
1246
1290
  - Feature listeners missing from `server/listeners.ts` or otherwise not
1247
1291
  referenced by `registerListeners(...)`
1292
+ - Listener wiring that does not register in `start()`, await initial readiness,
1293
+ and await asynchronous cleanup in `stop()`
1248
1294
  - Opted-in runtime manifests that omit generated workflow registries
1249
1295
  - Next.js route handlers that do not map to known contracts
1250
1296
  - OpenAPI drift in direct arrays, exported contract lists, and
@@ -1420,7 +1466,10 @@ Resources:
1420
1466
  Tools:
1421
1467
 
1422
1468
  - `app_map` - project the source-backed app graph by optional `feature`,
1423
- `kinds`, and `includeDiagnostics` inputs (read-only)
1469
+ `kinds`, and `includeDiagnostics` inputs, or pass
1470
+ `{ changed: true, base?: "origin/main" }` for the same bounded report as
1471
+ `beignet map --changed --json` (read-only). Changed mode rejects projection
1472
+ and diagnostic inputs
1424
1473
  - `explain` - explain any source-backed mapped concept or diagnostic with
1425
1474
  `{ kind, target }`, returning relationships, conventions, findings,
1426
1475
  suggested files, and follow-up commands (read-only)
@@ -6,6 +6,7 @@ export type AnalysisWorkspace = {
6
6
  fileSet: Set<string>;
7
7
  config: ResolvedBeignetConfig;
8
8
  compilerOptions: ts.CompilerOptions;
9
+ compilerConfigFiles: string[];
9
10
  moduleResolutionCache: ts.ModuleResolutionCache;
10
11
  readSource(file: string): Promise<string>;
11
12
  readSourceFile(file: string): Promise<ts.SourceFile>;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/analysis/workspace.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,KAAK,aAAa,EAGlB,KAAK,qBAAqB,EAE3B,MAAM,cAAc,CAAC;AAWtB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC;IACpC,qBAAqB,EAAE,EAAE,CAAC,qBAAqB,CAAC;IAChD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;CACtD,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,GAAG,SAAgB,EACnB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,iBAAiB,CAAC,CAmD5B;AAED,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYtE;AAED,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAqB3E;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CACb,iBAAiB,EACjB,iBAAiB,GAAG,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACtE,EACD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,SAAS,CASpB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CACb,iBAAiB,EACjB,iBAAiB,GAAG,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACtE,EACD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,SAAS,CA2CpB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CACb,iBAAiB,EACjB,iBAAiB,GAAG,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACtE,EACD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,OAAO,CA4CT"}
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/analysis/workspace.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,KAAK,aAAa,EAGlB,KAAK,qBAAqB,EAE3B,MAAM,cAAc,CAAC;AAWtB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC;IACpC,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,qBAAqB,EAAE,EAAE,CAAC,qBAAqB,CAAC;IAChD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;CACtD,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,GAAG,SAAgB,EACnB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,iBAAiB,CAAC,CAqD5B;AAED,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYtE;AAED,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAqB3E;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CACb,iBAAiB,EACjB,iBAAiB,GAAG,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACtE,EACD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,SAAS,CASpB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CACb,iBAAiB,EACjB,iBAAiB,GAAG,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACtE,EACD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,SAAS,CA2CpB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,IAAI,CACb,iBAAiB,EACjB,iBAAiB,GAAG,SAAS,GAAG,uBAAuB,GAAG,WAAW,CACtE,EACD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,OAAO,CA4CT"}
@@ -18,7 +18,7 @@ export async function createAnalysisWorkspace(cwd = process.cwd(), options = {})
18
18
  const config = options.config
19
19
  ? resolveConfig(options.config)
20
20
  : await loadBeignetConfig(targetDir, files);
21
- const compilerOptions = resolveCompilerOptions(targetDir);
21
+ const { compilerConfigFiles, compilerOptions } = resolveCompilerConfiguration(targetDir);
22
22
  const moduleResolutionCache = ts.createModuleResolutionCache(targetDir, ts.sys.useCaseSensitiveFileNames
23
23
  ? (fileName) => fileName
24
24
  : (fileName) => fileName.toLowerCase(), compilerOptions);
@@ -38,6 +38,7 @@ export async function createAnalysisWorkspace(cwd = process.cwd(), options = {})
38
38
  fileSet,
39
39
  config,
40
40
  compilerOptions,
41
+ compilerConfigFiles,
41
42
  moduleResolutionCache,
42
43
  readSource,
43
44
  async readSourceFile(file) {
@@ -175,19 +176,28 @@ function modulePatternWildcard(pattern, importPath) {
175
176
  }
176
177
  return importPath.slice(prefix.length, importPath.length - suffix.length);
177
178
  }
178
- function resolveCompilerOptions(targetDir) {
179
- const compilerOptions = ts.getParsedCommandLineOfConfigFile(path.join(targetDir, "tsconfig.json"), {}, {
179
+ function resolveCompilerConfiguration(targetDir) {
180
+ const compilerConfigFiles = new Set();
181
+ const configPath = path.join(targetDir, "tsconfig.json");
182
+ const compilerOptions = ts.getParsedCommandLineOfConfigFile(configPath, {}, {
180
183
  ...ts.sys,
184
+ readFile(file) {
185
+ compilerConfigFiles.add(path.resolve(file));
186
+ return ts.sys.readFile(file);
187
+ },
181
188
  onUnRecoverableConfigFileDiagnostic: () => { },
182
189
  })?.options ?? {};
183
- if (compilerOptions.paths)
184
- return compilerOptions;
185
190
  return {
186
- ...compilerOptions,
187
- baseUrl: compilerOptions.baseUrl ?? targetDir,
188
- paths: {
189
- "@/*": ["*"],
190
- },
191
+ compilerConfigFiles: [...compilerConfigFiles].sort(),
192
+ compilerOptions: compilerOptions.paths
193
+ ? compilerOptions
194
+ : {
195
+ ...compilerOptions,
196
+ baseUrl: compilerOptions.baseUrl ?? targetDir,
197
+ paths: {
198
+ "@/*": ["*"],
199
+ },
200
+ },
191
201
  };
192
202
  }
193
203
  function compilerPathsBase(compilerOptions, targetDir) {
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/analysis/workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/analysis/workspace.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ import { type AppMapEdge, type AppMapEdgeKind, type AppMapNode } from "./app-map.js";
2
+ import { type GitChangeComparison, type GitChangedFileStatus } from "./git-changes.js";
3
+ /** Relationship between one changed repository file and the selected app. */
4
+ export type AppChangeFileScope = "app" | "governing" | "outside" | "workspace-dependency";
5
+ /** One Git change classified relative to the selected Beignet app. */
6
+ export type AppChangedFile = {
7
+ status: GitChangedFileStatus;
8
+ path: string;
9
+ oldPath?: string;
10
+ scope: AppChangeFileScope;
11
+ };
12
+ /** Why one mapped concept appears in a changed-app report. */
13
+ export type AppChangeImpact = "app-wide" | "consumer" | "context" | "direct" | "related";
14
+ /** Source-backed reason connecting a Git change to one mapped concept. */
15
+ export type AppChangeReason = {
16
+ kind: "app-wide" | "import" | "ownership" | "relationship" | "source";
17
+ changedFile: string;
18
+ message: string;
19
+ evidence?: {
20
+ file: string;
21
+ line?: number;
22
+ column?: number;
23
+ confidence: "exact" | "partial";
24
+ };
25
+ relationship?: {
26
+ kind: AppMapEdgeKind;
27
+ from: string;
28
+ to: string;
29
+ };
30
+ };
31
+ /** App-map node annotated with its strongest change-impact classification. */
32
+ export type AppChangeImpactedNode = AppMapNode & {
33
+ impact: AppChangeImpact;
34
+ reasons: AppChangeReason[];
35
+ reasonCount: number;
36
+ reasonsTruncated: boolean;
37
+ };
38
+ /** App-map edge used as semantic change-impact evidence. */
39
+ export type AppChangeRelationship = AppMapEdge & {
40
+ impact: "consumer" | "related";
41
+ };
42
+ /** Static-analysis blind spot retained in a changed-app report. */
43
+ export type AppChangeGap = {
44
+ code: string;
45
+ message: string;
46
+ /** Repository-relative file associated with this gap. */
47
+ file?: string;
48
+ };
49
+ /** Deterministically bounded report section with complete item counts. */
50
+ export type BoundedAppChangeSection<T> = {
51
+ items: T[];
52
+ returned: number;
53
+ total: number;
54
+ truncated: boolean;
55
+ };
56
+ /** Bounded gap examples plus exhaustive counts for every gap code. */
57
+ export type BoundedAppChangeGapSection = BoundedAppChangeSection<AppChangeGap> & {
58
+ countsByCode: Record<string, number>;
59
+ };
60
+ /** Version 1 report mapping a Git change set to Beignet application concepts. */
61
+ export type AppChangeImpactResult = {
62
+ schemaVersion: 1;
63
+ targetDir: string;
64
+ repository: {
65
+ root: string;
66
+ workspaceRoot?: string;
67
+ comparison: GitChangeComparison;
68
+ repositoryChangeHash: string;
69
+ scopedChangeHash: string;
70
+ };
71
+ classification: {
72
+ appWide: boolean;
73
+ docsOnly: boolean;
74
+ };
75
+ summary: {
76
+ changedFiles: number;
77
+ scopedChangedFiles: number;
78
+ outsideChangedFiles: number;
79
+ impactedFeatures: number;
80
+ impactedNodes: number;
81
+ direct: number;
82
+ consumers: number;
83
+ related: number;
84
+ contexts: number;
85
+ appWide: number;
86
+ relationships: number;
87
+ gaps: number;
88
+ };
89
+ changedFiles: BoundedAppChangeSection<AppChangedFile>;
90
+ impactedNodes: BoundedAppChangeSection<AppChangeImpactedNode>;
91
+ relationships: BoundedAppChangeSection<AppChangeRelationship>;
92
+ gaps: BoundedAppChangeGapSection;
93
+ };
94
+ /** Options for mapping the current Git change set. */
95
+ export type AppMapChangesOptions = {
96
+ cwd?: string;
97
+ base?: string;
98
+ };
99
+ /** Map the current Git change set to bounded, source-backed Beignet concepts. */
100
+ export declare function mapAppChanges(options?: AppMapChangesOptions): Promise<AppChangeImpactResult>;
101
+ /** Format the report-only changed app map for a terminal. */
102
+ export declare function formatAppChangeImpact(result: AppChangeImpactResult): string;
103
+ //# sourceMappingURL=app-map-changes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-map-changes.d.ts","sourceRoot":"","sources":["../src/app-map-changes.ts"],"names":[],"mappings":"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"}