reviewflow 3.40.0 → 3.40.2

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 (70) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/frameworks/claude/claudeInvoker.d.ts.map +1 -1
  3. package/dist/frameworks/claude/claudeInvoker.js +12 -0
  4. package/dist/frameworks/claude/claudeInvoker.js.map +1 -1
  5. package/dist/main/routes.d.ts.map +1 -1
  6. package/dist/main/routes.js +6 -2
  7. package/dist/main/routes.js.map +1 -1
  8. package/dist/modules/platform-integration/entities/webhookEvent/webhookEvent.d.ts +1 -0
  9. package/dist/modules/platform-integration/entities/webhookEvent/webhookEvent.d.ts.map +1 -1
  10. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts +1 -2
  11. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts.map +1 -1
  12. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js +129 -188
  13. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js.map +1 -1
  14. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.d.ts +1 -2
  15. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.d.ts.map +1 -1
  16. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js +129 -209
  17. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js.map +1 -1
  18. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.d.ts +71 -0
  19. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.d.ts.map +1 -0
  20. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.js +104 -0
  21. package/dist/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.js.map +1 -0
  22. package/dist/modules/platform-integration/usecases/processReviewRequest.usecase.d.ts +39 -0
  23. package/dist/modules/platform-integration/usecases/processReviewRequest.usecase.d.ts.map +1 -0
  24. package/dist/modules/platform-integration/usecases/processReviewRequest.usecase.js +45 -0
  25. package/dist/modules/platform-integration/usecases/processReviewRequest.usecase.js.map +1 -0
  26. package/dist/modules/platform-integration/usecases/processWebhook.usecase.d.ts +16 -0
  27. package/dist/modules/platform-integration/usecases/processWebhook.usecase.d.ts.map +1 -1
  28. package/dist/modules/platform-integration/usecases/processWebhook.usecase.js +44 -1
  29. package/dist/modules/platform-integration/usecases/processWebhook.usecase.js.map +1 -1
  30. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-B.acceptance.test.js +3 -3
  31. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-B.acceptance.test.js.map +1 -1
  32. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-C.acceptance.test.js +22 -2
  33. package/dist/tests/acceptance/180-quality-threshold-block-approval-iter-C.acceptance.test.js.map +1 -1
  34. package/dist/tests/acceptance/197-trusted-actor-provenance-gate.acceptance.test.js +14 -12
  35. package/dist/tests/acceptance/197-trusted-actor-provenance-gate.acceptance.test.js.map +1 -1
  36. package/dist/tests/acceptance/200-webhook-event-idempotency.acceptance.test.js +10 -8
  37. package/dist/tests/acceptance/200-webhook-event-idempotency.acceptance.test.js.map +1 -1
  38. package/dist/tests/acceptance/46-github-followup-review-on-push.acceptance.test.js +8 -6
  39. package/dist/tests/acceptance/46-github-followup-review-on-push.acceptance.test.js.map +1 -1
  40. package/dist/tests/acceptance/73-process-webhook.acceptance.test.js +2 -0
  41. package/dist/tests/acceptance/73-process-webhook.acceptance.test.js.map +1 -1
  42. package/dist/tests/acceptance/73-stage4-controller-thinning.acceptance.test.d.ts +2 -0
  43. package/dist/tests/acceptance/73-stage4-controller-thinning.acceptance.test.d.ts.map +1 -0
  44. package/dist/tests/acceptance/73-stage4-controller-thinning.acceptance.test.js +226 -0
  45. package/dist/tests/acceptance/73-stage4-controller-thinning.acceptance.test.js.map +1 -0
  46. package/dist/tests/units/frameworks/claude/claudeInvoker.test.js +15 -0
  47. package/dist/tests/units/frameworks/claude/claudeInvoker.test.js.map +1 -1
  48. package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js +50 -70
  49. package/dist/tests/units/interface-adapters/controllers/webhook/github.controller.test.js.map +1 -1
  50. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js +51 -47
  51. package/dist/tests/units/interface-adapters/controllers/webhook/gitlab.controller.test.js.map +1 -1
  52. package/dist/tests/units/modules/platform-integration/interface-adapters/controllers/webhook/gitlabIdempotency.controller.test.js +7 -5
  53. package/dist/tests/units/modules/platform-integration/interface-adapters/controllers/webhook/gitlabIdempotency.controller.test.js.map +1 -1
  54. package/dist/tests/units/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.test.d.ts +2 -0
  55. package/dist/tests/units/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.test.d.ts.map +1 -0
  56. package/dist/tests/units/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.test.js +309 -0
  57. package/dist/tests/units/modules/platform-integration/interface-adapters/controllers/webhook/webhookReply.test.js.map +1 -0
  58. package/dist/tests/units/modules/platform-integration/usecases/processReviewRequest.usecase.test.d.ts +2 -0
  59. package/dist/tests/units/modules/platform-integration/usecases/processReviewRequest.usecase.test.d.ts.map +1 -0
  60. package/dist/tests/units/modules/platform-integration/usecases/processReviewRequest.usecase.test.js +170 -0
  61. package/dist/tests/units/modules/platform-integration/usecases/processReviewRequest.usecase.test.js.map +1 -0
  62. package/dist/tests/units/modules/platform-integration/usecases/processWebhook.usecase.test.js +99 -8
  63. package/dist/tests/units/modules/platform-integration/usecases/processWebhook.usecase.test.js.map +1 -1
  64. package/package.json +1 -1
  65. package/templates/en/followup-basic/SKILL.md +12 -0
  66. package/templates/en/review-basic/SKILL.md +12 -0
  67. package/templates/en/review-with-agents/SKILL.md +12 -0
  68. package/templates/fr/followup-basic/SKILL.md +12 -0
  69. package/templates/fr/review-basic/SKILL.md +12 -0
  70. package/templates/fr/review-with-agents/SKILL.md +12 -0
@@ -8,6 +8,8 @@ function buildHarness(overrides) {
8
8
  const recordPushCalls = [];
9
9
  const checkFollowupNeededCalls = [];
10
10
  const removeWorktreeCalls = [];
11
+ const handlePlatformApprovalCalls = [];
12
+ const getQualityThresholdCalls = [];
11
13
  const deps = {
12
14
  handleClose: async (input) => {
13
15
  handleCloseCalls.push({
@@ -56,6 +58,20 @@ function buildHarness(overrides) {
56
58
  removeWorktreeCalls.push({ platform: identity.platform, sourceCheckoutPath });
57
59
  return { status: 'removed' };
58
60
  },
61
+ handlePlatformApproval: {
62
+ execute: (input) => {
63
+ handlePlatformApprovalCalls.push({
64
+ projectPath: input.projectPath,
65
+ mrId: input.mrId,
66
+ qualityThreshold: input.qualityThreshold,
67
+ });
68
+ return { kind: 'allowed' };
69
+ },
70
+ },
71
+ getQualityThreshold: (projectPath) => {
72
+ getQualityThresholdCalls.push(projectPath);
73
+ return null;
74
+ },
59
75
  logger: createStubLogger(),
60
76
  ...overrides,
61
77
  };
@@ -66,6 +82,8 @@ function buildHarness(overrides) {
66
82
  recordPushCalls,
67
83
  checkFollowupNeededCalls,
68
84
  removeWorktreeCalls,
85
+ handlePlatformApprovalCalls,
86
+ getQualityThresholdCalls,
69
87
  };
70
88
  }
71
89
  const baseClose = {
@@ -208,16 +226,89 @@ describe('processWebhook', () => {
208
226
  reason: 'review-requested-handled-by-controller',
209
227
  });
210
228
  });
211
- it('treats approve as handled by the controller', async () => {
229
+ });
230
+ describe('approve', () => {
231
+ const approveEvent = {
232
+ type: 'approve',
233
+ platform: 'gitlab',
234
+ projectPath: 'group/project',
235
+ localPath: '/checkout/project',
236
+ mergeRequestNumber: 42,
237
+ reviewId: null,
238
+ };
239
+ it('transitions to approved with the quality gate threshold and returns approved', async () => {
212
240
  const harness = buildHarness();
213
- const result = await processWebhook({
214
- type: 'approve',
215
- platform: 'gitlab',
216
- projectPath: 'group/project',
217
- localPath: '/checkout/project',
241
+ const result = await processWebhook(approveEvent, harness.deps);
242
+ expect(harness.getQualityThresholdCalls).toEqual(['/checkout/project']);
243
+ expect(harness.transitionStateCalls).toEqual([
244
+ {
245
+ projectPath: '/checkout/project',
246
+ mrId: 'gitlab-group/project-42',
247
+ targetState: 'approved',
248
+ },
249
+ ]);
250
+ expect(result).toEqual({ type: 'approved', mergeRequestNumber: 42 });
251
+ });
252
+ it('revokes the approval when the quality gate fails and the verdict is reverted', async () => {
253
+ const harness = buildHarness({
254
+ transitionState: {
255
+ execute: () => ({
256
+ ok: false,
257
+ reason: 'quality-gate',
258
+ message: 'gate failed',
259
+ }),
260
+ },
261
+ handlePlatformApproval: {
262
+ execute: () => ({
263
+ kind: 'reverted',
264
+ reason: 'below-threshold',
265
+ threshold: 8,
266
+ latestScore: 4,
267
+ message: 'Approbation annulée',
268
+ }),
269
+ },
270
+ });
271
+ const result = await processWebhook(approveEvent, harness.deps);
272
+ expect(result).toEqual({
273
+ type: 'approval-revoked',
218
274
  mergeRequestNumber: 42,
219
- }, harness.deps);
220
- expect(result).toEqual({ type: 'ignored', reason: 'approve-handled-by-controller' });
275
+ reason: 'below-threshold',
276
+ revokeMessage: 'Approbation annulée',
277
+ });
278
+ });
279
+ it('ignores the approval when the gate fails but the verdict is not reverted', async () => {
280
+ const harness = buildHarness({
281
+ transitionState: {
282
+ execute: () => ({
283
+ ok: false,
284
+ reason: 'quality-gate',
285
+ message: 'gate failed',
286
+ }),
287
+ },
288
+ handlePlatformApproval: {
289
+ execute: () => ({ kind: 'bypass-active' }),
290
+ },
291
+ });
292
+ const result = await processWebhook(approveEvent, harness.deps);
293
+ expect(result).toEqual({
294
+ type: 'approval-ignored',
295
+ mergeRequestNumber: 42,
296
+ reason: 'bypass-active',
297
+ });
298
+ });
299
+ it('ignores the approval when the merge request is not tracked', async () => {
300
+ const harness = buildHarness({
301
+ transitionState: {
302
+ execute: () => ({ ok: false, reason: 'not-found' }),
303
+ },
304
+ });
305
+ const result = await processWebhook(approveEvent, harness.deps);
306
+ expect(harness.handlePlatformApprovalCalls).toEqual([]);
307
+ expect(result).toEqual({
308
+ type: 'approval-ignored',
309
+ mergeRequestNumber: 42,
310
+ reason: 'not-found',
311
+ });
221
312
  });
222
313
  });
223
314
  describe('ignored', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"processWebhook.usecase.test.js","sourceRoot":"","sources":["../../../../../../src/tests/units/modules/platform-integration/usecases/processWebhook.usecase.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processWebhook.usecase.test.js","sourceRoot":"","sources":["../../../../../../src/tests/units/modules/platform-integration/usecases/processWebhook.usecase.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reviewflow",
3
- "version": "3.40.0",
3
+ "version": "3.40.2",
4
4
  "description": "AI-powered code review automation for GitLab/GitHub using Claude Code",
5
5
  "type": "module",
6
6
  "main": "dist/main/server.js",
@@ -18,6 +18,18 @@ description: Follow-up review to verify fixes. Uses context file for thread mana
18
18
 
19
19
  ---
20
20
 
21
+ ## Scoring discipline (anti-sandbagging)
22
+
23
+ A score is a claim, not a vibe. Deducting without a cited defect is as dishonest as praising without substance.
24
+
25
+ - **Max is the default.** A clean diff scores the maximum — never round down to look rigorous.
26
+ - **Every point deducted is sourced:** `file:line` + the real problem + the fix. No citable defect -> the score IS the maximum.
27
+ - **Never invent a flaw to dodge a perfect score.** A justified design choice or a deliberate trade-off is not a defect.
28
+ - **Pre-existing debt the diff only touches mechanically** (rename, import rewrite) is reported as context, never scored against the diff.
29
+ - **Naming:** any naming criticism must carry a concrete better name (`current -> suggested` + why). If you cannot propose a clearer name, the name is fine — say so. "Could be clearer" with no alternative is not a finding.
30
+
31
+ ---
32
+
21
33
  ## Context File
22
34
 
23
35
  The server provides a context file with pre-fetched thread information:
@@ -13,6 +13,18 @@ description: Basic code review skill template. Customize for your project.
13
13
  - Focus on bugs, security, and code smells
14
14
  - Explain the "why" before the "how"
15
15
 
16
+ ## Scoring discipline (anti-sandbagging)
17
+
18
+ A score is a claim, not a vibe. Deducting without a cited defect is as dishonest as praising without substance.
19
+
20
+ - **Max is the default.** A clean diff scores the maximum — never round down to look rigorous.
21
+ - **Every point deducted is sourced:** `file:line` + the real problem + the fix. No citable defect -> the score IS the maximum.
22
+ - **Never invent a flaw to dodge a perfect score.** A justified design choice or a deliberate trade-off is not a defect.
23
+ - **Pre-existing debt the diff only touches mechanically** (rename, import rewrite) is reported as context, never scored against the diff.
24
+ - **Naming:** any naming criticism must carry a concrete better name (`current -> suggested` + why). If you cannot propose a clearer name, the name is fine — say so. "Could be clearer" with no alternative is not a finding.
25
+
26
+ ---
27
+
16
28
  ## Customization Points
17
29
 
18
30
  <!-- CUSTOMIZE: List your project-specific rules here -->
@@ -14,6 +14,18 @@ description: Advanced code review with multiple sequential agents. Customize for
14
14
  - Scores and verdicts per agent
15
15
  - Comprehensive final report
16
16
 
17
+ ## Scoring discipline (anti-sandbagging)
18
+
19
+ A score is a claim, not a vibe. Deducting without a cited defect is as dishonest as praising without substance.
20
+
21
+ - **Max is the default.** A clean diff scores the maximum — never round down to look rigorous.
22
+ - **Every point deducted is sourced:** `file:line` + the real problem + the fix. No citable defect -> the score IS the maximum.
23
+ - **Never invent a flaw to dodge a perfect score.** A justified design choice or a deliberate trade-off is not a defect.
24
+ - **Pre-existing debt the diff only touches mechanically** (rename, import rewrite) is reported as context, never scored against the diff.
25
+ - **Naming:** any naming criticism must carry a concrete better name (`current -> suggested` + why). If you cannot propose a clearer name, the name is fine — say so. "Could be clearer" with no alternative is not a finding.
26
+
27
+ ---
28
+
17
29
  ## Customization Points
18
30
 
19
31
  <!-- CUSTOMIZE: Define your agents -->
@@ -18,6 +18,18 @@ description: Review de suivi pour vérifier les corrections. Utilise le fichier
18
18
 
19
19
  ---
20
20
 
21
+ ## Discipline de scoring (anti-sandbagging)
22
+
23
+ Un score est une affirmation, pas un ressenti. Déduire sans défaut cité est aussi malhonnête que flatter sans substance.
24
+
25
+ - **Le max est la valeur par défaut.** Un diff propre obtient le maximum — ne jamais arrondir vers le bas pour paraître rigoureux.
26
+ - **Chaque point retiré est sourcé :** `file:line` + le vrai problème + le fix. Aucun défaut citable -> le score EST le maximum.
27
+ - **Ne jamais inventer un défaut pour éviter un score parfait.** Un choix de design justifié ou un trade-off délibéré n'est pas un défaut.
28
+ - **La dette pré-existante que le diff ne fait que toucher mécaniquement** (rename, réécriture d'import) est un constat, jamais une déduction.
29
+ - **Naming :** toute critique de nommage doit porter un nom alternatif concret (`actuel -> suggéré` + pourquoi). Si tu ne peux pas proposer un nom plus clair, le nom est bon — dis-le. « Pourrait être plus clair » sans alternative n'est pas une trouvaille.
30
+
31
+ ---
32
+
21
33
  ## Fichier de Contexte
22
34
 
23
35
  Le serveur fournit un fichier de contexte avec les informations des threads pré-chargées :
@@ -13,6 +13,18 @@ description: Template de code review basique. À personnaliser pour votre projet
13
13
  - Focus sur les bugs, la sécurité, et les code smells
14
14
  - Expliquer le "pourquoi" avant le "comment"
15
15
 
16
+ ## Discipline de scoring (anti-sandbagging)
17
+
18
+ Un score est une affirmation, pas un ressenti. Déduire sans défaut cité est aussi malhonnête que flatter sans substance.
19
+
20
+ - **Le max est la valeur par défaut.** Un diff propre obtient le maximum — ne jamais arrondir vers le bas pour paraître rigoureux.
21
+ - **Chaque point retiré est sourcé :** `file:line` + le vrai problème + le fix. Aucun défaut citable -> le score EST le maximum.
22
+ - **Ne jamais inventer un défaut pour éviter un score parfait.** Un choix de design justifié ou un trade-off délibéré n'est pas un défaut.
23
+ - **La dette pré-existante que le diff ne fait que toucher mécaniquement** (rename, réécriture d'import) est un constat, jamais une déduction.
24
+ - **Naming :** toute critique de nommage doit porter un nom alternatif concret (`actuel -> suggéré` + pourquoi). Si tu ne peux pas proposer un nom plus clair, le nom est bon — dis-le. « Pourrait être plus clair » sans alternative n'est pas une trouvaille.
25
+
26
+ ---
27
+
16
28
  ## Points de Personnalisation
17
29
 
18
30
  <!-- CUSTOMIZE: Listez les règles spécifiques à votre projet -->
@@ -14,6 +14,18 @@ description: Code review avancée avec plusieurs agents séquentiels. À personn
14
14
  - Scores et verdicts par agent
15
15
  - Rapport final complet
16
16
 
17
+ ## Discipline de scoring (anti-sandbagging)
18
+
19
+ Un score est une affirmation, pas un ressenti. Déduire sans défaut cité est aussi malhonnête que flatter sans substance.
20
+
21
+ - **Le max est la valeur par défaut.** Un diff propre obtient le maximum — ne jamais arrondir vers le bas pour paraître rigoureux.
22
+ - **Chaque point retiré est sourcé :** `file:line` + le vrai problème + le fix. Aucun défaut citable -> le score EST le maximum.
23
+ - **Ne jamais inventer un défaut pour éviter un score parfait.** Un choix de design justifié ou un trade-off délibéré n'est pas un défaut.
24
+ - **La dette pré-existante que le diff ne fait que toucher mécaniquement** (rename, réécriture d'import) est un constat, jamais une déduction.
25
+ - **Naming :** toute critique de nommage doit porter un nom alternatif concret (`actuel -> suggéré` + pourquoi). Si tu ne peux pas proposer un nom plus clair, le nom est bon — dis-le. « Pourrait être plus clair » sans alternative n'est pas une trouvaille.
26
+
27
+ ---
28
+
17
29
  ## Points de Personnalisation
18
30
 
19
31
  <!-- CUSTOMIZE: Définissez vos agents -->