attocode 0.1.4 → 0.1.6
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/CHANGELOG.md +36 -1
- package/dist/src/agent.d.ts +40 -1
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +492 -37
- package/dist/src/agent.js.map +1 -1
- package/dist/src/core/index.d.ts +1 -6
- package/dist/src/core/index.d.ts.map +1 -1
- package/dist/src/core/index.js +4 -7
- package/dist/src/core/index.js.map +1 -1
- package/dist/src/defaults.d.ts +1 -1
- package/dist/src/defaults.d.ts.map +1 -1
- package/dist/src/integrations/agent-registry.d.ts.map +1 -1
- package/dist/src/integrations/agent-registry.js +8 -1
- package/dist/src/integrations/agent-registry.js.map +1 -1
- package/dist/src/integrations/codebase-context.d.ts +163 -0
- package/dist/src/integrations/codebase-context.d.ts.map +1 -1
- package/dist/src/integrations/codebase-context.js +462 -0
- package/dist/src/integrations/codebase-context.js.map +1 -1
- package/dist/src/integrations/economics.d.ts +94 -2
- package/dist/src/integrations/economics.d.ts.map +1 -1
- package/dist/src/integrations/economics.js +265 -12
- package/dist/src/integrations/economics.js.map +1 -1
- package/dist/src/integrations/file-change-tracker.d.ts +1 -0
- package/dist/src/integrations/file-change-tracker.d.ts.map +1 -1
- package/dist/src/integrations/file-change-tracker.js +30 -12
- package/dist/src/integrations/file-change-tracker.js.map +1 -1
- package/dist/src/integrations/graph-visualization.d.ts +72 -0
- package/dist/src/integrations/graph-visualization.d.ts.map +1 -0
- package/dist/src/integrations/graph-visualization.js +383 -0
- package/dist/src/integrations/graph-visualization.js.map +1 -0
- package/dist/src/integrations/index.d.ts +2 -1
- package/dist/src/integrations/index.d.ts.map +1 -1
- package/dist/src/integrations/index.js +2 -0
- package/dist/src/integrations/index.js.map +1 -1
- package/dist/src/integrations/memory.d.ts +8 -0
- package/dist/src/integrations/memory.d.ts.map +1 -1
- package/dist/src/integrations/memory.js +23 -0
- package/dist/src/integrations/memory.js.map +1 -1
- package/dist/src/integrations/pending-plan.d.ts +26 -1
- package/dist/src/integrations/pending-plan.d.ts.map +1 -1
- package/dist/src/integrations/pending-plan.js +131 -3
- package/dist/src/integrations/pending-plan.js.map +1 -1
- package/dist/src/integrations/planning.d.ts +19 -0
- package/dist/src/integrations/planning.d.ts.map +1 -1
- package/dist/src/integrations/planning.js +78 -4
- package/dist/src/integrations/planning.js.map +1 -1
- package/dist/src/integrations/safety.d.ts +4 -0
- package/dist/src/integrations/safety.d.ts.map +1 -1
- package/dist/src/integrations/safety.js +46 -7
- package/dist/src/integrations/safety.js.map +1 -1
- package/dist/src/integrations/sqlite-store.d.ts.map +1 -1
- package/dist/src/integrations/sqlite-store.js +7 -1
- package/dist/src/integrations/sqlite-store.js.map +1 -1
- package/dist/src/main.js +0 -0
- package/dist/src/modes.d.ts +7 -0
- package/dist/src/modes.d.ts.map +1 -1
- package/dist/src/modes.js +69 -2
- package/dist/src/modes.js.map +1 -1
- package/dist/src/providers/llm-resilience.d.ts +8 -0
- package/dist/src/providers/llm-resilience.d.ts.map +1 -1
- package/dist/src/providers/llm-resilience.js +36 -0
- package/dist/src/providers/llm-resilience.js.map +1 -1
- package/dist/src/tools/agent.d.ts +20 -0
- package/dist/src/tools/agent.d.ts.map +1 -1
- package/dist/src/tools/agent.js +114 -0
- package/dist/src/tools/agent.js.map +1 -1
- package/dist/src/tools/file.d.ts.map +1 -1
- package/dist/src/tools/file.js +17 -3
- package/dist/src/tools/file.js.map +1 -1
- package/dist/src/tracing/trace-collector.d.ts +11 -1
- package/dist/src/tracing/trace-collector.d.ts.map +1 -1
- package/dist/src/tracing/trace-collector.js +92 -12
- package/dist/src/tracing/trace-collector.js.map +1 -1
- package/dist/src/tracing/types.d.ts +6 -0
- package/dist/src/tracing/types.d.ts.map +1 -1
- package/dist/src/tracing/types.js.map +1 -1
- package/dist/src/tui/app.d.ts.map +1 -1
- package/dist/src/tui/app.js +244 -66
- package/dist/src/tui/app.js.map +1 -1
- package/dist/src/tui/components/CollapsibleDiffView.d.ts +49 -0
- package/dist/src/tui/components/CollapsibleDiffView.d.ts.map +1 -0
- package/dist/src/tui/components/CollapsibleDiffView.js +302 -0
- package/dist/src/tui/components/CollapsibleDiffView.js.map +1 -0
- package/dist/src/tui/components/DiffView.d.ts +55 -0
- package/dist/src/tui/components/DiffView.d.ts.map +1 -0
- package/dist/src/tui/components/DiffView.js +356 -0
- package/dist/src/tui/components/DiffView.js.map +1 -0
- package/dist/src/tui/components/FileChangeSummary.d.ts +48 -0
- package/dist/src/tui/components/FileChangeSummary.d.ts.map +1 -0
- package/dist/src/tui/components/FileChangeSummary.js +152 -0
- package/dist/src/tui/components/FileChangeSummary.js.map +1 -0
- package/dist/src/tui/components/SideBySideDiff.d.ts +62 -0
- package/dist/src/tui/components/SideBySideDiff.d.ts.map +1 -0
- package/dist/src/tui/components/SideBySideDiff.js +320 -0
- package/dist/src/tui/components/SideBySideDiff.js.map +1 -0
- package/dist/src/tui/components/SyntaxText.d.ts +47 -0
- package/dist/src/tui/components/SyntaxText.d.ts.map +1 -0
- package/dist/src/tui/components/SyntaxText.js +43 -0
- package/dist/src/tui/components/SyntaxText.js.map +1 -0
- package/dist/src/tui/components/index.d.ts +5 -0
- package/dist/src/tui/components/index.d.ts.map +1 -1
- package/dist/src/tui/components/index.js +7 -0
- package/dist/src/tui/components/index.js.map +1 -1
- package/dist/src/tui/syntax/index.d.ts +12 -0
- package/dist/src/tui/syntax/index.d.ts.map +1 -0
- package/dist/src/tui/syntax/index.js +14 -0
- package/dist/src/tui/syntax/index.js.map +1 -0
- package/dist/src/tui/syntax/languages/bash.d.ts +8 -0
- package/dist/src/tui/syntax/languages/bash.d.ts.map +1 -0
- package/dist/src/tui/syntax/languages/bash.js +296 -0
- package/dist/src/tui/syntax/languages/bash.js.map +1 -0
- package/dist/src/tui/syntax/languages/javascript.d.ts +8 -0
- package/dist/src/tui/syntax/languages/javascript.d.ts.map +1 -0
- package/dist/src/tui/syntax/languages/javascript.js +253 -0
- package/dist/src/tui/syntax/languages/javascript.js.map +1 -0
- package/dist/src/tui/syntax/languages/json.d.ts +8 -0
- package/dist/src/tui/syntax/languages/json.d.ts.map +1 -0
- package/dist/src/tui/syntax/languages/json.js +112 -0
- package/dist/src/tui/syntax/languages/json.js.map +1 -0
- package/dist/src/tui/syntax/languages/python.d.ts +8 -0
- package/dist/src/tui/syntax/languages/python.d.ts.map +1 -0
- package/dist/src/tui/syntax/languages/python.js +232 -0
- package/dist/src/tui/syntax/languages/python.js.map +1 -0
- package/dist/src/tui/syntax/lexer.d.ts +51 -0
- package/dist/src/tui/syntax/lexer.d.ts.map +1 -0
- package/dist/src/tui/syntax/lexer.js +131 -0
- package/dist/src/tui/syntax/lexer.js.map +1 -0
- package/dist/src/types.d.ts +56 -0
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +4 -1
|
@@ -267,6 +267,11 @@ export class FileChangeTracker {
|
|
|
267
267
|
markUndone: this.db.prepare(`
|
|
268
268
|
UPDATE file_changes
|
|
269
269
|
SET is_undone = 1, undo_change_id = ?
|
|
270
|
+
WHERE id = ? AND session_id = ? AND is_undone = 0
|
|
271
|
+
`),
|
|
272
|
+
clearUndone: this.db.prepare(`
|
|
273
|
+
UPDATE file_changes
|
|
274
|
+
SET is_undone = 0, undo_change_id = NULL
|
|
270
275
|
WHERE id = ? AND session_id = ?
|
|
271
276
|
`),
|
|
272
277
|
getSessionSummary: this.db.prepare(`
|
|
@@ -331,23 +336,36 @@ export class FileChangeTracker {
|
|
|
331
336
|
}
|
|
332
337
|
/**
|
|
333
338
|
* Undo a specific change by ID.
|
|
339
|
+
* Uses a transaction with optimistic locking to prevent TOCTOU race conditions.
|
|
334
340
|
*/
|
|
335
341
|
async undoChange(changeId) {
|
|
336
|
-
|
|
337
|
-
|
|
342
|
+
// Use database transaction with optimistic locking to prevent race condition
|
|
343
|
+
// The key insight: we mark as undone BEFORE file operations, inside a transaction
|
|
344
|
+
// If two calls race, only one will succeed in updating is_undone from 0 to 1
|
|
345
|
+
const txResult = this.db.transaction(() => {
|
|
346
|
+
const row = this.stmts.getChange.get(changeId, this.sessionId);
|
|
347
|
+
if (!row) {
|
|
348
|
+
return { success: false, error: 'Change not found' };
|
|
349
|
+
}
|
|
350
|
+
if (row.isUndone) {
|
|
351
|
+
return { success: false, error: 'Change already undone' };
|
|
352
|
+
}
|
|
353
|
+
// Optimistic lock: mark as undone BEFORE file operations
|
|
354
|
+
// The WHERE clause includes is_undone = 0, so only one concurrent call succeeds
|
|
355
|
+
const result = this.stmts.markUndone.run(null, changeId, this.sessionId);
|
|
356
|
+
if (result.changes === 0) {
|
|
357
|
+
return { success: false, error: 'Concurrent modification detected' };
|
|
358
|
+
}
|
|
359
|
+
return { success: true, row };
|
|
360
|
+
})();
|
|
361
|
+
if (!txResult.success || !txResult.row) {
|
|
338
362
|
return {
|
|
339
363
|
success: false,
|
|
340
364
|
filePath: '',
|
|
341
|
-
message:
|
|
342
|
-
};
|
|
343
|
-
}
|
|
344
|
-
if (row.isUndone) {
|
|
345
|
-
return {
|
|
346
|
-
success: false,
|
|
347
|
-
filePath: row.filePath,
|
|
348
|
-
message: `Change ${changeId} has already been undone`,
|
|
365
|
+
message: txResult.error || 'Transaction failed',
|
|
349
366
|
};
|
|
350
367
|
}
|
|
368
|
+
const row = txResult.row;
|
|
351
369
|
const filePath = row.filePath;
|
|
352
370
|
try {
|
|
353
371
|
// Determine what content to restore
|
|
@@ -387,8 +405,6 @@ export class FileChangeTracker {
|
|
|
387
405
|
}
|
|
388
406
|
break;
|
|
389
407
|
}
|
|
390
|
-
// Mark as undone (no undo change id since this isn't creating a new change record)
|
|
391
|
-
this.stmts.markUndone.run(null, changeId, this.sessionId);
|
|
392
408
|
return {
|
|
393
409
|
success: true,
|
|
394
410
|
filePath,
|
|
@@ -397,6 +413,8 @@ export class FileChangeTracker {
|
|
|
397
413
|
};
|
|
398
414
|
}
|
|
399
415
|
catch (error) {
|
|
416
|
+
// File operations failed - rollback the database change
|
|
417
|
+
this.stmts.clearUndone.run(changeId, this.sessionId);
|
|
400
418
|
return {
|
|
401
419
|
success: false,
|
|
402
420
|
filePath,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-change-tracker.js","sourceRoot":"","sources":["../../../src/integrations/file-change-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EAAE,SAAS,EAAY,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAuFrC,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF;;;GAGG;AACH,SAAS,mBAAmB,CAAC,MAAc,EAAE,KAAa,EAAE,QAAgB;IAC1E,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAErC,MAAM,MAAM,GAAG;QACb,SAAS,QAAQ,EAAE;QACnB,SAAS,QAAQ,EAAE;KACpB,CAAC;IAEF,wDAAwD;IACxD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;QACvD,uBAAuB;QACvB,MAAM,MAAM,GAAG,CAAC,CAAC;QACjB,MAAM,MAAM,GAAG,CAAC,CAAC;QAEjB,sBAAsB;QACtB,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3F,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;QACN,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;YACpD,gCAAgC;YAChC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,MAAM,SAAS,GAAG,aAAa,GAAG,CAAC,CAAC;YAEpC,oCAAoC;YACpC,MAAM,UAAU,GAAG,CAAC,CAAC;YACrB,MAAM,UAAU,GAAG,CAAC,CAAC;YAErB,kCAAkC;YAClC,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;gBACvD,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxF,4DAA4D;oBAC5D,IAAI,UAAU,GAAG,CAAC,CAAC;oBACnB,IAAI,KAAK,GAAG,CAAC,CAAC;oBACd,IAAI,KAAK,GAAG,CAAC,CAAC;oBACd,OAAO,KAAK,GAAG,WAAW,CAAC,MAAM,IAAI,KAAK,GAAG,UAAU,CAAC,MAAM;wBACvD,WAAW,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;wBAClE,UAAU,EAAE,CAAC;wBACb,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,CAAC;oBACV,CAAC;oBACD,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;wBACpB,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM;oBAAE,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM;oBAAE,CAAC,EAAE,CAAC;YACjC,CAAC;YAED,iBAAiB;YACjB,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,CAAC,GAAG,aAAa,CAAC;YACtC,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC;YAE3D,SAAS,CAAC,IAAI,CAAC,OAAO,SAAS,IAAI,WAAW,KAAK,SAAS,IAAI,UAAU,KAAK,CAAC,CAAC;YAEjF,qBAAqB;YACrB,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,SAAS,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;YAED,oBAAoB;YACpB,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;oBAC3B,SAAS,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,kBAAkB;YAClB,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;oBAC1B,SAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,cAAsB,EAAE,IAAY;IAC5D,mBAAmB;IACnB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,oBAAoB;IACpB,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,CAAC,EAAE,CAAC;IACN,CAAC;IAED,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,qDAAqD;YACrD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAC3D,IAAI,KAAK,EAAE,CAAC;gBACV,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YACzC,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,8CAA8C;YAC9C,IAAI,SAAS,GAAG,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/E,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACnC,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,8CAA8C;YAC9C,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,SAAS,EAAE,CAAC;YACZ,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,eAAe;YACf,SAAS,EAAE,CAAC;YACZ,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,CAAC,EAAE,CAAC;IACN,CAAC;IAED,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACpB,EAAE,CAAoB;IACtB,SAAS,CAAS;IAClB,MAAM,CAAoC;IAC1C,KAAK,CASX;IAEF,YAAY,EAAqB,EAAE,SAAiB,EAAE,MAAgC;QACpF,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG;YACZ,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,IAAI;YAChC,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,IAAI,EAAE,GAAG,IAAI,EAAE,OAAO;SACvE,CAAC;QAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,IAAI,CAAC,KAAK,GAAG;YACX,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;OAa7B,CAAC;YAEF,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;OAW1B,CAAC;YAEF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;OAY3B,CAAC;YAEF,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;OAY/B,CAAC;YAEF,iBAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;OAalC,CAAC;YAEF,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;OAY/B,CAAC;YAEF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;OAI3B,CAAC;YAEF,iBAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;OAWlC,CAAC;SACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,MAOlB;QACC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC;QACjD,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClF,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/E,yBAAyB;QACzB,IAAI,WAAW,GAAoB,MAAM,CAAC;QAC1C,IAAI,WAAW,GAAkB,IAAI,CAAC;QACtC,IAAI,YAAY,GAAG,aAAa,CAAC;QACjC,IAAI,WAAW,GAAG,YAAY,CAAC;QAE/B,gCAAgC;QAChC,MAAM,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;QAC5C,IAAI,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,IAAI,aAAa,IAAI,YAAY,EAAE,CAAC;YAClF,WAAW,GAAG,MAAM,CAAC;YACrB,WAAW,GAAG,mBAAmB,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChF,6EAA6E;YAC7E,oCAAoC;YACpC,YAAY,GAAG,IAAI,CAAC;YACpB,WAAW,GAAG,YAAY,CAAC;QAC7B,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC;YACzC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;YACrC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,aAAa,EAAE,YAAY;YAC3B,YAAY,EAAE,WAAW;YACzB,WAAW;YACX,WAAW;YACX,WAAW;YACX,UAAU;YACV,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,GAAG;SACf,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,eAAyB,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAgBhD,CAAC;QAEd,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,UAAU,QAAQ,YAAY;aACxC,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,OAAO,EAAE,UAAU,QAAQ,0BAA0B;aACtD,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE9B,IAAI,CAAC;YACH,oCAAoC;YACpC,IAAI,gBAAgB,GAAkB,IAAI,CAAC;YAE3C,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;gBAC/B,gBAAgB,GAAG,GAAG,CAAC,aAAa,CAAC;YACvC,CAAC;iBAAM,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;gBAC7E,+CAA+C;gBAC/C,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YACzE,CAAC;YAED,2CAA2C;YAC3C,QAAQ,GAAG,CAAC,SAAS,EAAE,CAAC;gBACtB,KAAK,QAAQ;oBACX,gCAAgC;oBAChC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACzB,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACzB,CAAC;oBACD,MAAM;gBAER,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM;oBACT,6CAA6C;oBAC7C,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;wBAC9B,MAAM,SAAS,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;oBACvD,CAAC;yBAAM,IAAI,GAAG,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;wBACrC,sDAAsD;wBACtD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACzB,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;wBACzB,CAAC;oBACH,CAAC;oBACD,MAAM;gBAER,KAAK,QAAQ;oBACX,wDAAwD;oBACxD,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;wBAC9B,MAAM,SAAS,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;oBACvD,CAAC;oBACD,MAAM;YACV,CAAC;YAED,mFAAmF;YACnF,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAE1D,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ;gBACR,OAAO,EAAE,sBAAsB,GAAG,CAAC,SAAS,OAAO,QAAQ,EAAE;gBAC7D,QAAQ;aACT,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ;gBACR,OAAO,EAAE,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBAC3F,QAAQ;aACT,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,QAAgB;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAExD,CAAC;QAEd,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ;gBACR,OAAO,EAAE,iCAAiC,QAAQ,EAAE;aACrD,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,UAAkB;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAGnE,CAAC;QAEH,MAAM,OAAO,GAAiB,EAAE,CAAC;QAEjC,4CAA4C;QAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,QAAgB;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAgBjE,CAAC;QAEH,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,SAAS,EAAE,GAAG,CAAC,SAAmD;YAClE,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,WAAW,EAAE,GAAG,CAAC,WAA8B;YAC/C,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ,KAAK,CAAC;YAC5B,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,OAA+B;QACxC,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAgBnD,CAAC;QAEH,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtB,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,SAAS,EAAE,GAAG,CAAC,SAAmD;YAClE,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,WAAW,EAAE,GAAG,CAAC,WAA8B;YAC/C,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ,KAAK,CAAC;YAC5B,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAQ1D,CAAC;QAEF,4CAA4C;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QACtC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrB,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,OAAO;YACL,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC;YACnC,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,CAAC;YACrC,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,CAAC;YACrC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;YACtC,WAAW,EAAE;gBACX,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;gBAC5B,KAAK,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;gBAC1B,IAAI,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;gBACxB,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;aAC7B;SACF,CAAC;IACJ,CAAC;CACF;AAED,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,EAAqB,EACrB,SAAiB,EACjB,MAAgC;IAEhC,OAAO,IAAI,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC"}
|
|
1
|
+
{"version":3,"file":"file-change-tracker.js","sourceRoot":"","sources":["../../../src/integrations/file-change-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dependency Graph Visualization
|
|
3
|
+
*
|
|
4
|
+
* Generates visual representations of codebase dependency graphs.
|
|
5
|
+
* Supports multiple output formats:
|
|
6
|
+
* - Mermaid: Markdown-compatible diagrams (renders in GitHub, VS Code, etc.)
|
|
7
|
+
* - DOT: GraphViz format for advanced visualization
|
|
8
|
+
* - ASCII: Terminal-friendly text diagrams
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* const repoMap = await codebaseContext.analyze();
|
|
13
|
+
* const diagram = generateDependencyDiagram(repoMap.dependencyGraph, {
|
|
14
|
+
* format: 'mermaid',
|
|
15
|
+
* maxNodes: 20,
|
|
16
|
+
* direction: 'LR',
|
|
17
|
+
* });
|
|
18
|
+
* console.log(diagram);
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export type FileDependencyGraph = Map<string, Set<string>>;
|
|
22
|
+
export type DiagramFormat = 'mermaid' | 'dot' | 'ascii';
|
|
23
|
+
export type DiagramDirection = 'TD' | 'LR' | 'BT' | 'RL';
|
|
24
|
+
export interface GraphVisualizationOptions {
|
|
25
|
+
/** Output format */
|
|
26
|
+
format: DiagramFormat;
|
|
27
|
+
/** Maximum number of nodes to include (prevents huge diagrams) */
|
|
28
|
+
maxNodes?: number;
|
|
29
|
+
/** Graph direction: TD (top-down), LR (left-right), BT (bottom-top), RL (right-left) */
|
|
30
|
+
direction?: DiagramDirection;
|
|
31
|
+
/** Include external dependencies (node_modules, etc.) */
|
|
32
|
+
includeExternal?: boolean;
|
|
33
|
+
/** Group files by directory */
|
|
34
|
+
groupByDirectory?: boolean;
|
|
35
|
+
/** Only show files matching these patterns */
|
|
36
|
+
filterPatterns?: string[];
|
|
37
|
+
/** Highlight these files (shown with different style) */
|
|
38
|
+
highlightFiles?: string[];
|
|
39
|
+
/** Title for the diagram */
|
|
40
|
+
title?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface DiagramResult {
|
|
43
|
+
/** The generated diagram content */
|
|
44
|
+
content: string;
|
|
45
|
+
/** Number of nodes in the diagram */
|
|
46
|
+
nodeCount: number;
|
|
47
|
+
/** Number of edges in the diagram */
|
|
48
|
+
edgeCount: number;
|
|
49
|
+
/** Files that were excluded due to limits */
|
|
50
|
+
excludedFiles: string[];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Generate a visual diagram of a dependency graph.
|
|
54
|
+
*/
|
|
55
|
+
export declare function generateDependencyDiagram(graph: FileDependencyGraph, options?: Partial<GraphVisualizationOptions>): DiagramResult;
|
|
56
|
+
/**
|
|
57
|
+
* Generate a focused diagram showing a file and its immediate dependencies.
|
|
58
|
+
*/
|
|
59
|
+
export declare function generateFocusedDiagram(graph: FileDependencyGraph, centerFile: string, options?: Partial<GraphVisualizationOptions>): DiagramResult;
|
|
60
|
+
/**
|
|
61
|
+
* Generate a diagram showing the reverse dependencies (what depends on this file).
|
|
62
|
+
*/
|
|
63
|
+
export declare function generateReverseDiagram(reverseFileDependencyGraph: FileDependencyGraph, targetFile: string, options?: Partial<GraphVisualizationOptions>): DiagramResult;
|
|
64
|
+
/**
|
|
65
|
+
* Create a configured diagram generator.
|
|
66
|
+
*/
|
|
67
|
+
export declare function createGraphVisualizer(defaultOptions?: Partial<GraphVisualizationOptions>): {
|
|
68
|
+
generate: (graph: FileDependencyGraph, options?: Partial<GraphVisualizationOptions>) => DiagramResult;
|
|
69
|
+
focused: (graph: FileDependencyGraph, centerFile: string, options?: Partial<GraphVisualizationOptions>) => DiagramResult;
|
|
70
|
+
reverse: (graph: FileDependencyGraph, targetFile: string, options?: Partial<GraphVisualizationOptions>) => DiagramResult;
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=graph-visualization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-visualization.d.ts","sourceRoot":"","sources":["../../../src/integrations/graph-visualization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAQH,MAAM,MAAM,mBAAmB,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AACxD,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzD,MAAM,WAAW,yBAAyB;IACxC,oBAAoB;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,yDAAyD;IACzD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,+BAA+B;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAMD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,mBAAmB,EAC1B,OAAO,GAAE,OAAO,CAAC,yBAAyB,CAAM,GAC/C,aAAa,CAsBf;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,OAAO,CAAC,yBAAyB,CAAM,GAC/C,aAAa,CASf;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,0BAA0B,EAAE,mBAAmB,EAC/C,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,OAAO,CAAC,yBAAyB,CAAM,GAC/C,aAAa,CAQf;AAkXD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,cAAc,GAAE,OAAO,CAAC,yBAAyB,CAAM;sBAGnC,mBAAmB,YAAY,OAAO,CAAC,yBAAyB,CAAC;qBAGlE,mBAAmB,cAAc,MAAM,YAAY,OAAO,CAAC,yBAAyB,CAAC;qBAGrF,mBAAmB,cAAc,MAAM,YAAY,OAAO,CAAC,yBAAyB,CAAC;EAGzG"}
|
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dependency Graph Visualization
|
|
3
|
+
*
|
|
4
|
+
* Generates visual representations of codebase dependency graphs.
|
|
5
|
+
* Supports multiple output formats:
|
|
6
|
+
* - Mermaid: Markdown-compatible diagrams (renders in GitHub, VS Code, etc.)
|
|
7
|
+
* - DOT: GraphViz format for advanced visualization
|
|
8
|
+
* - ASCII: Terminal-friendly text diagrams
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* const repoMap = await codebaseContext.analyze();
|
|
13
|
+
* const diagram = generateDependencyDiagram(repoMap.dependencyGraph, {
|
|
14
|
+
* format: 'mermaid',
|
|
15
|
+
* maxNodes: 20,
|
|
16
|
+
* direction: 'LR',
|
|
17
|
+
* });
|
|
18
|
+
* console.log(diagram);
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
import * as path from 'path';
|
|
22
|
+
// =============================================================================
|
|
23
|
+
// MAIN API
|
|
24
|
+
// =============================================================================
|
|
25
|
+
/**
|
|
26
|
+
* Generate a visual diagram of a dependency graph.
|
|
27
|
+
*/
|
|
28
|
+
export function generateDependencyDiagram(graph, options = {}) {
|
|
29
|
+
const opts = {
|
|
30
|
+
format: options.format ?? 'mermaid',
|
|
31
|
+
maxNodes: options.maxNodes ?? 50,
|
|
32
|
+
direction: options.direction ?? 'TD',
|
|
33
|
+
includeExternal: options.includeExternal ?? false,
|
|
34
|
+
groupByDirectory: options.groupByDirectory ?? false,
|
|
35
|
+
filterPatterns: options.filterPatterns,
|
|
36
|
+
highlightFiles: options.highlightFiles ?? [],
|
|
37
|
+
title: options.title,
|
|
38
|
+
};
|
|
39
|
+
switch (opts.format) {
|
|
40
|
+
case 'mermaid':
|
|
41
|
+
return generateMermaidDiagram(graph, opts);
|
|
42
|
+
case 'dot':
|
|
43
|
+
return generateDotDiagram(graph, opts);
|
|
44
|
+
case 'ascii':
|
|
45
|
+
return generateAsciiDiagram(graph, opts);
|
|
46
|
+
default:
|
|
47
|
+
throw new Error(`Unsupported diagram format: ${opts.format}`);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Generate a focused diagram showing a file and its immediate dependencies.
|
|
52
|
+
*/
|
|
53
|
+
export function generateFocusedDiagram(graph, centerFile, options = {}) {
|
|
54
|
+
// Extract subgraph centered on the specified file
|
|
55
|
+
const subgraph = extractSubgraph(graph, centerFile, 2); // 2 levels of depth
|
|
56
|
+
return generateDependencyDiagram(subgraph, {
|
|
57
|
+
...options,
|
|
58
|
+
highlightFiles: [centerFile, ...(options.highlightFiles ?? [])],
|
|
59
|
+
title: options.title ?? `Dependencies of ${path.basename(centerFile)}`,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Generate a diagram showing the reverse dependencies (what depends on this file).
|
|
64
|
+
*/
|
|
65
|
+
export function generateReverseDiagram(reverseFileDependencyGraph, targetFile, options = {}) {
|
|
66
|
+
const subgraph = extractSubgraph(reverseFileDependencyGraph, targetFile, 2);
|
|
67
|
+
return generateDependencyDiagram(subgraph, {
|
|
68
|
+
...options,
|
|
69
|
+
highlightFiles: [targetFile, ...(options.highlightFiles ?? [])],
|
|
70
|
+
title: options.title ?? `Files that depend on ${path.basename(targetFile)}`,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
// =============================================================================
|
|
74
|
+
// MERMAID DIAGRAM GENERATION
|
|
75
|
+
// =============================================================================
|
|
76
|
+
function generateMermaidDiagram(graph, options) {
|
|
77
|
+
const lines = [];
|
|
78
|
+
const nodes = new Set();
|
|
79
|
+
const excludedFiles = [];
|
|
80
|
+
let edgeCount = 0;
|
|
81
|
+
// Header
|
|
82
|
+
lines.push('```mermaid');
|
|
83
|
+
lines.push(`graph ${options.direction}`);
|
|
84
|
+
if (options.title) {
|
|
85
|
+
lines.push('');
|
|
86
|
+
lines.push(` %% ${options.title}`);
|
|
87
|
+
}
|
|
88
|
+
// Filter and limit files
|
|
89
|
+
const filteredEntries = filterGraphEntries(graph, options);
|
|
90
|
+
// Add subgraph groupings if requested
|
|
91
|
+
if (options.groupByDirectory) {
|
|
92
|
+
const grouped = groupByDirectory(filteredEntries);
|
|
93
|
+
for (const [dir, files] of grouped.entries()) {
|
|
94
|
+
if (files.length === 0)
|
|
95
|
+
continue;
|
|
96
|
+
const dirId = sanitizeMermaidId(dir);
|
|
97
|
+
lines.push('');
|
|
98
|
+
lines.push(` subgraph ${dirId}["${dir}"]`);
|
|
99
|
+
for (const file of files) {
|
|
100
|
+
const nodeId = sanitizeMermaidId(file);
|
|
101
|
+
const label = path.basename(file);
|
|
102
|
+
const isHighlighted = options.highlightFiles?.includes(file);
|
|
103
|
+
if (nodes.size < (options.maxNodes ?? 50)) {
|
|
104
|
+
nodes.add(nodeId);
|
|
105
|
+
if (isHighlighted) {
|
|
106
|
+
lines.push(` ${nodeId}["${label}"]:::highlighted`);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
lines.push(` ${nodeId}["${label}"]`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
excludedFiles.push(file);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
lines.push(' end');
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
// Flat list of nodes
|
|
121
|
+
for (const [file] of filteredEntries) {
|
|
122
|
+
if (nodes.size >= (options.maxNodes ?? 50)) {
|
|
123
|
+
excludedFiles.push(file);
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
const nodeId = sanitizeMermaidId(file);
|
|
127
|
+
const label = path.basename(file);
|
|
128
|
+
const isHighlighted = options.highlightFiles?.includes(file);
|
|
129
|
+
nodes.add(nodeId);
|
|
130
|
+
if (isHighlighted) {
|
|
131
|
+
lines.push(` ${nodeId}["${label}"]:::highlighted`);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
lines.push(` ${nodeId}["${label}"]`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
// Add edges
|
|
139
|
+
lines.push('');
|
|
140
|
+
for (const [file, deps] of filteredEntries) {
|
|
141
|
+
const fromId = sanitizeMermaidId(file);
|
|
142
|
+
if (!nodes.has(fromId))
|
|
143
|
+
continue;
|
|
144
|
+
for (const dep of deps) {
|
|
145
|
+
const toId = sanitizeMermaidId(dep);
|
|
146
|
+
// Skip if target node wasn't included
|
|
147
|
+
if (!nodes.has(toId))
|
|
148
|
+
continue;
|
|
149
|
+
lines.push(` ${fromId} --> ${toId}`);
|
|
150
|
+
edgeCount++;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
// Style definitions
|
|
154
|
+
if (options.highlightFiles && options.highlightFiles.length > 0) {
|
|
155
|
+
lines.push('');
|
|
156
|
+
lines.push(' classDef highlighted fill:#f9f,stroke:#333,stroke-width:2px');
|
|
157
|
+
}
|
|
158
|
+
lines.push('```');
|
|
159
|
+
return {
|
|
160
|
+
content: lines.join('\n'),
|
|
161
|
+
nodeCount: nodes.size,
|
|
162
|
+
edgeCount,
|
|
163
|
+
excludedFiles,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
// =============================================================================
|
|
167
|
+
// DOT (GRAPHVIZ) DIAGRAM GENERATION
|
|
168
|
+
// =============================================================================
|
|
169
|
+
function generateDotDiagram(graph, options) {
|
|
170
|
+
const lines = [];
|
|
171
|
+
const nodes = new Set();
|
|
172
|
+
const excludedFiles = [];
|
|
173
|
+
let edgeCount = 0;
|
|
174
|
+
// Header
|
|
175
|
+
lines.push('digraph dependencies {');
|
|
176
|
+
lines.push(' // Graph settings');
|
|
177
|
+
lines.push(` rankdir=${options.direction === 'LR' ? 'LR' : options.direction === 'RL' ? 'RL' : options.direction === 'BT' ? 'BT' : 'TB'};`);
|
|
178
|
+
lines.push(' node [shape=box, fontname="Arial", fontsize=10];');
|
|
179
|
+
lines.push(' edge [fontname="Arial", fontsize=8];');
|
|
180
|
+
if (options.title) {
|
|
181
|
+
lines.push(` labelloc="t";`);
|
|
182
|
+
lines.push(` label="${options.title}";`);
|
|
183
|
+
}
|
|
184
|
+
lines.push('');
|
|
185
|
+
lines.push(' // Nodes');
|
|
186
|
+
const filteredEntries = filterGraphEntries(graph, options);
|
|
187
|
+
for (const [file] of filteredEntries) {
|
|
188
|
+
if (nodes.size >= (options.maxNodes ?? 50)) {
|
|
189
|
+
excludedFiles.push(file);
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
const nodeId = sanitizeDotId(file);
|
|
193
|
+
const label = path.basename(file);
|
|
194
|
+
const isHighlighted = options.highlightFiles?.includes(file);
|
|
195
|
+
nodes.add(nodeId);
|
|
196
|
+
if (isHighlighted) {
|
|
197
|
+
lines.push(` ${nodeId} [label="${label}", style="filled", fillcolor="pink"];`);
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
lines.push(` ${nodeId} [label="${label}"];`);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
// Add edges
|
|
204
|
+
lines.push('');
|
|
205
|
+
lines.push(' // Edges');
|
|
206
|
+
for (const [file, deps] of filteredEntries) {
|
|
207
|
+
const fromId = sanitizeDotId(file);
|
|
208
|
+
if (!nodes.has(fromId))
|
|
209
|
+
continue;
|
|
210
|
+
for (const dep of deps) {
|
|
211
|
+
const toId = sanitizeDotId(dep);
|
|
212
|
+
if (!nodes.has(toId))
|
|
213
|
+
continue;
|
|
214
|
+
lines.push(` ${fromId} -> ${toId};`);
|
|
215
|
+
edgeCount++;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
lines.push('}');
|
|
219
|
+
return {
|
|
220
|
+
content: lines.join('\n'),
|
|
221
|
+
nodeCount: nodes.size,
|
|
222
|
+
edgeCount,
|
|
223
|
+
excludedFiles,
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
// =============================================================================
|
|
227
|
+
// ASCII DIAGRAM GENERATION
|
|
228
|
+
// =============================================================================
|
|
229
|
+
function generateAsciiDiagram(graph, options) {
|
|
230
|
+
const lines = [];
|
|
231
|
+
const nodes = new Set();
|
|
232
|
+
const excludedFiles = [];
|
|
233
|
+
let edgeCount = 0;
|
|
234
|
+
if (options.title) {
|
|
235
|
+
lines.push(`=== ${options.title} ===`);
|
|
236
|
+
lines.push('');
|
|
237
|
+
}
|
|
238
|
+
const filteredEntries = filterGraphEntries(graph, options);
|
|
239
|
+
for (const [file, deps] of filteredEntries) {
|
|
240
|
+
if (nodes.size >= (options.maxNodes ?? 50)) {
|
|
241
|
+
excludedFiles.push(file);
|
|
242
|
+
continue;
|
|
243
|
+
}
|
|
244
|
+
const label = path.basename(file);
|
|
245
|
+
const isHighlighted = options.highlightFiles?.includes(file);
|
|
246
|
+
nodes.add(file);
|
|
247
|
+
const prefix = isHighlighted ? '>>> ' : ' ';
|
|
248
|
+
const depList = Array.from(deps)
|
|
249
|
+
.filter(dep => !options.includeExternal ? !dep.includes('node_modules') : true)
|
|
250
|
+
.map(dep => path.basename(dep));
|
|
251
|
+
if (depList.length === 0) {
|
|
252
|
+
lines.push(`${prefix}${label} (no dependencies)`);
|
|
253
|
+
}
|
|
254
|
+
else {
|
|
255
|
+
lines.push(`${prefix}${label}`);
|
|
256
|
+
for (let i = 0; i < depList.length; i++) {
|
|
257
|
+
const isLast = i === depList.length - 1;
|
|
258
|
+
const connector = isLast ? '└── ' : '├── ';
|
|
259
|
+
lines.push(`${prefix} ${connector}${depList[i]}`);
|
|
260
|
+
edgeCount++;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
lines.push('');
|
|
264
|
+
}
|
|
265
|
+
if (excludedFiles.length > 0) {
|
|
266
|
+
lines.push(`... and ${excludedFiles.length} more files (increase maxNodes to see)`);
|
|
267
|
+
}
|
|
268
|
+
return {
|
|
269
|
+
content: lines.join('\n'),
|
|
270
|
+
nodeCount: nodes.size,
|
|
271
|
+
edgeCount,
|
|
272
|
+
excludedFiles,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
// =============================================================================
|
|
276
|
+
// HELPER FUNCTIONS
|
|
277
|
+
// =============================================================================
|
|
278
|
+
/**
|
|
279
|
+
* Sanitize a file path into a valid Mermaid node ID.
|
|
280
|
+
*/
|
|
281
|
+
function sanitizeMermaidId(filePath) {
|
|
282
|
+
return filePath
|
|
283
|
+
.replace(/[^a-zA-Z0-9_]/g, '_')
|
|
284
|
+
.replace(/^_+/, '')
|
|
285
|
+
.replace(/_+/g, '_');
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Sanitize a file path into a valid DOT node ID.
|
|
289
|
+
*/
|
|
290
|
+
function sanitizeDotId(filePath) {
|
|
291
|
+
return '"' + filePath.replace(/"/g, '\\"') + '"';
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Filter graph entries based on options.
|
|
295
|
+
*/
|
|
296
|
+
function filterGraphEntries(graph, options) {
|
|
297
|
+
const entries = Array.from(graph.entries());
|
|
298
|
+
return entries.filter(([file, deps]) => {
|
|
299
|
+
// Filter external dependencies
|
|
300
|
+
if (!options.includeExternal) {
|
|
301
|
+
if (file.includes('node_modules') || file.includes('vendor')) {
|
|
302
|
+
return false;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
// Filter by patterns
|
|
306
|
+
if (options.filterPatterns && options.filterPatterns.length > 0) {
|
|
307
|
+
const matchesPattern = options.filterPatterns.some(pattern => {
|
|
308
|
+
if (pattern.startsWith('*')) {
|
|
309
|
+
return file.endsWith(pattern.slice(1));
|
|
310
|
+
}
|
|
311
|
+
return file.includes(pattern);
|
|
312
|
+
});
|
|
313
|
+
if (!matchesPattern)
|
|
314
|
+
return false;
|
|
315
|
+
}
|
|
316
|
+
return true;
|
|
317
|
+
}).map(([file, deps]) => {
|
|
318
|
+
// Also filter dependencies
|
|
319
|
+
const filteredDeps = new Set(Array.from(deps).filter(dep => {
|
|
320
|
+
if (!options.includeExternal) {
|
|
321
|
+
if (dep.includes('node_modules') || dep.includes('vendor')) {
|
|
322
|
+
return false;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
return true;
|
|
326
|
+
}));
|
|
327
|
+
return [file, filteredDeps];
|
|
328
|
+
});
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Group files by their parent directory.
|
|
332
|
+
*/
|
|
333
|
+
function groupByDirectory(entries) {
|
|
334
|
+
const groups = new Map();
|
|
335
|
+
for (const [file, _deps] of entries) {
|
|
336
|
+
const dir = path.dirname(file);
|
|
337
|
+
if (!groups.has(dir)) {
|
|
338
|
+
groups.set(dir, []);
|
|
339
|
+
}
|
|
340
|
+
groups.get(dir).push(file);
|
|
341
|
+
}
|
|
342
|
+
return groups;
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Extract a subgraph centered on a specific file.
|
|
346
|
+
*/
|
|
347
|
+
function extractSubgraph(graph, centerFile, depth) {
|
|
348
|
+
const subgraph = new Map();
|
|
349
|
+
const visited = new Set();
|
|
350
|
+
const queue = [{ file: centerFile, level: 0 }];
|
|
351
|
+
while (queue.length > 0) {
|
|
352
|
+
const { file, level } = queue.shift();
|
|
353
|
+
if (visited.has(file) || level > depth)
|
|
354
|
+
continue;
|
|
355
|
+
visited.add(file);
|
|
356
|
+
const deps = graph.get(file);
|
|
357
|
+
if (deps) {
|
|
358
|
+
subgraph.set(file, deps);
|
|
359
|
+
if (level < depth) {
|
|
360
|
+
for (const dep of deps) {
|
|
361
|
+
if (!visited.has(dep)) {
|
|
362
|
+
queue.push({ file: dep, level: level + 1 });
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
return subgraph;
|
|
369
|
+
}
|
|
370
|
+
// =============================================================================
|
|
371
|
+
// FACTORY FUNCTION
|
|
372
|
+
// =============================================================================
|
|
373
|
+
/**
|
|
374
|
+
* Create a configured diagram generator.
|
|
375
|
+
*/
|
|
376
|
+
export function createGraphVisualizer(defaultOptions = {}) {
|
|
377
|
+
return {
|
|
378
|
+
generate: (graph, options) => generateDependencyDiagram(graph, { ...defaultOptions, ...options }),
|
|
379
|
+
focused: (graph, centerFile, options) => generateFocusedDiagram(graph, centerFile, { ...defaultOptions, ...options }),
|
|
380
|
+
reverse: (graph, targetFile, options) => generateReverseDiagram(graph, targetFile, { ...defaultOptions, ...options }),
|
|
381
|
+
};
|
|
382
|
+
}
|
|
383
|
+
//# sourceMappingURL=graph-visualization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-visualization.js","sourceRoot":"","sources":["../../../src/integrations/graph-visualization.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ export { CapabilitiesRegistry, createCapabilitiesRegistry, formatCapabilitiesSum
|
|
|
37
37
|
export { IgnoreManager, createIgnoreManager, quickShouldIgnore, getSampleAgentignore, getBuiltinIgnorePatterns, type IgnorePattern, type IgnoreConfig, type IgnoreEvent, type IgnoreEventListener, } from './ignore.js';
|
|
38
38
|
export { PTYShellManager, createPTYShell, createAndStartPTYShell, createPTYShellTool, formatShellState, type PTYShellConfig, type CommandResult, type ShellState, type PTYEvent, type PTYEventListener, } from './pty-shell.js';
|
|
39
39
|
export { ContextEngineeringManager, createContextEngineering, createMinimalContextEngineering, createFullContextEngineering, stableStringify, calculateOptimalFrequency, createReconstructionPrompt, extractInsights, type ContextEngineeringConfig, type ContextMessage, type ContextEngineeringStats, type ContextEngineeringEvent, type ContextEngineeringEventListener, } from './context-engineering.js';
|
|
40
|
-
export { CodebaseContextManager, createCodebaseContext, buildContextFromChunks, summarizeRepoStructure, type CodeChunk, type MinimalCodeChunk, type CodeChunkType, type RepoMap, type CodebaseContextConfig, type SelectionOptions, type SelectionStrategy, type SelectionResult, type CodebaseContextEvent, type CodebaseContextEventListener, } from './codebase-context.js';
|
|
40
|
+
export { CodebaseContextManager, createCodebaseContext, buildContextFromChunks, summarizeRepoStructure, type CodeChunk, type MinimalCodeChunk, type CodeChunkType, type RepoMap, type CodebaseContextConfig, type SelectionOptions, type SelectionStrategy, type SelectionResult, type CodebaseContextEvent, type CodebaseContextEventListener, type SearchOptions, type RankedSearchOptions, type ScoredChunk, } from './codebase-context.js';
|
|
41
41
|
export { SharedBlackboard, createSharedBlackboard, createFindingFromOutput, extractFindings, type Finding, type FindingType, type ResourceClaim, type ClaimType, type Subscription, type FindingFilter, type BlackboardConfig, type BlackboardEvent, type BlackboardEventListener, type BlackboardStats, } from './shared-blackboard.js';
|
|
42
42
|
export { SmartDecomposer, createSmartDecomposer, createDecompositionPrompt, parseDecompositionResponse, type SmartSubtask, type SubtaskStatus, type SubtaskType, type DependencyGraph, type ResourceConflict, type SmartDecompositionResult, type DecompositionStrategy, type SmartDecomposerConfig, type LLMDecomposeFunction, type DecomposeContext, type LLMDecomposeResult, type SmartDecomposerEvent, type SmartDecomposerEventListener, } from './smart-decomposer.js';
|
|
43
43
|
export { ResultSynthesizer, createResultSynthesizer, createSynthesisPrompt, type AgentOutput, type OutputType, type FileChange, type Hunk, type ResultConflict, type ConflictType, type ConflictResolution, type ResolutionStrategy, type SynthesisResult, type SynthesisStats, type SynthesisMethod, type ResultSynthesizerConfig, type LLMSynthesizeFunction, type LLMSynthesisResult, type ResultSynthesizerEvent, type ResultSynthesizerEventListener, } from './result-synthesizer.js';
|
|
@@ -54,4 +54,5 @@ export { ErrorCategory, AgentError, ToolError, MCPError, FileOperationError, Pro
|
|
|
54
54
|
ResourceError, categorizeError, wrapError, isAgentError, isRecoverable, isTransient, isRateLimited, formatError, formatErrorForLog, } from '../errors/index.js';
|
|
55
55
|
export { HealthChecker, createHealthChecker, createProviderHealthCheck, createFileSystemHealthCheck, createSQLiteHealthCheck, createMCPHealthCheck, createNetworkHealthCheck, formatHealthReport, healthReportToJSON, type HealthCheckResult, type HealthReport, type HealthCheckFn, type HealthCheckConfig, type HealthCheckerConfig, type HealthEvent, type HealthEventListener, } from './health-check.js';
|
|
56
56
|
export { DeadLetterQueue, createDeadLetterQueue, formatDeadLetterStats, type DeadLetterItem, type DeadLetterStatus, type AddDeadLetterInput, type DeadLetterQueryOptions, type DeadLetterStats, type DeadLetterEvent, type DeadLetterEventListener, } from './dead-letter-queue.js';
|
|
57
|
+
export { generateDependencyDiagram, generateFocusedDiagram, generateReverseDiagram, createGraphVisualizer, type FileDependencyGraph, type DiagramFormat, type DiagramDirection, type GraphVisualizationOptions, type DiagramResult, } from './graph-visualization.js';
|
|
57
58
|
//# sourceMappingURL=index.d.ts.map
|