@monoes/monomindcli 1.12.0 → 1.14.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.
Files changed (61) hide show
  1. package/.claude/agents/generated/churn-analyst.md +53 -0
  2. package/.claude/agents/generated/code-reviewer.md +55 -0
  3. package/.claude/agents/generated/code-validator.md +57 -0
  4. package/.claude/agents/generated/complexity-scanner.md +56 -0
  5. package/.claude/agents/generated/devbot-orchestrator.md +58 -0
  6. package/.claude/agents/generated/devbot-planner.md +63 -0
  7. package/.claude/agents/generated/impact-assessor.md +54 -0
  8. package/.claude/commands/mastermind/master.md +88 -24
  9. package/.claude/helpers/control-start.cjs +60 -1
  10. package/.claude/helpers/event-logger.cjs +43 -2
  11. package/.claude/helpers/handlers/capture-handler.cjs +336 -0
  12. package/.claude/helpers/handlers/route-handler.cjs +20 -13
  13. package/.claude/helpers/handlers/session-restore-handler.cjs +14 -8
  14. package/.claude/helpers/hook-handler.cjs +57 -1
  15. package/.claude/helpers/intelligence.cjs +129 -57
  16. package/.claude/helpers/memory-palace.cjs +461 -0
  17. package/.claude/helpers/memory.cjs +134 -15
  18. package/.claude/helpers/metrics-db.mjs +87 -0
  19. package/.claude/helpers/router.cjs +296 -41
  20. package/.claude/helpers/session.cjs +107 -32
  21. package/.claude/helpers/statusline.cjs +138 -2
  22. package/.claude/helpers/toggle-statusline.cjs +73 -0
  23. package/.claude/helpers/token-tracker.cjs +934 -0
  24. package/.claude/helpers/utils/monograph.cjs +39 -4
  25. package/.claude/helpers/utils/telemetry.cjs +3 -3
  26. package/.claude/skills/mastermind/createorg.md +227 -16
  27. package/.claude/skills/mastermind/idea.md +15 -3
  28. package/.claude/skills/mastermind/runorg.md +2 -1
  29. package/dist/src/commands/doctor.d.ts.map +1 -1
  30. package/dist/src/commands/doctor.js +96 -4
  31. package/dist/src/commands/doctor.js.map +1 -1
  32. package/dist/src/commands/index.js +2 -0
  33. package/dist/src/commands/org.d.ts +4 -0
  34. package/dist/src/commands/org.d.ts.map +1 -0
  35. package/dist/src/commands/org.js +93 -0
  36. package/dist/src/commands/org.js.map +1 -0
  37. package/dist/src/mcp-tools/memory-tools.js +6 -6
  38. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  39. package/dist/src/mcp-tools/monograph-tools.d.ts.map +1 -1
  40. package/dist/src/mcp-tools/monograph-tools.js +329 -37
  41. package/dist/src/mcp-tools/monograph-tools.js.map +1 -1
  42. package/dist/src/mcp-tools/session-tools.d.ts.map +1 -1
  43. package/dist/src/mcp-tools/session-tools.js +9 -10
  44. package/dist/src/mcp-tools/session-tools.js.map +1 -1
  45. package/dist/src/mcp-tools/task-tools.d.ts.map +1 -1
  46. package/dist/src/mcp-tools/task-tools.js +7 -8
  47. package/dist/src/mcp-tools/task-tools.js.map +1 -1
  48. package/dist/src/mcp-tools/types.d.ts +1 -0
  49. package/dist/src/mcp-tools/types.d.ts.map +1 -1
  50. package/dist/src/mcp-tools/types.js +49 -0
  51. package/dist/src/mcp-tools/types.js.map +1 -1
  52. package/dist/src/services/worker-daemon.d.ts.map +1 -1
  53. package/dist/src/services/worker-daemon.js +295 -5
  54. package/dist/src/services/worker-daemon.js.map +1 -1
  55. package/dist/src/transfer/serialization/cfp.js +1 -1
  56. package/dist/src/transfer/serialization/cfp.js.map +1 -1
  57. package/dist/src/ui/dashboard.html +2235 -178
  58. package/dist/src/ui/orgs.html +1 -0
  59. package/dist/src/ui/server.mjs +532 -133
  60. package/dist/tsconfig.tsbuildinfo +1 -1
  61. package/package.json +1 -1
@@ -3,6 +3,8 @@
3
3
  *
4
4
  * Local type definitions to avoid external imports outside package boundary.
5
5
  */
6
+ import { statSync, readFileSync } from 'node:fs';
7
+ import { join, dirname, resolve } from 'node:path';
6
8
  /**
7
9
  * Returns the effective project working directory.
8
10
  * Prefers MONOMIND_CWD (set by the install script for global/MCP installs
@@ -11,4 +13,51 @@
11
13
  export function getProjectCwd() {
12
14
  return process.env.MONOMIND_CWD || process.cwd();
13
15
  }
16
+ /**
17
+ * Returns the stable Monomind data root that survives branch switches and is
18
+ * shared across all git worktrees of the same repository.
19
+ *
20
+ * Resolution order:
21
+ * 1. MONOMIND_DATA_DIR env var — allows overriding to e.g. ~/.monomind/<project>
22
+ * 2. <repo>/.git/monomind/ — regular repo (branch-agnostic, shared by design)
23
+ * 3. <main-repo>/.git/monomind/— worktree: .git is a pointer file → resolve to
24
+ * the shared .git dir of the main worktree
25
+ * 4. <cwd>/.monomind/ — fallback when git is unavailable
26
+ *
27
+ * Mirrors the _getGitMonomindDir() function in server.mjs so session, task,
28
+ * memory, and org data all land in the same stable location.
29
+ */
30
+ const _dataRootCache = new Map();
31
+ export function getMonomindDataRoot(cwd) {
32
+ if (process.env.MONOMIND_DATA_DIR)
33
+ return process.env.MONOMIND_DATA_DIR;
34
+ const workDir = cwd || getProjectCwd();
35
+ if (_dataRootCache.has(workDir))
36
+ return _dataRootCache.get(workDir);
37
+ let result;
38
+ try {
39
+ const gitEntry = join(workDir, '.git');
40
+ const st = statSync(gitEntry);
41
+ if (st.isDirectory()) {
42
+ result = join(gitEntry, 'monomind');
43
+ }
44
+ else {
45
+ // Worktree: .git is a text file "gitdir: /main/.git/worktrees/name"
46
+ const m = readFileSync(gitEntry, 'utf8').match(/^gitdir:\s*(.+)/m);
47
+ if (m) {
48
+ const worktreeDir = resolve(workDir, m[1].trim());
49
+ const commonGitDir = dirname(dirname(worktreeDir));
50
+ result = join(commonGitDir, 'monomind');
51
+ }
52
+ else {
53
+ result = join(workDir, '.monomind');
54
+ }
55
+ }
56
+ }
57
+ catch {
58
+ result = join(workDir, '.monomind');
59
+ }
60
+ _dataRootCache.set(workDir, result);
61
+ return result;
62
+ }
14
63
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/mcp-tools/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAkBH;;;;GAIG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/mcp-tools/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBnD;;;;GAIG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;AACjD,MAAM,UAAU,mBAAmB,CAAC,GAAY;IAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACxE,MAAM,OAAO,GAAG,GAAG,IAAI,aAAa,EAAE,CAAC;IACvC,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;IACrE,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YACrB,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,MAAM,CAAC,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACnE,IAAI,CAAC,EAAE,CAAC;gBACN,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAClD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnD,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC;IACD,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker-daemon.d.ts","sourceRoot":"","sources":["../../../src/services/worker-daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-daemon.d.ts","sourceRoot":"","sources":["../../../src/services/worker-daemon.ts"],"names":[],"mappings":"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"}
@@ -761,6 +761,59 @@ export class WorkerDaemon extends EventEmitter {
761
761
  },
762
762
  scannedAt: Date.now(),
763
763
  };
764
+ // Enrich with monograph graph stats for LLM context injection.
765
+ // Lazy-import to avoid hard dependency; silently skip on any error.
766
+ try {
767
+ const { openDb, closeDb, countNodes, countEdges } = await import('@monoes/monograph');
768
+ const dbPath = join(this.projectRoot, '.monomind', 'monograph.db');
769
+ if (existsSync(dbPath)) {
770
+ const db = openDb(dbPath);
771
+ try {
772
+ // Node/edge counts
773
+ map['graph'] = {
774
+ nodes: countNodes(db),
775
+ edges: countEdges(db),
776
+ };
777
+ // Top 3 god nodes (high degree internal files) — same SQL as monograph_god_nodes tool
778
+ const excluded = ['File', 'Folder', 'Community', 'Concept'];
779
+ const rows = db.prepare(`
780
+ SELECT n.name, n.file_path, n.start_line,
781
+ COUNT(DISTINCT e1.id) + COUNT(DISTINCT e2.id) AS degree
782
+ FROM nodes n
783
+ LEFT JOIN edges e1 ON e1.source_id = n.id
784
+ LEFT JOIN edges e2 ON e2.target_id = n.id
785
+ WHERE n.label NOT IN (${excluded.map(() => '?').join(',')})
786
+ GROUP BY n.id HAVING degree > 0
787
+ ORDER BY degree DESC LIMIT 3
788
+ `).all(...excluded);
789
+ if (rows.length > 0) {
790
+ map['topFiles'] = rows.map(r => ({
791
+ ref: r.file_path
792
+ ? (r.start_line != null ? `${r.file_path}:${r.start_line}` : r.file_path)
793
+ : r.name,
794
+ degree: r.degree,
795
+ }));
796
+ }
797
+ // Index staleness via git — same approach as monograph_health tool
798
+ try {
799
+ const { execSync } = await import('child_process');
800
+ const lastHash = db.prepare("SELECT value FROM meta WHERE key = 'last_commit_hash' LIMIT 1").get()?.value;
801
+ if (lastHash) {
802
+ const countOut = execSync(`git -C ${JSON.stringify(this.projectRoot)} rev-list --count ${lastHash}..HEAD`, { timeout: 5000 }).toString().trim();
803
+ const commitsBehind = parseInt(countOut, 10);
804
+ if (!isNaN(commitsBehind)) {
805
+ map['graphStaleness'] = { commitsBehind };
806
+ }
807
+ }
808
+ }
809
+ catch { /* git unavailable — skip staleness */ }
810
+ }
811
+ finally {
812
+ closeDb(db);
813
+ }
814
+ }
815
+ }
816
+ catch { /* monograph unavailable — skip graph enrichment */ }
764
817
  const metricsFileTmp1 = metricsFile + '.tmp';
765
818
  writeFileSync(metricsFileTmp1, JSON.stringify(map, null, 2));
766
819
  renameSync(metricsFileTmp1, metricsFile);
@@ -788,6 +841,68 @@ export class WorkerDaemon extends EventEmitter {
788
841
  recommendations: [],
789
842
  note: 'Install Claude Code CLI for AI-powered security analysis',
790
843
  };
844
+ // Enrich with monograph high-centrality files and surprising cross-community edges.
845
+ // God-node files are high-value targets for security review: they are imported by
846
+ // many consumers, so a vulnerability there has the largest blast radius.
847
+ // Cross-community edges reveal unexpected coupling that may indicate hidden attack surfaces.
848
+ try {
849
+ const { openDb, closeDb } = await import('@monoes/monograph');
850
+ const dbPath = join(this.projectRoot, '.monomind', 'monograph.db');
851
+ if (existsSync(dbPath)) {
852
+ const db = openDb(dbPath);
853
+ try {
854
+ const godFileRows = db.prepare(`
855
+ SELECT n.file_path,
856
+ COUNT(DISTINCT e1.id) + COUNT(DISTINCT e2.id) AS degree
857
+ FROM nodes n
858
+ LEFT JOIN edges e1 ON e1.source_id = n.id
859
+ LEFT JOIN edges e2 ON e2.target_id = n.id
860
+ WHERE n.label NOT IN ('File','Folder','Community','Concept')
861
+ AND n.file_path IS NOT NULL
862
+ AND n.file_path NOT LIKE '%node_modules%'
863
+ AND n.file_path NOT LIKE '%/dist/%'
864
+ AND n.file_path NOT LIKE '%.test.%'
865
+ AND n.file_path NOT LIKE '%.spec.%'
866
+ GROUP BY n.file_path
867
+ ORDER BY degree DESC
868
+ LIMIT 5
869
+ `).all();
870
+ const surpriseRows = db.prepare(`
871
+ SELECT n1.name as src_name, n2.name as tgt_name, e.relation, e.confidence_score,
872
+ n1.file_path as src_file, n2.file_path as tgt_file
873
+ FROM edges e
874
+ JOIN nodes n1 ON n1.id = e.source_id
875
+ JOIN nodes n2 ON n2.id = e.target_id
876
+ WHERE e.confidence != 'EXTRACTED'
877
+ AND n1.community_id IS NOT NULL
878
+ AND n2.community_id IS NOT NULL
879
+ AND n1.community_id != n2.community_id
880
+ ORDER BY e.confidence_score ASC
881
+ LIMIT 5
882
+ `).all();
883
+ if (godFileRows.length > 0) {
884
+ audit['priorityScanTargets'] = godFileRows.map(r => ({
885
+ file: r.file_path.replace(this.projectRoot + '/', '').replace(this.projectRoot + '\\', ''),
886
+ degree: r.degree,
887
+ reason: 'high-centrality: vulnerability here affects the most consumers',
888
+ }));
889
+ }
890
+ if (surpriseRows.length > 0) {
891
+ audit['unexpectedCoupling'] = surpriseRows.map(r => ({
892
+ edge: `${r.src_name} --${r.relation}--> ${r.tgt_name}`,
893
+ srcFile: r.src_file ?? '(unknown)',
894
+ tgtFile: r.tgt_file ?? '(unknown)',
895
+ confidenceScore: r.confidence_score,
896
+ reason: 'cross-community edge: may indicate hidden dependency or attack surface',
897
+ }));
898
+ }
899
+ }
900
+ finally {
901
+ closeDb(db);
902
+ }
903
+ }
904
+ }
905
+ catch { /* monograph unavailable — skip graph enrichment */ }
791
906
  const auditFileTmp = auditFile + '.tmp';
792
907
  writeFileSync(auditFileTmp, JSON.stringify(audit, null, 2));
793
908
  renameSync(auditFileTmp, auditFile);
@@ -927,13 +1042,95 @@ export class WorkerDaemon extends EventEmitter {
927
1042
  * Local ultralearn worker (fallback when headless unavailable)
928
1043
  */
929
1044
  async runUltralearnWorkerLocal() {
930
- return {
1045
+ const result = {
931
1046
  timestamp: new Date().toISOString(),
932
1047
  mode: 'local',
933
1048
  patternsLearned: 0,
934
1049
  insightsGained: [],
935
- note: 'Install Claude Code CLI for AI-powered deep learning',
936
1050
  };
1051
+ // Enrich with monograph community clusters and bridge-node patterns for LLM context injection.
1052
+ // Bridge nodes (symbols that cross community boundaries) are architecturally significant —
1053
+ // they represent coupling points an LLM should be aware of when reasoning about change impact.
1054
+ try {
1055
+ const { openDb, closeDb, countNodes, countEdges } = await import('@monoes/monograph');
1056
+ const dbPath = join(this.projectRoot, '.monomind', 'monograph.db');
1057
+ if (existsSync(dbPath)) {
1058
+ const db = openDb(dbPath);
1059
+ try {
1060
+ const nodeCount = countNodes(db);
1061
+ const edgeCount = countEdges(db);
1062
+ const communityRows = db.prepare(`
1063
+ SELECT community_id, COUNT(*) AS member_count
1064
+ FROM nodes
1065
+ WHERE community_id IS NOT NULL
1066
+ AND label NOT IN ('File','Folder','Community','Concept')
1067
+ GROUP BY community_id
1068
+ ORDER BY member_count DESC
1069
+ LIMIT 5
1070
+ `).all();
1071
+ const bridgeRows = db.prepare(`
1072
+ SELECT n.name, n.label, n.file_path, n.start_line,
1073
+ COUNT(DISTINCT e.id) AS cross_edges
1074
+ FROM nodes n
1075
+ JOIN edges e ON (e.source_id = n.id OR e.target_id = n.id)
1076
+ JOIN nodes n2 ON (
1077
+ CASE WHEN e.source_id = n.id THEN e.target_id ELSE e.source_id END = n2.id
1078
+ )
1079
+ WHERE n.community_id IS NOT NULL
1080
+ AND n2.community_id IS NOT NULL
1081
+ AND n.community_id != n2.community_id
1082
+ AND n.label NOT IN ('File','Folder','Community','Concept')
1083
+ AND (n.file_path IS NULL OR (
1084
+ n.file_path NOT LIKE '%node_modules%'
1085
+ AND n.file_path NOT LIKE '%/dist/%'
1086
+ AND n.file_path NOT LIKE '%.test.%'
1087
+ AND n.file_path NOT LIKE '%.spec.%'
1088
+ ))
1089
+ GROUP BY n.id
1090
+ ORDER BY cross_edges DESC
1091
+ LIMIT 5
1092
+ `).all();
1093
+ const insights = result['insightsGained'];
1094
+ if (communityRows.length > 0) {
1095
+ insights.push({
1096
+ category: 'community_clusters',
1097
+ description: `Top ${communityRows.length} community clusters by size`,
1098
+ items: communityRows.map(r => ({
1099
+ communityId: r.community_id,
1100
+ memberCount: r.member_count,
1101
+ })),
1102
+ });
1103
+ }
1104
+ if (bridgeRows.length > 0) {
1105
+ insights.push({
1106
+ category: 'bridge_nodes',
1107
+ description: `Top ${bridgeRows.length} bridge nodes crossing community boundaries (high coupling risk)`,
1108
+ items: bridgeRows.map(r => {
1109
+ const loc = r.file_path
1110
+ ? (r.start_line != null ? `${r.file_path}:${r.start_line}` : r.file_path)
1111
+ : '(unknown)';
1112
+ return {
1113
+ name: r.name,
1114
+ label: r.label,
1115
+ location: loc,
1116
+ crossCommunityEdges: r.cross_edges,
1117
+ };
1118
+ }),
1119
+ });
1120
+ result['patternsLearned'] = bridgeRows.length + communityRows.length;
1121
+ }
1122
+ result['graph'] = { nodes: nodeCount, edges: edgeCount };
1123
+ }
1124
+ finally {
1125
+ closeDb(db);
1126
+ }
1127
+ }
1128
+ else {
1129
+ result['note'] = 'Monograph index not built — run `monomind monograph build` for deep learning';
1130
+ }
1131
+ }
1132
+ catch { /* monograph unavailable — return minimal result */ }
1133
+ return result;
937
1134
  }
938
1135
  /**
939
1136
  * Local refactor worker (fallback when headless unavailable)
@@ -951,13 +1148,106 @@ export class WorkerDaemon extends EventEmitter {
951
1148
  * Local deepdive worker (fallback when headless unavailable)
952
1149
  */
953
1150
  async runDeepdiveWorkerLocal() {
954
- return {
1151
+ const deepdiveFile = join(this.projectRoot, '.monomind', 'metrics', 'deepdive.json');
1152
+ const metricsDir = join(this.projectRoot, '.monomind', 'metrics');
1153
+ if (!existsSync(metricsDir)) {
1154
+ mkdirSync(metricsDir, { recursive: true });
1155
+ }
1156
+ const result = {
955
1157
  timestamp: new Date().toISOString(),
956
1158
  mode: 'local',
957
- analysisDepth: 'shallow',
1159
+ analysisDepth: 'graph',
958
1160
  findings: [],
959
- note: 'Install Claude Code CLI for AI-powered deep code analysis',
960
1161
  };
1162
+ // Enrich with monograph god nodes and high-degree file analysis for LLM context injection.
1163
+ // Lazy-import to avoid hard dependency; silently skip on any error.
1164
+ try {
1165
+ const { openDb, closeDb, countNodes, countEdges } = await import('@monoes/monograph');
1166
+ const dbPath = join(this.projectRoot, '.monomind', 'monograph.db');
1167
+ if (existsSync(dbPath)) {
1168
+ const db = openDb(dbPath);
1169
+ try {
1170
+ const nodeCount = countNodes(db);
1171
+ const edgeCount = countEdges(db);
1172
+ const godNodeRows = db.prepare(`
1173
+ SELECT n.name, n.file_path, n.label,
1174
+ COUNT(DISTINCT e1.id) + COUNT(DISTINCT e2.id) AS degree
1175
+ FROM nodes n
1176
+ LEFT JOIN edges e1 ON e1.source_id = n.id
1177
+ LEFT JOIN edges e2 ON e2.target_id = n.id
1178
+ WHERE n.label NOT IN ('File','Folder','Community','Concept')
1179
+ AND (n.file_path IS NULL OR (
1180
+ n.file_path NOT LIKE '%node_modules%'
1181
+ AND n.file_path NOT LIKE '%/dist/%'
1182
+ AND n.file_path NOT LIKE '%.test.%'
1183
+ AND n.file_path NOT LIKE '%.spec.%'
1184
+ ))
1185
+ GROUP BY n.id
1186
+ ORDER BY degree DESC
1187
+ LIMIT 5
1188
+ `).all();
1189
+ const godNodes = godNodeRows.map(r => ({
1190
+ name: r.name,
1191
+ label: r.label,
1192
+ file: r.file_path ?? '(unknown)',
1193
+ degree: r.degree,
1194
+ }));
1195
+ const fileRows = db.prepare(`
1196
+ SELECT n.file_path,
1197
+ COUNT(DISTINCT e2.id) AS in_deg,
1198
+ COUNT(DISTINCT e1.id) AS out_deg
1199
+ FROM nodes n
1200
+ LEFT JOIN edges e1 ON e1.source_id = n.id
1201
+ LEFT JOIN edges e2 ON e2.target_id = n.id
1202
+ WHERE n.label = 'File'
1203
+ AND n.file_path NOT LIKE '%node_modules%'
1204
+ AND n.file_path NOT LIKE '%/dist/%'
1205
+ AND n.file_path NOT LIKE '%.test.%'
1206
+ AND n.file_path NOT LIKE '%.spec.%'
1207
+ GROUP BY n.id
1208
+ ORDER BY (in_deg + out_deg) DESC
1209
+ LIMIT 5
1210
+ `).all();
1211
+ const highDegFiles = fileRows.map(r => ({
1212
+ file: r.file_path
1213
+ .replace(this.projectRoot + '/', '')
1214
+ .replace(this.projectRoot + '\\', ''),
1215
+ inDegree: r.in_deg,
1216
+ outDegree: r.out_deg,
1217
+ totalDegree: r.in_deg + r.out_deg,
1218
+ }));
1219
+ const findings = [];
1220
+ if (godNodes.length > 0) {
1221
+ findings.push({
1222
+ category: 'god_nodes',
1223
+ description: `Top ${godNodes.length} high-centrality symbols (most imported/referenced)`,
1224
+ items: godNodes,
1225
+ });
1226
+ }
1227
+ if (highDegFiles.length > 0) {
1228
+ findings.push({
1229
+ category: 'high_degree_files',
1230
+ description: `Top ${highDegFiles.length} files by total edge degree (import + export connections)`,
1231
+ items: highDegFiles,
1232
+ });
1233
+ }
1234
+ result['graph'] = { nodes: nodeCount, edges: edgeCount };
1235
+ result['findings'] = findings;
1236
+ result['analysisDepth'] = 'graph';
1237
+ }
1238
+ finally {
1239
+ closeDb(db);
1240
+ }
1241
+ }
1242
+ else {
1243
+ result['note'] = 'Monograph index not built — run `monomind monograph build` for deep analysis';
1244
+ }
1245
+ }
1246
+ catch { /* monograph unavailable — return minimal result */ }
1247
+ const deepdiveFileTmp = deepdiveFile + '.tmp';
1248
+ writeFileSync(deepdiveFileTmp, JSON.stringify(result, null, 2));
1249
+ renameSync(deepdiveFileTmp, deepdiveFile);
1250
+ return result;
961
1251
  }
962
1252
  /**
963
1253
  * Local benchmark worker
@@ -1 +1 @@
1
- {"version":3,"file":"worker-daemon.js","sourceRoot":"","sources":["../../../src/services/worker-daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-daemon.js","sourceRoot":"","sources":["../../../src/services/worker-daemon.ts"],"names":[],"mappings":"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"}
@@ -137,7 +137,7 @@ export function deserializeCFP(data) {
137
137
  export function validateCFP(cfp) {
138
138
  const errors = [];
139
139
  if (cfp.magic !== 'CFP1') {
140
- errors.push('Invalid magic bytes');
140
+ errors.push(`Invalid magic bytes: ${cfp.magic}`);
141
141
  }
142
142
  if (!cfp.version) {
143
143
  errors.push('Missing version');