@planu/cli 0.58.0 → 0.59.1

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 (108) hide show
  1. package/dist/config/version.d.ts.map +1 -1
  2. package/dist/config/version.js +10 -2
  3. package/dist/config/version.js.map +1 -1
  4. package/dist/config/version.ts +9 -2
  5. package/dist/engine/event-detector.d.ts.map +1 -1
  6. package/dist/engine/event-detector.js +8 -2
  7. package/dist/engine/event-detector.js.map +1 -1
  8. package/dist/engine/hooks/debouncer.d.ts.map +1 -1
  9. package/dist/engine/hooks/debouncer.js +3 -1
  10. package/dist/engine/hooks/debouncer.js.map +1 -1
  11. package/dist/engine/hooks/event-bus.d.ts.map +1 -1
  12. package/dist/engine/hooks/event-bus.js +7 -1
  13. package/dist/engine/hooks/event-bus.js.map +1 -1
  14. package/dist/engine/hooks/file-watcher.js +2 -2
  15. package/dist/engine/hooks/file-watcher.js.map +1 -1
  16. package/dist/engine/hooks/handlers/on-commit.d.ts.map +1 -1
  17. package/dist/engine/hooks/handlers/on-commit.js +9 -6
  18. package/dist/engine/hooks/handlers/on-commit.js.map +1 -1
  19. package/dist/engine/hooks/handlers/on-impl-change.d.ts +4 -4
  20. package/dist/engine/hooks/handlers/on-impl-change.d.ts.map +1 -1
  21. package/dist/engine/hooks/handlers/on-impl-change.js +16 -8
  22. package/dist/engine/hooks/handlers/on-impl-change.js.map +1 -1
  23. package/dist/engine/hooks/handlers/on-push-check.d.ts +10 -2
  24. package/dist/engine/hooks/handlers/on-push-check.d.ts.map +1 -1
  25. package/dist/engine/hooks/handlers/on-push-check.js +35 -10
  26. package/dist/engine/hooks/handlers/on-push-check.js.map +1 -1
  27. package/dist/engine/hooks/handlers/on-save.d.ts.map +1 -1
  28. package/dist/engine/hooks/handlers/on-save.js +7 -3
  29. package/dist/engine/hooks/handlers/on-save.js.map +1 -1
  30. package/dist/engine/hooks/handlers/on-security-check.d.ts +26 -7
  31. package/dist/engine/hooks/handlers/on-security-check.d.ts.map +1 -1
  32. package/dist/engine/hooks/handlers/on-security-check.js +93 -27
  33. package/dist/engine/hooks/handlers/on-security-check.js.map +1 -1
  34. package/dist/engine/hooks/hook-engine.d.ts +8 -1
  35. package/dist/engine/hooks/hook-engine.d.ts.map +1 -1
  36. package/dist/engine/hooks/hook-engine.js +12 -1
  37. package/dist/engine/hooks/hook-engine.js.map +1 -1
  38. package/dist/engine/hooks/index.d.ts +5 -0
  39. package/dist/engine/hooks/index.d.ts.map +1 -1
  40. package/dist/engine/hooks/index.js +7 -0
  41. package/dist/engine/hooks/index.js.map +1 -1
  42. package/dist/engine/pdf/html-to-pdf.d.ts.map +1 -1
  43. package/dist/engine/pdf/html-to-pdf.js +1 -1
  44. package/dist/engine/pdf/html-to-pdf.js.map +1 -1
  45. package/dist/engine/workers/handlers/documentation.d.ts.map +1 -1
  46. package/dist/engine/workers/handlers/documentation.js +12 -6
  47. package/dist/engine/workers/handlers/documentation.js.map +1 -1
  48. package/dist/engine/workers/worker-engine.d.ts.map +1 -1
  49. package/dist/engine/workers/worker-engine.js +19 -10
  50. package/dist/engine/workers/worker-engine.js.map +1 -1
  51. package/dist/storage/checkpoint-store.d.ts.map +1 -1
  52. package/dist/storage/checkpoint-store.js +11 -1
  53. package/dist/storage/checkpoint-store.js.map +1 -1
  54. package/dist/storage/decision-store.d.ts.map +1 -1
  55. package/dist/storage/decision-store.js +7 -4
  56. package/dist/storage/decision-store.js.map +1 -1
  57. package/dist/storage/global-store.d.ts.map +1 -1
  58. package/dist/storage/global-store.js +63 -46
  59. package/dist/storage/global-store.js.map +1 -1
  60. package/dist/storage/hooks-store.d.ts.map +1 -1
  61. package/dist/storage/hooks-store.js +12 -8
  62. package/dist/storage/hooks-store.js.map +1 -1
  63. package/dist/storage/knowledge-store/sessions.d.ts.map +1 -1
  64. package/dist/storage/knowledge-store/sessions.js +25 -18
  65. package/dist/storage/knowledge-store/sessions.js.map +1 -1
  66. package/dist/storage/risk-store.d.ts.map +1 -1
  67. package/dist/storage/risk-store.js +12 -5
  68. package/dist/storage/risk-store.js.map +1 -1
  69. package/dist/storage/session-store.d.ts.map +1 -1
  70. package/dist/storage/session-store.js +8 -1
  71. package/dist/storage/session-store.js.map +1 -1
  72. package/dist/storage/trash-store.d.ts.map +1 -1
  73. package/dist/storage/trash-store.js +15 -4
  74. package/dist/storage/trash-store.js.map +1 -1
  75. package/dist/storage/usage-store.d.ts.map +1 -1
  76. package/dist/storage/usage-store.js +22 -20
  77. package/dist/storage/usage-store.js.map +1 -1
  78. package/dist/storage/vector-store/json-fallback.js +1 -1
  79. package/dist/storage/vector-store/json-fallback.js.map +1 -1
  80. package/dist/storage/worker-store.d.ts.map +1 -1
  81. package/dist/storage/worker-store.js +48 -43
  82. package/dist/storage/worker-store.js.map +1 -1
  83. package/dist/tools/auto-reconcile.d.ts.map +1 -1
  84. package/dist/tools/auto-reconcile.js +14 -1
  85. package/dist/tools/auto-reconcile.js.map +1 -1
  86. package/dist/tools/create-spec/spec-builder.js +3 -1
  87. package/dist/tools/create-spec/spec-builder.js.map +1 -1
  88. package/dist/tools/detect-drift.d.ts.map +1 -1
  89. package/dist/tools/detect-drift.js +12 -0
  90. package/dist/tools/detect-drift.js.map +1 -1
  91. package/dist/tools/manage-hooks.d.ts.map +1 -1
  92. package/dist/tools/manage-hooks.js +12 -0
  93. package/dist/tools/manage-hooks.js.map +1 -1
  94. package/dist/tools/reconcile-spec.d.ts.map +1 -1
  95. package/dist/tools/reconcile-spec.js +3 -0
  96. package/dist/tools/reconcile-spec.js.map +1 -1
  97. package/dist/tools/safe-handler.d.ts.map +1 -1
  98. package/dist/tools/safe-handler.js +8 -2
  99. package/dist/tools/safe-handler.js.map +1 -1
  100. package/dist/tools/start-hooks.d.ts.map +1 -1
  101. package/dist/tools/start-hooks.js +120 -10
  102. package/dist/tools/start-hooks.js.map +1 -1
  103. package/dist/tools/update-status.js +4 -4
  104. package/dist/tools/update-status.js.map +1 -1
  105. package/dist/types/file-hooks.d.ts +1 -1
  106. package/dist/types/file-hooks.d.ts.map +1 -1
  107. package/package.json +1 -1
  108. package/src/config/version.ts +9 -2
@@ -9,31 +9,50 @@ export declare function isSecuritySensitiveFile(path: string): boolean;
9
9
  */
10
10
  export declare function isDependencyFile(path: string): boolean;
11
11
  /**
12
- * Returns true if the security check is currently in cooldown.
12
+ * Returns true if the security check is currently in cooldown for the given project.
13
13
  */
14
- export declare function isInCooldown(): boolean;
15
14
  /**
16
- * Returns remaining cooldown time in seconds (0 if not in cooldown).
15
+ * Returns true if any project's security check is in cooldown (no arg),
16
+ * or if the specific project's check is in cooldown (with arg).
17
17
  */
18
- export declare function getCooldownRemainingSeconds(): number;
18
+ export declare function isInCooldown(projectPath?: string): boolean;
19
+ /**
20
+ * Returns remaining cooldown time in seconds for the given project (or last project if omitted).
21
+ */
22
+ export declare function getCooldownRemainingSeconds(projectPath?: string): number;
19
23
  /**
20
24
  * Reset the security cooldown timestamp.
25
+ * If projectPath is provided, resets only that project.
26
+ * If omitted, resets all projects.
27
+ * Useful for testing.
28
+ */
29
+ export declare function resetSecurityCooldown(projectPath?: string): void;
30
+ /**
31
+ * Reset security cooldown for all projects.
21
32
  * Useful for testing.
22
33
  */
23
- export declare function resetSecurityCooldown(): void;
34
+ export declare function resetAllSecurityCooldowns(): void;
24
35
  /**
25
36
  * Build WorkerFindings for dependency file changes.
26
37
  */
27
38
  export declare function buildDependencyHealthFindings(depFiles: string[]): WorkerFinding[];
28
39
  /**
29
40
  * Get the cached result from the last security check run.
41
+ * If projectPath is omitted, returns the most recently set result across all projects.
30
42
  */
31
- export declare function getLastSecurityCheckResult(): WorkerRunResult | null;
43
+ export declare function getLastSecurityCheckResult(projectPath?: string): WorkerRunResult | null;
32
44
  /**
33
45
  * Reset the security check result cache.
46
+ * If projectPath is provided, clears only that project's cache.
47
+ * If omitted, clears all projects.
48
+ * Useful for testing.
49
+ */
50
+ export declare function resetSecurityCheckCache(projectPath?: string): void;
51
+ /**
52
+ * Reset security check result cache for all projects.
34
53
  * Useful for testing.
35
54
  */
36
- export declare function resetSecurityCheckCache(): void;
55
+ export declare function resetAllSecurityCheckCaches(): void;
37
56
  /**
38
57
  * Handle on-security-check event for security-sensitive file changes.
39
58
  * Implements a 5-minute cooldown to avoid repeated alerts.
@@ -1 +1 @@
1
- {"version":3,"file":"on-security-check.d.ts","sourceRoot":"","sources":["../../../../src/engine/hooks/handlers/on-security-check.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AA+ChF;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG7D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGtD;AAMD;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAKtC;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAMpD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAMD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAQjF;AAMD;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,eAAe,GAAG,IAAI,CAEnE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAMD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6D7F"}
1
+ {"version":3,"file":"on-security-check.d.ts","sourceRoot":"","sources":["../../../../src/engine/hooks/handlers/on-security-check.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AA+ChF;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG7D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGtD;AAMD;;GAEG;AACH;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAgB1D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBxE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAMhE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAMD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAQjF;AAMD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CASvF;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAMlE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAMD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyE7F"}
@@ -31,10 +31,10 @@ const DEPENDENCY_FILES = [
31
31
  /** Cooldown window: 5 minutes in milliseconds */
32
32
  const SECURITY_COOLDOWN_MS = 5 * 60 * 1000;
33
33
  // ---------------------------------------------------------------------------
34
- // Module-level state
34
+ // Module-level state (keyed by projectPath for per-project isolation)
35
35
  // ---------------------------------------------------------------------------
36
- let lastSecurityCheckAt = 0;
37
- let lastSecurityCheckResult = null;
36
+ const lastSecurityCheckAtMap = new Map();
37
+ const lastSecurityCheckResultMap = new Map();
38
38
  // ---------------------------------------------------------------------------
39
39
  // Path classification
40
40
  // ---------------------------------------------------------------------------
@@ -56,30 +56,74 @@ export function isDependencyFile(path) {
56
56
  // Cooldown management
57
57
  // ---------------------------------------------------------------------------
58
58
  /**
59
- * Returns true if the security check is currently in cooldown.
59
+ * Returns true if the security check is currently in cooldown for the given project.
60
60
  */
61
- export function isInCooldown() {
62
- if (lastSecurityCheckAt === 0) {
63
- return false;
61
+ /**
62
+ * Returns true if any project's security check is in cooldown (no arg),
63
+ * or if the specific project's check is in cooldown (with arg).
64
+ */
65
+ export function isInCooldown(projectPath) {
66
+ if (projectPath !== undefined) {
67
+ const lastAt = lastSecurityCheckAtMap.get(projectPath) ?? 0;
68
+ if (lastAt === 0) {
69
+ return false;
70
+ }
71
+ return Date.now() - lastAt < SECURITY_COOLDOWN_MS;
64
72
  }
65
- return Date.now() - lastSecurityCheckAt < SECURITY_COOLDOWN_MS;
73
+ // No project specified: return true if any project is in cooldown
74
+ const now = Date.now();
75
+ for (const lastAt of lastSecurityCheckAtMap.values()) {
76
+ if (lastAt > 0 && now - lastAt < SECURITY_COOLDOWN_MS) {
77
+ return true;
78
+ }
79
+ }
80
+ return false;
66
81
  }
67
82
  /**
68
- * Returns remaining cooldown time in seconds (0 if not in cooldown).
83
+ * Returns remaining cooldown time in seconds for the given project (or last project if omitted).
69
84
  */
70
- export function getCooldownRemainingSeconds() {
71
- if (!isInCooldown()) {
72
- return 0;
85
+ export function getCooldownRemainingSeconds(projectPath) {
86
+ if (projectPath !== undefined) {
87
+ if (!isInCooldown(projectPath)) {
88
+ return 0;
89
+ }
90
+ const lastAt = lastSecurityCheckAtMap.get(projectPath) ?? 0;
91
+ const elapsed = Date.now() - lastAt;
92
+ return Math.max(0, Math.round((SECURITY_COOLDOWN_MS - elapsed) / 1000));
73
93
  }
74
- const elapsed = Date.now() - lastSecurityCheckAt;
75
- return Math.max(0, Math.round((SECURITY_COOLDOWN_MS - elapsed) / 1000));
94
+ // No project specified: return max remaining across all projects
95
+ let max = 0;
96
+ const now = Date.now();
97
+ for (const lastAt of lastSecurityCheckAtMap.values()) {
98
+ if (lastAt > 0) {
99
+ const remaining = Math.max(0, Math.round((SECURITY_COOLDOWN_MS - (now - lastAt)) / 1000));
100
+ if (remaining > max) {
101
+ max = remaining;
102
+ }
103
+ }
104
+ }
105
+ return max;
76
106
  }
77
107
  /**
78
108
  * Reset the security cooldown timestamp.
109
+ * If projectPath is provided, resets only that project.
110
+ * If omitted, resets all projects.
79
111
  * Useful for testing.
80
112
  */
81
- export function resetSecurityCooldown() {
82
- lastSecurityCheckAt = 0;
113
+ export function resetSecurityCooldown(projectPath) {
114
+ if (projectPath !== undefined) {
115
+ lastSecurityCheckAtMap.delete(projectPath);
116
+ }
117
+ else {
118
+ lastSecurityCheckAtMap.clear();
119
+ }
120
+ }
121
+ /**
122
+ * Reset security cooldown for all projects.
123
+ * Useful for testing.
124
+ */
125
+ export function resetAllSecurityCooldowns() {
126
+ lastSecurityCheckAtMap.clear();
83
127
  }
84
128
  // ---------------------------------------------------------------------------
85
129
  // Dependency health findings
@@ -101,16 +145,38 @@ export function buildDependencyHealthFindings(depFiles) {
101
145
  // ---------------------------------------------------------------------------
102
146
  /**
103
147
  * Get the cached result from the last security check run.
148
+ * If projectPath is omitted, returns the most recently set result across all projects.
104
149
  */
105
- export function getLastSecurityCheckResult() {
106
- return lastSecurityCheckResult;
150
+ export function getLastSecurityCheckResult(projectPath) {
151
+ if (projectPath !== undefined) {
152
+ return lastSecurityCheckResultMap.get(projectPath) ?? null;
153
+ }
154
+ let last = null;
155
+ for (const v of lastSecurityCheckResultMap.values()) {
156
+ last = v ?? null;
157
+ }
158
+ return last;
107
159
  }
108
160
  /**
109
161
  * Reset the security check result cache.
162
+ * If projectPath is provided, clears only that project's cache.
163
+ * If omitted, clears all projects.
164
+ * Useful for testing.
165
+ */
166
+ export function resetSecurityCheckCache(projectPath) {
167
+ if (projectPath !== undefined) {
168
+ lastSecurityCheckResultMap.delete(projectPath);
169
+ }
170
+ else {
171
+ lastSecurityCheckResultMap.clear();
172
+ }
173
+ }
174
+ /**
175
+ * Reset security check result cache for all projects.
110
176
  * Useful for testing.
111
177
  */
112
- export function resetSecurityCheckCache() {
113
- lastSecurityCheckResult = null;
178
+ export function resetAllSecurityCheckCaches() {
179
+ lastSecurityCheckResultMap.clear();
114
180
  }
115
181
  // ---------------------------------------------------------------------------
116
182
  // Handler
@@ -141,19 +207,19 @@ export function handleOnSecurityCheck(event, projectPath) {
141
207
  if (!isSecuritySensitiveFile(event.path)) {
142
208
  // Still cache result if dependency findings exist
143
209
  if (findings.length > 0) {
144
- lastSecurityCheckResult = buildRunResult(startedAt, startMs, 'success', findings, 1);
210
+ lastSecurityCheckResultMap.set(projectPath, buildRunResult(startedAt, startMs, 'success', findings, 1));
145
211
  }
146
212
  return Promise.resolve();
147
213
  }
148
- if (isInCooldown()) {
149
- const remaining = getCooldownRemainingSeconds();
214
+ if (isInCooldown(projectPath)) {
215
+ const remaining = getCooldownRemainingSeconds(projectPath);
150
216
  console.warn(`[hooks] on-security-check: cooldown active, skipping check for ${event.path} (${String(remaining)}s remaining)`);
151
217
  if (findings.length > 0) {
152
- lastSecurityCheckResult = buildRunResult(startedAt, startMs, 'skipped', findings, 1);
218
+ lastSecurityCheckResultMap.set(projectPath, buildRunResult(startedAt, startMs, 'skipped', findings, 1));
153
219
  }
154
220
  return Promise.resolve();
155
221
  }
156
- lastSecurityCheckAt = Date.now();
222
+ lastSecurityCheckAtMap.set(projectPath, Date.now());
157
223
  console.warn(`[hooks] on-security-check: security check triggered for ${event.path} type=${event.type} project=${projectPath}`);
158
224
  findings.push({
159
225
  severity: 'high',
@@ -162,11 +228,11 @@ export function handleOnSecurityCheck(event, projectPath) {
162
228
  suggestion: 'Review security-sensitive file changes carefully before merging',
163
229
  category: 'security',
164
230
  });
165
- lastSecurityCheckResult = buildRunResult(startedAt, startMs, 'success', findings, 1);
231
+ lastSecurityCheckResultMap.set(projectPath, buildRunResult(startedAt, startMs, 'success', findings, 1));
166
232
  }
167
233
  catch (err) {
168
234
  console.warn(`[hooks] on-security-check: unexpected error for ${event.path}`, err);
169
- lastSecurityCheckResult = buildRunResult(startedAt, startMs, 'error', [], 0, String(err));
235
+ lastSecurityCheckResultMap.set(projectPath, buildRunResult(startedAt, startMs, 'error', [], 0, String(err)));
170
236
  }
171
237
  return Promise.resolve();
172
238
  }
@@ -1 +1 @@
1
- {"version":3,"file":"on-security-check.js","sourceRoot":"","sources":["../../../../src/engine/hooks/handlers/on-security-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"on-security-check.js","sourceRoot":"","sources":["../../../../src/engine/hooks/handlers/on-security-check.ts"],"names":[],"mappings":"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"}
@@ -25,9 +25,16 @@ export declare class HookEngine {
25
25
  */
26
26
  start(): void;
27
27
  /**
28
- * Stop the engine.
28
+ * Stop the engine. Non-blocking by design — in-flight dispatches continue
29
+ * until their try/finally decrements pendingCount. Use drain() to await
30
+ * full quiescence before teardown.
29
31
  */
30
32
  stop(): void;
33
+ /**
34
+ * Wait for all pending handler executions to complete.
35
+ * Polls at 10ms intervals — intended for graceful shutdown only.
36
+ */
37
+ drain(): Promise<void>;
31
38
  /**
32
39
  * Dispatch an event to all matching handlers (async, non-blocking).
33
40
  * Each handler is wrapped in try/catch — errors don't propagate.
@@ -1 +1 @@
1
- {"version":3,"file":"hook-engine.d.ts","sourceRoot":"","sources":["../../../src/engine/hooks/hook-engine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,iBAAiB,EAEjB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C;;;GAGG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAK;gBAEb,QAAQ,CAAC,EAAE,QAAQ;IAI/B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAkB1C;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IASjC;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,IAAI,IAAI;IAIZ;;;OAGG;IACG,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAuD1F;;OAEG;IACH,MAAM,IAAI,gBAAgB;IAc1B;;OAEG;IACH,WAAW,IAAI,QAAQ;IAIvB;;OAEG;IACH,eAAe,IAAI,MAAM;IAQzB,OAAO,CAAC,eAAe;CAcxB"}
1
+ {"version":3,"file":"hook-engine.d.ts","sourceRoot":"","sources":["../../../src/engine/hooks/hook-engine.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,iBAAiB,EAEjB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C;;;GAGG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAK;gBAEb,QAAQ,CAAC,EAAE,QAAQ;IAI/B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAkB1C;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IASjC;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,IAAI,IAAI,IAAI;IAIZ;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B;;;OAGG;IACG,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAuD1F;;OAEG;IACH,MAAM,IAAI,gBAAgB;IAc1B;;OAEG;IACH,WAAW,IAAI,QAAQ;IAIvB;;OAEG;IACH,eAAe,IAAI,MAAM;IAQzB,OAAO,CAAC,eAAe;CAcxB"}
@@ -54,11 +54,22 @@ export class HookEngine {
54
54
  this.running = true;
55
55
  }
56
56
  /**
57
- * Stop the engine.
57
+ * Stop the engine. Non-blocking by design — in-flight dispatches continue
58
+ * until their try/finally decrements pendingCount. Use drain() to await
59
+ * full quiescence before teardown.
58
60
  */
59
61
  stop() {
60
62
  this.running = false;
61
63
  }
64
+ /**
65
+ * Wait for all pending handler executions to complete.
66
+ * Polls at 10ms intervals — intended for graceful shutdown only.
67
+ */
68
+ async drain() {
69
+ while (this.pendingCount > 0) {
70
+ await new Promise((resolve) => setTimeout(resolve, 10));
71
+ }
72
+ }
62
73
  /**
63
74
  * Dispatch an event to all matching handlers (async, non-blocking).
64
75
  * Each handler is wrapped in try/catch — errors don't propagate.
@@ -1 +1 @@
1
- {"version":3,"file":"hook-engine.js","sourceRoot":"","sources":["../../../src/engine/hooks/hook-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-engine.js","sourceRoot":"","sources":["../../../src/engine/hooks/hook-engine.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,9 @@ export { HookEngine } from './hook-engine.js';
12
12
  export { EventBus } from './event-bus.js';
13
13
  export { handleOnTestPass, parseCoverageSummary, computeCoverageDelta, mapFilesToSpecs, clearPreviousCoverage, } from './handlers/on-test-pass.js';
14
14
  export { handleOnCommit, installGitHook, uninstallGitHook } from './handlers/on-commit.js';
15
+ export { handleOnImplChange, isSourceFile, findRelatedSpecs, isRateLimited as isImplChangeRateLimited, clearRateLimitTimestamps as clearImplChangeTimestamps, } from './handlers/on-impl-change.js';
16
+ export { handleOnSpecChange, isSpecFile } from './handlers/on-spec-change.js';
17
+ export { handleStatusChange, emitSpecStatusChange, subscribeStatusChangeHandler, extractStatusChangePayload, isDashboardRateLimited, clearRegenTimestamps, } from './handlers/on-status-change.js';
18
+ export { handleOnPushCheck, isSpecRelatedFile, isSecuritySensitiveFilePath, computeDriftScore, detectSecuritySensitivePaths, getLastPushCheckResult, resetPushCheckCache, } from './handlers/on-push-check.js';
19
+ export { handleOnSecurityCheck, isSecuritySensitiveFile, isDependencyFile, isInCooldown as isSecurityCooldown, resetSecurityCooldown, getLastSecurityCheckResult, resetSecurityCheckCache, } from './handlers/on-security-check.js';
15
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/engine/hooks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjF,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/engine/hooks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjF,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3F,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,aAAa,IAAI,uBAAuB,EACxC,wBAAwB,IAAI,yBAAyB,GACtD,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,IAAI,kBAAkB,EAClC,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,iCAAiC,CAAC"}
@@ -15,4 +15,11 @@ export { HookEngine } from './hook-engine.js';
15
15
  export { EventBus } from './event-bus.js';
16
16
  export { handleOnTestPass, parseCoverageSummary, computeCoverageDelta, mapFilesToSpecs, clearPreviousCoverage, } from './handlers/on-test-pass.js';
17
17
  export { handleOnCommit, installGitHook, uninstallGitHook } from './handlers/on-commit.js';
18
+ // SPEC-137 — Auto-reconcile and progress tracking
19
+ export { handleOnImplChange, isSourceFile, findRelatedSpecs, isRateLimited as isImplChangeRateLimited, clearRateLimitTimestamps as clearImplChangeTimestamps, } from './handlers/on-impl-change.js';
20
+ export { handleOnSpecChange, isSpecFile } from './handlers/on-spec-change.js';
21
+ export { handleStatusChange, emitSpecStatusChange, subscribeStatusChangeHandler, extractStatusChangePayload, isDashboardRateLimited, clearRegenTimestamps, } from './handlers/on-status-change.js';
22
+ // SPEC-138 — Automated drift detection and security audits
23
+ export { handleOnPushCheck, isSpecRelatedFile, isSecuritySensitiveFilePath, computeDriftScore, detectSecuritySensitivePaths, getLastPushCheckResult, resetPushCheckCache, } from './handlers/on-push-check.js';
24
+ export { handleOnSecurityCheck, isSecuritySensitiveFile, isDependencyFile, isInCooldown as isSecurityCooldown, resetSecurityCooldown, getLastSecurityCheckResult, resetSecurityCheckCache, } from './handlers/on-security-check.js';
18
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine/hooks/index.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjF,8BAA8B;AAC9B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,kCAAkC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine/hooks/index.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjF,8BAA8B;AAC9B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,kCAAkC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3F,kDAAkD;AAClD,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,aAAa,IAAI,uBAAuB,EACxC,wBAAwB,IAAI,yBAAyB,GACtD,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAExC,2DAA2D;AAC3D,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,IAAI,kBAAkB,EAClC,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,iCAAiC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"html-to-pdf.d.ts","sourceRoot":"","sources":["../../../src/engine/pdf/html-to-pdf.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA8EhE,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC5B,OAAO,CAAC,SAAS,CAAC,CA0CpB"}
1
+ {"version":3,"file":"html-to-pdf.d.ts","sourceRoot":"","sources":["../../../src/engine/pdf/html-to-pdf.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA8EhE,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC5B,OAAO,CAAC,SAAS,CAAC,CA6CpB"}
@@ -81,7 +81,7 @@ export async function htmlToPdf(htmlPath, options) {
81
81
  const outputPath = resolveOutputPath(absoluteHtmlPath, opts.outputPath);
82
82
  const htmlContent = await readFile(absoluteHtmlPath, 'utf-8');
83
83
  const enhancedHtml = injectCssIntoHtml(htmlContent, buildPrintEnhancementCSS(opts));
84
- const tempHtmlPath = join(dirname(absoluteHtmlPath), '.print-temp.html');
84
+ const tempHtmlPath = join(dirname(absoluteHtmlPath), `.print-temp-${Date.now()}-${Math.random().toString(36).slice(2, 8)}.html`);
85
85
  await writeFile(tempHtmlPath, enhancedHtml, 'utf-8');
86
86
  const args = buildChromeArgs(tempHtmlPath, outputPath);
87
87
  const timeoutMs = opts.timeout;
@@ -1 +1 @@
1
- {"version":3,"file":"html-to-pdf.js","sourceRoot":"","sources":["../../../src/engine/pdf/html-to-pdf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"html-to-pdf.js","sourceRoot":"","sources":["../../../src/engine/pdf/html-to-pdf.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"documentation.d.ts","sourceRoot":"","sources":["../../../../src/engine/workers/handlers/documentation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAiB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA0K9E,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,eAAe,CAAC,CAuE1B"}
1
+ {"version":3,"file":"documentation.d.ts","sourceRoot":"","sources":["../../../../src/engine/workers/handlers/documentation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAiB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA0K9E,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,eAAe,CAAC,CAoF1B"}
@@ -145,6 +145,7 @@ export async function runDocumentation(projectDir, _changedFiles) {
145
145
  const allFiles = [];
146
146
  await collectFiles(projectDir, allFiles);
147
147
  let totalExports = 0;
148
+ let undocumentedExports = 0;
148
149
  for (const file of allFiles) {
149
150
  let content;
150
151
  try {
@@ -159,22 +160,26 @@ export async function runDocumentation(projectDir, _changedFiles) {
159
160
  let undocs = [];
160
161
  if (ext === '.ts' || ext === '.tsx' || ext === '.js' || ext === '.jsx') {
161
162
  undocs = checkTypeScriptDocs(lines);
163
+ // Count all export declarations in the file
164
+ totalExports += lines.filter((l) => /^export\s+(?:async\s+)?(?:function|class|const|interface|type)\s+\w+/.test(l)).length;
162
165
  }
163
166
  else if (ext === '.py') {
164
167
  undocs = checkPythonDocs(lines);
168
+ totalExports += lines.filter((l) => /^(?:def|class)\s+[^_]/.test(l)).length;
165
169
  }
166
170
  else if (ext === '.go') {
167
171
  undocs = checkGoDocs(lines);
172
+ totalExports += lines.filter((l) => /^func\s+[A-Z]/.test(l)).length;
168
173
  }
169
174
  else if (ext === '.rs') {
170
175
  undocs = checkRustDocs(lines);
176
+ totalExports += lines.filter((l) => /^pub\s+(?:async\s+)?(?:fn|struct|enum|trait)\s+\w+/.test(l)).length;
171
177
  }
172
178
  else if (ext === '.java' || ext === '.kt') {
173
179
  undocs = checkJavaDocs(lines);
180
+ totalExports += lines.filter((l) => /public\s+(?:static\s+)?(?:class|interface|(?:\w+\s+)+)\w+\s*[({]/.test(l)).length;
174
181
  }
175
- // Estimate total exports from undocs + documented
176
- // (We count exports matched minus undocumented for documented count)
177
- totalExports += undocs.length;
182
+ undocumentedExports += undocs.length;
178
183
  for (const u of undocs) {
179
184
  findings.push({
180
185
  severity: 'info',
@@ -186,12 +191,13 @@ export async function runDocumentation(projectDir, _changedFiles) {
186
191
  });
187
192
  }
188
193
  }
189
- // totalExports = undocumented count; coverage is 0% when all are undocumented
190
- const coveragePct = totalExports > 0 ? 0 : 100;
194
+ const coveragePct = totalExports > 0
195
+ ? Math.round(((totalExports - undocumentedExports) / totalExports) * 100)
196
+ : 100;
191
197
  findings.unshift({
192
198
  severity: 'info',
193
199
  file: '',
194
- message: `Documentation: ${String(totalExports)} undocumented exports found (${String(coveragePct)}% coverage)`,
200
+ message: `Documentation: ${String(undocumentedExports)} undocumented exports found (${String(coveragePct)}% coverage)`,
195
201
  category: 'missing-docs',
196
202
  });
197
203
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"documentation.js","sourceRoot":"","sources":["../../../../src/engine/workers/handlers/documentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documentation.js","sourceRoot":"","sources":["../../../../src/engine/workers/handlers/documentation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker-engine.d.ts","sourceRoot":"","sources":["../../../src/engine/workers/worker-engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,EAErB,MAAM,sBAAsB,CAAC;AAiC9B,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,KAAK,CAAyD;IACtE,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;IAE/D,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxD,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI;IAKZ,QAAQ,IAAI,OAAO;IAInB,oBAAoB,IAAI,gBAAgB,EAAE;IAI1C,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,IAAI;IAwBvE,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO;IA4CvD,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAyBpD,aAAa;IAgE3B,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,YAAY,GAAG,SAAS;IAa7E,cAAc,IAAI,MAAM;CAGzB;AAQD,wBAAgB,eAAe,IAAI,YAAY,CAG9C;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAW/D"}
1
+ {"version":3,"file":"worker-engine.d.ts","sourceRoot":"","sources":["../../../src/engine/workers/worker-engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,EAErB,MAAM,sBAAsB,CAAC;AAiC9B,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmC;IAC5D,OAAO,CAAC,KAAK,CAAyD;IACtE,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;IAE/D,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBxD,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI;IAKZ,QAAQ,IAAI,OAAO;IAInB,oBAAoB,IAAI,gBAAgB,EAAE;IAI1C,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,GAAG,IAAI;IAwBvE,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO;IA4CvD,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YA6BpD,aAAa;IAoE3B,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,YAAY,GAAG,SAAS;IAa7E,cAAc,IAAI,MAAM;CAGzB;AAQD,wBAAgB,eAAe,IAAI,YAAY,CAG9C;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAW/D"}
@@ -133,29 +133,38 @@ export class WorkerEngine {
133
133
  }
134
134
  this.processing = true;
135
135
  const results = [];
136
- while (this.queue.length > 0) {
137
- const item = this.queue.shift();
138
- /* v8 ignore next 3 -- unreachable: while loop checks length > 0 */
139
- if (!item) {
140
- break;
141
- }
142
- const result = await this.executeWorker(item.workerName, projectDir, item.changedFiles);
143
- if (result) {
144
- results.push(result);
136
+ try {
137
+ while (this.queue.length > 0) {
138
+ const item = this.queue.shift();
139
+ /* v8 ignore start -- unreachable: while loop checks length > 0 */
140
+ if (!item) {
141
+ break;
142
+ }
143
+ /* v8 ignore stop */
144
+ const result = await this.executeWorker(item.workerName, projectDir, item.changedFiles);
145
+ if (result) {
146
+ results.push(result);
147
+ }
145
148
  }
146
149
  }
147
- this.processing = false;
150
+ finally {
151
+ this.processing = false;
152
+ }
148
153
  return results;
149
154
  }
150
155
  async executeWorker(workerName, projectDir, changedFiles) {
151
156
  const worker = this.workers.find((w) => w.name === workerName);
157
+ /* v8 ignore start -- worker is always found since enqueue validates it */
152
158
  if (!worker) {
153
159
  return undefined;
154
160
  }
161
+ /* v8 ignore stop */
155
162
  const status = this.statuses.get(workerName);
163
+ /* v8 ignore start -- status is always present since enqueue validates it */
156
164
  if (!status) {
157
165
  return undefined;
158
166
  }
167
+ /* v8 ignore stop */
159
168
  const handler = HANDLER_MAP[worker.handler];
160
169
  if (!handler) {
161
170
  return {