@jonit-dev/night-watch-cli 1.8.10-beta.1 → 1.8.10-beta.3

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 (239) hide show
  1. package/dist/cli.js +2309 -1313
  2. package/dist/scripts/night-watch-cron.sh +1 -3
  3. package/dist/scripts/night-watch-merger-cron.sh +1 -1
  4. package/dist/scripts/night-watch-plan-cron.sh +1 -1
  5. package/dist/scripts/night-watch-slicer-cron.sh +1 -1
  6. package/dist/web/assets/index-BUgI2S1s.js +406 -0
  7. package/dist/web/assets/index-CkdLFBd7.js +406 -0
  8. package/dist/web/assets/index-RMfswANB.css +1 -0
  9. package/dist/web/index.html +2 -2
  10. package/package.json +1 -1
  11. package/dist/cli.d.ts +0 -3
  12. package/dist/cli.d.ts.map +0 -1
  13. package/dist/cli.js.map +0 -1
  14. package/dist/commands/analytics.d.ts +0 -14
  15. package/dist/commands/analytics.d.ts.map +0 -1
  16. package/dist/commands/analytics.js +0 -69
  17. package/dist/commands/analytics.js.map +0 -1
  18. package/dist/commands/audit.d.ts +0 -19
  19. package/dist/commands/audit.d.ts.map +0 -1
  20. package/dist/commands/audit.js +0 -144
  21. package/dist/commands/audit.js.map +0 -1
  22. package/dist/commands/board.d.ts +0 -9
  23. package/dist/commands/board.d.ts.map +0 -1
  24. package/dist/commands/board.js +0 -702
  25. package/dist/commands/board.js.map +0 -1
  26. package/dist/commands/cancel.d.ts +0 -46
  27. package/dist/commands/cancel.d.ts.map +0 -1
  28. package/dist/commands/cancel.js +0 -239
  29. package/dist/commands/cancel.js.map +0 -1
  30. package/dist/commands/cron.d.ts +0 -8
  31. package/dist/commands/cron.d.ts.map +0 -1
  32. package/dist/commands/cron.js +0 -134
  33. package/dist/commands/cron.js.map +0 -1
  34. package/dist/commands/dashboard/tab-actions.d.ts +0 -10
  35. package/dist/commands/dashboard/tab-actions.d.ts.map +0 -1
  36. package/dist/commands/dashboard/tab-actions.js +0 -247
  37. package/dist/commands/dashboard/tab-actions.js.map +0 -1
  38. package/dist/commands/dashboard/tab-config.d.ts +0 -21
  39. package/dist/commands/dashboard/tab-config.d.ts.map +0 -1
  40. package/dist/commands/dashboard/tab-config.js +0 -873
  41. package/dist/commands/dashboard/tab-config.js.map +0 -1
  42. package/dist/commands/dashboard/tab-logs.d.ts +0 -10
  43. package/dist/commands/dashboard/tab-logs.d.ts.map +0 -1
  44. package/dist/commands/dashboard/tab-logs.js +0 -202
  45. package/dist/commands/dashboard/tab-logs.js.map +0 -1
  46. package/dist/commands/dashboard/tab-schedules.d.ts +0 -21
  47. package/dist/commands/dashboard/tab-schedules.d.ts.map +0 -1
  48. package/dist/commands/dashboard/tab-schedules.js +0 -320
  49. package/dist/commands/dashboard/tab-schedules.js.map +0 -1
  50. package/dist/commands/dashboard/tab-status.d.ts +0 -32
  51. package/dist/commands/dashboard/tab-status.d.ts.map +0 -1
  52. package/dist/commands/dashboard/tab-status.js +0 -424
  53. package/dist/commands/dashboard/tab-status.js.map +0 -1
  54. package/dist/commands/dashboard/types.d.ts +0 -42
  55. package/dist/commands/dashboard/types.d.ts.map +0 -1
  56. package/dist/commands/dashboard/types.js +0 -5
  57. package/dist/commands/dashboard/types.js.map +0 -1
  58. package/dist/commands/dashboard.d.ts +0 -11
  59. package/dist/commands/dashboard.d.ts.map +0 -1
  60. package/dist/commands/dashboard.js +0 -242
  61. package/dist/commands/dashboard.js.map +0 -1
  62. package/dist/commands/doctor.d.ts +0 -16
  63. package/dist/commands/doctor.d.ts.map +0 -1
  64. package/dist/commands/doctor.js +0 -195
  65. package/dist/commands/doctor.js.map +0 -1
  66. package/dist/commands/history.d.ts +0 -7
  67. package/dist/commands/history.d.ts.map +0 -1
  68. package/dist/commands/history.js +0 -49
  69. package/dist/commands/history.js.map +0 -1
  70. package/dist/commands/init.d.ts +0 -45
  71. package/dist/commands/init.d.ts.map +0 -1
  72. package/dist/commands/init.js +0 -777
  73. package/dist/commands/init.js.map +0 -1
  74. package/dist/commands/install.d.ts +0 -65
  75. package/dist/commands/install.d.ts.map +0 -1
  76. package/dist/commands/install.js +0 -405
  77. package/dist/commands/install.js.map +0 -1
  78. package/dist/commands/logs.d.ts +0 -15
  79. package/dist/commands/logs.d.ts.map +0 -1
  80. package/dist/commands/logs.js +0 -155
  81. package/dist/commands/logs.js.map +0 -1
  82. package/dist/commands/merge.d.ts +0 -26
  83. package/dist/commands/merge.d.ts.map +0 -1
  84. package/dist/commands/merge.js +0 -159
  85. package/dist/commands/merge.js.map +0 -1
  86. package/dist/commands/notify.d.ts +0 -7
  87. package/dist/commands/notify.d.ts.map +0 -1
  88. package/dist/commands/notify.js +0 -43
  89. package/dist/commands/notify.js.map +0 -1
  90. package/dist/commands/plan.d.ts +0 -19
  91. package/dist/commands/plan.d.ts.map +0 -1
  92. package/dist/commands/plan.js +0 -88
  93. package/dist/commands/plan.js.map +0 -1
  94. package/dist/commands/prd-state.d.ts +0 -12
  95. package/dist/commands/prd-state.d.ts.map +0 -1
  96. package/dist/commands/prd-state.js +0 -47
  97. package/dist/commands/prd-state.js.map +0 -1
  98. package/dist/commands/prd.d.ts +0 -18
  99. package/dist/commands/prd.d.ts.map +0 -1
  100. package/dist/commands/prd.js +0 -363
  101. package/dist/commands/prd.js.map +0 -1
  102. package/dist/commands/prds.d.ts +0 -13
  103. package/dist/commands/prds.d.ts.map +0 -1
  104. package/dist/commands/prds.js +0 -194
  105. package/dist/commands/prds.js.map +0 -1
  106. package/dist/commands/prs.d.ts +0 -14
  107. package/dist/commands/prs.d.ts.map +0 -1
  108. package/dist/commands/prs.js +0 -104
  109. package/dist/commands/prs.js.map +0 -1
  110. package/dist/commands/qa.d.ts +0 -34
  111. package/dist/commands/qa.d.ts.map +0 -1
  112. package/dist/commands/qa.js +0 -214
  113. package/dist/commands/qa.js.map +0 -1
  114. package/dist/commands/queue.d.ts +0 -8
  115. package/dist/commands/queue.d.ts.map +0 -1
  116. package/dist/commands/queue.js +0 -376
  117. package/dist/commands/queue.js.map +0 -1
  118. package/dist/commands/resolve.d.ts +0 -26
  119. package/dist/commands/resolve.d.ts.map +0 -1
  120. package/dist/commands/resolve.js +0 -186
  121. package/dist/commands/resolve.js.map +0 -1
  122. package/dist/commands/retry.d.ts +0 -9
  123. package/dist/commands/retry.d.ts.map +0 -1
  124. package/dist/commands/retry.js +0 -71
  125. package/dist/commands/retry.js.map +0 -1
  126. package/dist/commands/review.d.ts +0 -82
  127. package/dist/commands/review.d.ts.map +0 -1
  128. package/dist/commands/review.js +0 -479
  129. package/dist/commands/review.js.map +0 -1
  130. package/dist/commands/run.d.ts +0 -73
  131. package/dist/commands/run.d.ts.map +0 -1
  132. package/dist/commands/run.js +0 -509
  133. package/dist/commands/run.js.map +0 -1
  134. package/dist/commands/serve.d.ts +0 -19
  135. package/dist/commands/serve.d.ts.map +0 -1
  136. package/dist/commands/serve.js +0 -142
  137. package/dist/commands/serve.js.map +0 -1
  138. package/dist/commands/shared/env-builder.d.ts +0 -49
  139. package/dist/commands/shared/env-builder.d.ts.map +0 -1
  140. package/dist/commands/shared/env-builder.js +0 -150
  141. package/dist/commands/shared/env-builder.js.map +0 -1
  142. package/dist/commands/slice.d.ts +0 -35
  143. package/dist/commands/slice.d.ts.map +0 -1
  144. package/dist/commands/slice.js +0 -316
  145. package/dist/commands/slice.js.map +0 -1
  146. package/dist/commands/state.d.ts +0 -8
  147. package/dist/commands/state.d.ts.map +0 -1
  148. package/dist/commands/state.js +0 -54
  149. package/dist/commands/state.js.map +0 -1
  150. package/dist/commands/status.d.ts +0 -14
  151. package/dist/commands/status.d.ts.map +0 -1
  152. package/dist/commands/status.js +0 -297
  153. package/dist/commands/status.js.map +0 -1
  154. package/dist/commands/summary.d.ts +0 -14
  155. package/dist/commands/summary.d.ts.map +0 -1
  156. package/dist/commands/summary.js +0 -193
  157. package/dist/commands/summary.js.map +0 -1
  158. package/dist/commands/uninstall.d.ts +0 -25
  159. package/dist/commands/uninstall.d.ts.map +0 -1
  160. package/dist/commands/uninstall.js +0 -134
  161. package/dist/commands/uninstall.js.map +0 -1
  162. package/dist/commands/update.d.ts +0 -22
  163. package/dist/commands/update.d.ts.map +0 -1
  164. package/dist/commands/update.js +0 -90
  165. package/dist/commands/update.js.map +0 -1
  166. package/dist/web/assets/index-2JY0x_Ij.js +0 -381
  167. package/dist/web/assets/index-3h8pgmqL.css +0 -1
  168. package/dist/web/assets/index-B-wbyZq7.js +0 -386
  169. package/dist/web/assets/index-B1BnOpiO.css +0 -1
  170. package/dist/web/assets/index-B3CnV08_.js +0 -365
  171. package/dist/web/assets/index-B5QjuFh9.css +0 -1
  172. package/dist/web/assets/index-B8FW2ecQ.js +0 -370
  173. package/dist/web/assets/index-BFxPiKyy.js +0 -381
  174. package/dist/web/assets/index-BGqNh_Da.js +0 -365
  175. package/dist/web/assets/index-BIONU0qz.css +0 -1
  176. package/dist/web/assets/index-B_l_3wnA.js +0 -370
  177. package/dist/web/assets/index-Ba-4YvTQ.js +0 -365
  178. package/dist/web/assets/index-Bbb4-39N.js +0 -370
  179. package/dist/web/assets/index-BdgdShEN.js +0 -365
  180. package/dist/web/assets/index-BhiC4Z-G.js +0 -381
  181. package/dist/web/assets/index-BjhCFjZi.js +0 -381
  182. package/dist/web/assets/index-BlRxmrnQ.css +0 -1
  183. package/dist/web/assets/index-BqwbXsHS.js +0 -365
  184. package/dist/web/assets/index-BsC7RT48.css +0 -1
  185. package/dist/web/assets/index-Bvh8XI8_.js +0 -370
  186. package/dist/web/assets/index-C01r2ymn.js +0 -381
  187. package/dist/web/assets/index-C51Rbsmk.js +0 -381
  188. package/dist/web/assets/index-C7lMNxRE.js +0 -370
  189. package/dist/web/assets/index-CJLObgsn.js +0 -386
  190. package/dist/web/assets/index-CLuRf7Zt.js +0 -381
  191. package/dist/web/assets/index-CM3xFd3e.css +0 -1
  192. package/dist/web/assets/index-CNkBtDK7.js +0 -370
  193. package/dist/web/assets/index-CPQbZ1BL.css +0 -1
  194. package/dist/web/assets/index-CTy5dUDU.css +0 -1
  195. package/dist/web/assets/index-CU15COKs.js +0 -370
  196. package/dist/web/assets/index-CiRJZI4z.js +0 -386
  197. package/dist/web/assets/index-Cp7RYjoy.css +0 -1
  198. package/dist/web/assets/index-CvPkZOWT.js +0 -381
  199. package/dist/web/assets/index-CvUk-33B.css +0 -1
  200. package/dist/web/assets/index-Cvmj-oF6.css +0 -1
  201. package/dist/web/assets/index-CxE5iQVO.js +0 -381
  202. package/dist/web/assets/index-D7lZQpFV.js +0 -365
  203. package/dist/web/assets/index-DAyP4GOi.css +0 -1
  204. package/dist/web/assets/index-DCG0n8Kg.js +0 -386
  205. package/dist/web/assets/index-DEEI8cyF.css +0 -1
  206. package/dist/web/assets/index-DF99BowV.js +0 -381
  207. package/dist/web/assets/index-DGWsvFj6.css +0 -1
  208. package/dist/web/assets/index-DGpU39Cp.css +0 -1
  209. package/dist/web/assets/index-DI4kFgOi.js +0 -370
  210. package/dist/web/assets/index-DIyTcPw5.css +0 -1
  211. package/dist/web/assets/index-DTsfDC7m.js +0 -381
  212. package/dist/web/assets/index-DcgNAi4A.js +0 -386
  213. package/dist/web/assets/index-DgOAgkZy.css +0 -1
  214. package/dist/web/assets/index-DnHkqbOa.js +0 -386
  215. package/dist/web/assets/index-DnR7Idcf.css +0 -1
  216. package/dist/web/assets/index-DpVirMEe.css +0 -1
  217. package/dist/web/assets/index-DsYIWZ86.css +0 -1
  218. package/dist/web/assets/index-DtrDkci5.js +0 -381
  219. package/dist/web/assets/index-DyjIth5M.js +0 -386
  220. package/dist/web/assets/index-FwIKfHPL.css +0 -1
  221. package/dist/web/assets/index-IKrZymWk.css +0 -1
  222. package/dist/web/assets/index-MA6fM0ab.js +0 -381
  223. package/dist/web/assets/index-N_QxaSEg.css +0 -1
  224. package/dist/web/assets/index-OcU-0TCQ.css +0 -1
  225. package/dist/web/assets/index-OyhrmG-L.js +0 -381
  226. package/dist/web/assets/index-SQlBKu_s.js +0 -386
  227. package/dist/web/assets/index-Sv2B60J4.js +0 -370
  228. package/dist/web/assets/index-Vgyivb5u.js +0 -365
  229. package/dist/web/assets/index-ZABWMEZR.js +0 -381
  230. package/dist/web/assets/index-ZE5lOeJp.js +0 -386
  231. package/dist/web/assets/index-aCHmkAcJ.css +0 -1
  232. package/dist/web/assets/index-bFijnpuU.js +0 -381
  233. package/dist/web/assets/index-bUPZgSoZ.css +0 -1
  234. package/dist/web/assets/index-mz1VIYsP.css +0 -1
  235. package/dist/web/assets/index-oOp_MFeE.js +0 -376
  236. package/dist/web/assets/index-rfU713Zm.js +0 -386
  237. package/dist/web/assets/index-tuNH9gmb.js +0 -448
  238. package/dist/web/assets/index-viSwHyDD.js +0 -365
  239. package/dist/web/assets/index-yKEQysks.js +0 -365
@@ -1,104 +0,0 @@
1
- /**
2
- * PRs command for Night Watch CLI
3
- * Lists matching PRs with their CI status and review scores
4
- */
5
- import chalk from 'chalk';
6
- import { collectPrInfo, createTable, dim, header, info, loadConfig, } from '@night-watch/core';
7
- /**
8
- * Format CI status with color coding
9
- */
10
- function formatCiStatus(status) {
11
- switch (status) {
12
- case 'pass':
13
- return chalk.green('pass');
14
- case 'fail':
15
- return chalk.red('fail');
16
- case 'pending':
17
- return chalk.yellow('pending');
18
- default:
19
- return chalk.dim('unknown');
20
- }
21
- }
22
- /**
23
- * Format review score with color coding
24
- */
25
- function formatReviewScore(score) {
26
- if (score === null) {
27
- return chalk.dim('-');
28
- }
29
- if (score >= 80) {
30
- return chalk.green(String(score));
31
- }
32
- if (score >= 60) {
33
- return chalk.yellow(String(score));
34
- }
35
- return chalk.red(String(score));
36
- }
37
- /**
38
- * PRs command implementation
39
- */
40
- export function prsCommand(program) {
41
- program
42
- .command('prs')
43
- .description('List matching PRs with CI status and review scores')
44
- .option('--json', 'Output PRs as JSON')
45
- .option('--debug', 'Enable debug logging for CI status and review score derivation')
46
- .action(async (options) => {
47
- try {
48
- // Enable debug mode via environment variable
49
- if (options.debug) {
50
- process.env.DEBUG_PR_DATA = '1';
51
- }
52
- const projectDir = process.cwd();
53
- const config = loadConfig(projectDir);
54
- const prs = await collectPrInfo(projectDir, config.branchPatterns);
55
- // Output as JSON if requested
56
- if (options.json) {
57
- const output = {
58
- prs,
59
- count: prs.length,
60
- };
61
- console.log(JSON.stringify(output, null, 2));
62
- return;
63
- }
64
- // Print header
65
- console.log();
66
- console.log(chalk.bold.cyan('Night Watch PRs'));
67
- console.log(chalk.dim('-'.repeat(40)));
68
- console.log();
69
- if (prs.length === 0) {
70
- info('No open PRs matching configured branch patterns found.');
71
- dim(`Branch patterns: ${config.branchPatterns.join(', ')}`);
72
- console.log();
73
- return;
74
- }
75
- header(`Open PRs (${prs.length})`);
76
- // Create and populate table
77
- const table = createTable({
78
- head: ['#', 'Title', 'Branch', 'CI', 'Score', 'URL'],
79
- colWidths: [6, 30, 25, 10, 8, 50],
80
- });
81
- for (const pr of prs) {
82
- // Truncate title if too long
83
- const title = pr.title.length > 27 ? pr.title.substring(0, 24) + '...' : pr.title;
84
- // Truncate branch if too long
85
- const branch = pr.branch.length > 22 ? pr.branch.substring(0, 19) + '...' : pr.branch;
86
- table.push([
87
- String(pr.number),
88
- title,
89
- branch,
90
- formatCiStatus(pr.ciStatus),
91
- formatReviewScore(pr.reviewScore),
92
- pr.url,
93
- ]);
94
- }
95
- console.log(table.toString());
96
- console.log();
97
- }
98
- catch (error) {
99
- console.error(`Error listing PRs: ${error instanceof Error ? error.message : String(error)}`);
100
- process.exit(1);
101
- }
102
- });
103
- }
104
- //# sourceMappingURL=prs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prs.js","sourceRoot":"","sources":["../../src/commands/prs.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- /**
2
- * QA command - executes the QA cron script for PR test generation
3
- */
4
- import { Command } from 'commander';
5
- import { INightWatchConfig } from '@night-watch/core';
6
- /**
7
- * Options for the qa command
8
- */
9
- export interface IQaOptions {
10
- dryRun: boolean;
11
- timeout?: string;
12
- provider?: string;
13
- }
14
- /**
15
- * QA notifications should not fire for script-level skip/no-op outcomes.
16
- */
17
- export declare function shouldSendQaNotification(scriptStatus?: string): boolean;
18
- /**
19
- * Parse PR numbers emitted by the QA script marker data (e.g. "#12,#34").
20
- */
21
- export declare function parseQaPrNumbers(prsRaw?: string): number[];
22
- /**
23
- * Build environment variables map from config and CLI options for QA
24
- */
25
- export declare function buildEnvVars(config: INightWatchConfig, options: IQaOptions): Record<string, string>;
26
- /**
27
- * Apply CLI flag overrides to the config for QA
28
- */
29
- export declare function applyCliOverrides(config: INightWatchConfig, options: IQaOptions): INightWatchConfig;
30
- /**
31
- * Register the qa command with the program
32
- */
33
- export declare function qaCommand(program: Command): void;
34
- //# sourceMappingURL=qa.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"qa.d.ts","sourceRoot":"","sources":["../../src/commands/qa.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAEL,iBAAiB,EAgBlB,MAAM,mBAAmB,CAAC;AAS3B;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAQvE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAc1D;AAWD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,UAAU,GAClB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA6BxB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,UAAU,GAClB,iBAAiB,CAgBnB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+IhD"}
@@ -1,214 +0,0 @@
1
- /**
2
- * QA command - executes the QA cron script for PR test generation
3
- */
4
- import { CLAUDE_MODEL_IDS, PROVIDER_COMMANDS, createSpinner, createTable, dim, executeScriptWithOutput, fetchPrDetailsByNumber, fetchQaScreenshotUrlsForPr, getScriptPath, header, info, loadConfig, parseScriptResult, resolveJobProvider, sendNotifications, error as uiError, } from '@night-watch/core';
5
- import { buildBaseEnvVars, formatProviderDisplay, getTelegramStatusWebhooks, maybeApplyCronSchedulingDelay, } from './shared/env-builder.js';
6
- import * as path from 'path';
7
- /**
8
- * QA notifications should not fire for script-level skip/no-op outcomes.
9
- */
10
- export function shouldSendQaNotification(scriptStatus) {
11
- if (!scriptStatus) {
12
- return true;
13
- }
14
- if (scriptStatus === 'queued') {
15
- return false;
16
- }
17
- return !scriptStatus.startsWith('skip_');
18
- }
19
- /**
20
- * Parse PR numbers emitted by the QA script marker data (e.g. "#12,#34").
21
- */
22
- export function parseQaPrNumbers(prsRaw) {
23
- if (!prsRaw)
24
- return [];
25
- const seen = new Set();
26
- const numbers = [];
27
- for (const token of prsRaw.split(',')) {
28
- const parsed = parseInt(token.trim().replace(/^#/, ''), 10);
29
- if (Number.isNaN(parsed) || seen.has(parsed)) {
30
- continue;
31
- }
32
- seen.add(parsed);
33
- numbers.push(parsed);
34
- }
35
- return numbers;
36
- }
37
- function parseRepoFromPrUrl(prUrl) {
38
- if (!prUrl) {
39
- return undefined;
40
- }
41
- const match = prUrl.match(/^https?:\/\/github\.com\/([^/]+\/[^/]+)\/pull\/\d+/i);
42
- return match?.[1];
43
- }
44
- /**
45
- * Build environment variables map from config and CLI options for QA
46
- */
47
- export function buildEnvVars(config, options) {
48
- // Start with base env vars shared by all job types
49
- const env = buildBaseEnvVars(config, 'qa', options.dryRun);
50
- // Runtime for QA (uses NW_QA_* variables)
51
- env.NW_QA_MAX_RUNTIME = String(config.qa.maxRuntime);
52
- // Branch patterns: use qa-specific if non-empty, else top-level
53
- const branchPatterns = config.qa.branchPatterns.length > 0 ? config.qa.branchPatterns : config.branchPatterns;
54
- env.NW_BRANCH_PATTERNS = branchPatterns.join(',');
55
- // QA-specific settings
56
- env.NW_QA_SKIP_LABEL = config.qa.skipLabel;
57
- env.NW_QA_VALIDATED_LABEL = config.qa.validatedLabel;
58
- env.NW_QA_ARTIFACTS = config.qa.artifacts;
59
- env.NW_QA_AUTO_INSTALL_PLAYWRIGHT = config.qa.autoInstallPlaywright ? '1' : '0';
60
- env.NW_CLAUDE_MODEL_ID =
61
- CLAUDE_MODEL_IDS[config.primaryFallbackModel ?? config.claudeModel ?? 'sonnet'];
62
- // Telegram status messages from bash scripts (start/progress/final status)
63
- const telegramWebhooks = getTelegramStatusWebhooks(config);
64
- if (telegramWebhooks.length > 0) {
65
- env.NW_TELEGRAM_STATUS_WEBHOOKS = JSON.stringify(telegramWebhooks);
66
- env.NW_TELEGRAM_BOT_TOKEN = telegramWebhooks[0].botToken;
67
- env.NW_TELEGRAM_CHAT_ID = telegramWebhooks[0].chatId;
68
- }
69
- return env;
70
- }
71
- /**
72
- * Apply CLI flag overrides to the config for QA
73
- */
74
- export function applyCliOverrides(config, options) {
75
- const overridden = { ...config, qa: { ...config.qa } };
76
- if (options.timeout) {
77
- const timeout = parseInt(options.timeout, 10);
78
- if (!isNaN(timeout)) {
79
- overridden.qa.maxRuntime = timeout;
80
- }
81
- }
82
- if (options.provider) {
83
- // Use _cliProviderOverride to ensure CLI flag takes precedence over jobProviders
84
- overridden._cliProviderOverride = options.provider;
85
- }
86
- return overridden;
87
- }
88
- /**
89
- * Register the qa command with the program
90
- */
91
- export function qaCommand(program) {
92
- program
93
- .command('qa')
94
- .description('Run QA process now')
95
- .option('--dry-run', 'Show what would be executed without running')
96
- .option('--timeout <seconds>', 'Override max runtime in seconds for QA')
97
- .option('--provider <string>', 'AI provider to use (claude or codex)')
98
- .action(async (options) => {
99
- // Get the project directory (current working directory)
100
- const projectDir = process.cwd();
101
- // Load config from file and environment
102
- let config = loadConfig(projectDir);
103
- // Apply CLI flag overrides
104
- config = applyCliOverrides(config, options);
105
- if (!config.qa.enabled && !options.dryRun) {
106
- info('QA is disabled in config; skipping run.');
107
- process.exit(0);
108
- }
109
- // Build environment variables
110
- const envVars = buildEnvVars(config, options);
111
- // Get the script path
112
- const scriptPath = getScriptPath('night-watch-qa-cron.sh');
113
- if (options.dryRun) {
114
- header('Dry Run: QA Process');
115
- // Resolve QA-specific provider
116
- const qaProvider = resolveJobProvider(config, 'qa');
117
- // Configuration section with table
118
- header('Configuration');
119
- const configTable = createTable({ head: ['Setting', 'Value'] });
120
- configTable.push(['Provider', qaProvider]);
121
- configTable.push(['Provider CLI', PROVIDER_COMMANDS[qaProvider]]);
122
- configTable.push([
123
- 'Max Runtime',
124
- `${config.qa.maxRuntime}s (${Math.floor(config.qa.maxRuntime / 60)}min)`,
125
- ]);
126
- const branchPatterns = config.qa.branchPatterns.length > 0 ? config.qa.branchPatterns : config.branchPatterns;
127
- configTable.push(['Branch Patterns', branchPatterns.join(', ')]);
128
- configTable.push(['Skip Label', config.qa.skipLabel]);
129
- configTable.push(['Validated Label', config.qa.validatedLabel]);
130
- configTable.push(['Artifacts', config.qa.artifacts]);
131
- configTable.push([
132
- 'Auto-install Playwright',
133
- config.qa.autoInstallPlaywright ? 'Yes' : 'No',
134
- ]);
135
- console.log(configTable.toString());
136
- // Environment variables
137
- header('Environment Variables');
138
- for (const [key, value] of Object.entries(envVars)) {
139
- dim(` ${key}=${value}`);
140
- }
141
- // Full command that would be executed
142
- header('Command');
143
- dim(` bash ${scriptPath} ${projectDir}`);
144
- console.log();
145
- process.exit(0);
146
- }
147
- // Execute the script with spinner
148
- const spinner = createSpinner('Running QA process...');
149
- spinner.start();
150
- try {
151
- await maybeApplyCronSchedulingDelay(config, 'qa', projectDir);
152
- const { exitCode, stdout, stderr } = await executeScriptWithOutput(scriptPath, [projectDir], envVars);
153
- const scriptResult = parseScriptResult(`${stdout}\n${stderr}`);
154
- if (exitCode === 0) {
155
- if (scriptResult?.status === 'queued') {
156
- spinner.succeed('QA process queued — another job is currently running');
157
- }
158
- else if (scriptResult?.status?.startsWith('skip_')) {
159
- spinner.succeed('QA process completed (no PRs needed QA)');
160
- }
161
- else if (scriptResult?.status === 'warning_qa') {
162
- spinner.succeed('QA process completed with warnings');
163
- }
164
- else {
165
- spinner.succeed('QA process completed successfully');
166
- }
167
- }
168
- else {
169
- spinner.fail(`QA process exited with code ${exitCode}`);
170
- }
171
- // Send notifications (fire-and-forget, failures do not affect exit code)
172
- if (!options.dryRun) {
173
- const skipNotification = !shouldSendQaNotification(scriptResult?.status);
174
- if (skipNotification) {
175
- info('Skipping QA notification (no actionable QA result)');
176
- }
177
- if (!skipNotification) {
178
- const qaPrNumbers = parseQaPrNumbers(scriptResult?.data.prs);
179
- const primaryQaPr = qaPrNumbers[0];
180
- const prDetails = primaryQaPr ? fetchPrDetailsByNumber(primaryQaPr, projectDir) : null;
181
- const repo = scriptResult?.data.repo ?? parseRepoFromPrUrl(prDetails?.url);
182
- const fallbackPrUrl = !prDetails?.url && primaryQaPr && repo
183
- ? `https://github.com/${repo}/pull/${primaryQaPr}`
184
- : undefined;
185
- const qaScreenshotUrls = primaryQaPr !== undefined
186
- ? fetchQaScreenshotUrlsForPr(primaryQaPr, projectDir, repo)
187
- : [];
188
- const _qaCtx = {
189
- event: 'qa_completed',
190
- projectName: path.basename(projectDir),
191
- exitCode,
192
- provider: formatProviderDisplay(envVars.NW_PROVIDER_CMD, envVars.NW_PROVIDER_LABEL),
193
- prNumber: prDetails?.number ?? primaryQaPr,
194
- prUrl: prDetails?.url ?? fallbackPrUrl,
195
- prTitle: prDetails?.title,
196
- prBody: prDetails?.body,
197
- filesChanged: prDetails?.changedFiles,
198
- additions: prDetails?.additions,
199
- deletions: prDetails?.deletions,
200
- qaScreenshotUrls,
201
- };
202
- await sendNotifications(config, _qaCtx);
203
- }
204
- }
205
- process.exit(exitCode);
206
- }
207
- catch (err) {
208
- spinner.fail('Failed to execute QA command');
209
- uiError(`${err instanceof Error ? err.message : String(err)}`);
210
- process.exit(1);
211
- }
212
- });
213
- }
214
- //# sourceMappingURL=qa.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"qa.js","sourceRoot":"","sources":["../../src/commands/qa.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Queue command — manage the global job queue.
3
- * Provides subcommands for viewing, clearing, and dispatching queued jobs.
4
- */
5
- import { Command } from 'commander';
6
- export declare function createQueueCommand(): Command;
7
- export declare function queueCommand(program: Command): void;
8
- //# sourceMappingURL=queue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/commands/queue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+DpC,wBAAgB,kBAAkB,IAAI,OAAO,CAsU5C;AAkED,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEnD"}