issue-flow 0.17.0 → 0.18.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 (110) hide show
  1. package/dist/{agent-TB6W7PT7.js → agent-HMZTXCRT.js} +5 -5
  2. package/dist/{analyze-6M3KEOX7.js → analyze-Q4ONIWRZ.js} +10 -10
  3. package/dist/{apply-ADB3ZK7W.js → apply-EEFPY2W4.js} +5 -5
  4. package/dist/{bench-FM7I7EIV.js → bench-WWWXLTFH.js} +9 -9
  5. package/dist/{chunk-KZ5EY5XX.js → chunk-34OCSKOB.js} +7 -7
  6. package/dist/{chunk-UWDCIFTP.js → chunk-45WZ6GMI.js} +27 -43
  7. package/dist/chunk-45WZ6GMI.js.map +1 -0
  8. package/dist/{chunk-QMIQR7EE.js → chunk-62GVVZQO.js} +3 -3
  9. package/dist/{chunk-YII4U7ZD.js → chunk-6K2LCFG6.js} +2 -2
  10. package/dist/{chunk-A4H7P7T7.js → chunk-7UMMFOL2.js} +3 -3
  11. package/dist/chunk-7UMMFOL2.js.map +1 -0
  12. package/dist/{chunk-HJBF4WD2.js → chunk-CWSQVHVV.js} +59 -25
  13. package/dist/chunk-CWSQVHVV.js.map +1 -0
  14. package/dist/{chunk-SGTTR4XW.js → chunk-E4I6MMHD.js} +4 -4
  15. package/dist/{chunk-6YQT3SSM.js → chunk-ECU7YO7S.js} +2 -2
  16. package/dist/{chunk-MI5TREN3.js → chunk-EG2MGDP5.js} +6 -6
  17. package/dist/{chunk-RCZJQUTC.js → chunk-HOAHMERN.js} +43 -10
  18. package/dist/chunk-HOAHMERN.js.map +1 -0
  19. package/dist/{chunk-HLAPOUEM.js → chunk-KMCS76ZW.js} +3 -3
  20. package/dist/{chunk-KZXQWC7U.js → chunk-KRAGAUKD.js} +8 -8
  21. package/dist/{chunk-E6KXCV3T.js → chunk-LGHND47K.js} +2 -2
  22. package/dist/{chunk-DV7HUC4Z.js → chunk-LI35PIIS.js} +2 -2
  23. package/dist/{chunk-Z5O2XBWA.js → chunk-LTH6XYZ3.js} +5 -5
  24. package/dist/{chunk-2SUFAE6X.js → chunk-NEWNXZ65.js} +21 -12
  25. package/dist/{chunk-2SUFAE6X.js.map → chunk-NEWNXZ65.js.map} +1 -1
  26. package/dist/{chunk-LPWPFIIB.js → chunk-OODXFCQV.js} +7 -7
  27. package/dist/{chunk-ISZ54SVE.js → chunk-PMLE7KAQ.js} +17 -9
  28. package/dist/chunk-PMLE7KAQ.js.map +1 -0
  29. package/dist/{chunk-HY5HLFDU.js → chunk-QF7VEL3M.js} +115 -14
  30. package/dist/chunk-QF7VEL3M.js.map +1 -0
  31. package/dist/{chunk-B3TSS7BT.js → chunk-QJ44VG5G.js} +2 -2
  32. package/dist/{chunk-VE3IYNDN.js → chunk-SA6HXL4Y.js} +2 -2
  33. package/dist/{chunk-UK4E2FUA.js → chunk-TZYINKCC.js} +75 -53
  34. package/dist/chunk-TZYINKCC.js.map +1 -0
  35. package/dist/{chunk-32JSYXEK.js → chunk-V7QOIQYC.js} +2 -2
  36. package/dist/{chunk-ANI2NTR4.js → chunk-XUEMATVY.js} +6 -6
  37. package/dist/{chunk-D6ZBGJ3L.js → chunk-ZVZMWNCG.js} +129 -35
  38. package/dist/chunk-ZVZMWNCG.js.map +1 -0
  39. package/dist/cli.js +35 -35
  40. package/dist/cli.js.map +1 -1
  41. package/dist/{config-KGZUPAUP.js → config-LEBZZCJP.js} +4 -4
  42. package/dist/{conventions-RYN7OXJN.js → conventions-XOT6YW5L.js} +6 -6
  43. package/dist/{execute-QL3ZQIAP.js → execute-LELOSR5T.js} +14 -14
  44. package/dist/{generate-CX6KNHZS.js → generate-JGW5JSKB.js} +10 -10
  45. package/dist/{init-PDVQDRS6.js → init-TO6MUXO4.js} +7 -5
  46. package/dist/{operations-CAKIT2BO.js → operations-O4FORFIH.js} +4 -4
  47. package/dist/{plan-PRORGS3L.js → plan-OXAT344Q.js} +12 -12
  48. package/dist/{policy-WX6O2JID.js → policy-U5NBFAO5.js} +5 -5
  49. package/dist/{pr-27RMQI5F.js → pr-UZHNKKZC.js} +12 -12
  50. package/dist/{pr-review-VNESMAMT.js → pr-review-Q4ACAWDM.js} +9 -9
  51. package/dist/{prd-ZNC4T5BS.js → prd-6CYEMLDY.js} +12 -12
  52. package/dist/{recorder-N7U66HCO.js → recorder-2BAKPBRA.js} +2 -2
  53. package/dist/{resume-VLWIE264.js → resume-URCU6CIJ.js} +26 -26
  54. package/dist/{review-7CREJDKB.js → review-LVZT2TMW.js} +13 -13
  55. package/dist/{routing-VCDYHSXA.js → routing-EK6RBZM4.js} +6 -6
  56. package/dist/run-2RXJCJKT.js +56 -0
  57. package/dist/{usage-U7QNGCPK.js → usage-KTMYXAPF.js} +3 -3
  58. package/dist/{web-HUNDHCJ4.js → web-B5UPHHR5.js} +8 -8
  59. package/package.json +1 -1
  60. package/web/AGENTS.md +115 -7
  61. package/web/public/app.css +393 -245
  62. package/web/public/app.js +108 -38
  63. package/web/public/index.html +106 -78
  64. package/dist/chunk-A4H7P7T7.js.map +0 -1
  65. package/dist/chunk-D6ZBGJ3L.js.map +0 -1
  66. package/dist/chunk-HJBF4WD2.js.map +0 -1
  67. package/dist/chunk-HY5HLFDU.js.map +0 -1
  68. package/dist/chunk-ISZ54SVE.js.map +0 -1
  69. package/dist/chunk-RCZJQUTC.js.map +0 -1
  70. package/dist/chunk-UK4E2FUA.js.map +0 -1
  71. package/dist/chunk-UWDCIFTP.js.map +0 -1
  72. package/dist/run-3MPORLF5.js +0 -56
  73. /package/dist/{agent-TB6W7PT7.js.map → agent-HMZTXCRT.js.map} +0 -0
  74. /package/dist/{analyze-6M3KEOX7.js.map → analyze-Q4ONIWRZ.js.map} +0 -0
  75. /package/dist/{apply-ADB3ZK7W.js.map → apply-EEFPY2W4.js.map} +0 -0
  76. /package/dist/{bench-FM7I7EIV.js.map → bench-WWWXLTFH.js.map} +0 -0
  77. /package/dist/{chunk-KZ5EY5XX.js.map → chunk-34OCSKOB.js.map} +0 -0
  78. /package/dist/{chunk-QMIQR7EE.js.map → chunk-62GVVZQO.js.map} +0 -0
  79. /package/dist/{chunk-YII4U7ZD.js.map → chunk-6K2LCFG6.js.map} +0 -0
  80. /package/dist/{chunk-SGTTR4XW.js.map → chunk-E4I6MMHD.js.map} +0 -0
  81. /package/dist/{chunk-6YQT3SSM.js.map → chunk-ECU7YO7S.js.map} +0 -0
  82. /package/dist/{chunk-MI5TREN3.js.map → chunk-EG2MGDP5.js.map} +0 -0
  83. /package/dist/{chunk-HLAPOUEM.js.map → chunk-KMCS76ZW.js.map} +0 -0
  84. /package/dist/{chunk-KZXQWC7U.js.map → chunk-KRAGAUKD.js.map} +0 -0
  85. /package/dist/{chunk-E6KXCV3T.js.map → chunk-LGHND47K.js.map} +0 -0
  86. /package/dist/{chunk-DV7HUC4Z.js.map → chunk-LI35PIIS.js.map} +0 -0
  87. /package/dist/{chunk-Z5O2XBWA.js.map → chunk-LTH6XYZ3.js.map} +0 -0
  88. /package/dist/{chunk-LPWPFIIB.js.map → chunk-OODXFCQV.js.map} +0 -0
  89. /package/dist/{chunk-B3TSS7BT.js.map → chunk-QJ44VG5G.js.map} +0 -0
  90. /package/dist/{chunk-VE3IYNDN.js.map → chunk-SA6HXL4Y.js.map} +0 -0
  91. /package/dist/{chunk-32JSYXEK.js.map → chunk-V7QOIQYC.js.map} +0 -0
  92. /package/dist/{chunk-ANI2NTR4.js.map → chunk-XUEMATVY.js.map} +0 -0
  93. /package/dist/{config-KGZUPAUP.js.map → config-LEBZZCJP.js.map} +0 -0
  94. /package/dist/{conventions-RYN7OXJN.js.map → conventions-XOT6YW5L.js.map} +0 -0
  95. /package/dist/{execute-QL3ZQIAP.js.map → execute-LELOSR5T.js.map} +0 -0
  96. /package/dist/{generate-CX6KNHZS.js.map → generate-JGW5JSKB.js.map} +0 -0
  97. /package/dist/{init-PDVQDRS6.js.map → init-TO6MUXO4.js.map} +0 -0
  98. /package/dist/{operations-CAKIT2BO.js.map → operations-O4FORFIH.js.map} +0 -0
  99. /package/dist/{plan-PRORGS3L.js.map → plan-OXAT344Q.js.map} +0 -0
  100. /package/dist/{policy-WX6O2JID.js.map → policy-U5NBFAO5.js.map} +0 -0
  101. /package/dist/{pr-27RMQI5F.js.map → pr-UZHNKKZC.js.map} +0 -0
  102. /package/dist/{pr-review-VNESMAMT.js.map → pr-review-Q4ACAWDM.js.map} +0 -0
  103. /package/dist/{prd-ZNC4T5BS.js.map → prd-6CYEMLDY.js.map} +0 -0
  104. /package/dist/{recorder-N7U66HCO.js.map → recorder-2BAKPBRA.js.map} +0 -0
  105. /package/dist/{resume-VLWIE264.js.map → resume-URCU6CIJ.js.map} +0 -0
  106. /package/dist/{review-7CREJDKB.js.map → review-LVZT2TMW.js.map} +0 -0
  107. /package/dist/{routing-VCDYHSXA.js.map → routing-EK6RBZM4.js.map} +0 -0
  108. /package/dist/{run-3MPORLF5.js.map → run-2RXJCJKT.js.map} +0 -0
  109. /package/dist/{usage-U7QNGCPK.js.map → usage-KTMYXAPF.js.map} +0 -0
  110. /package/dist/{web-HUNDHCJ4.js.map → web-B5UPHHR5.js.map} +0 -0
@@ -1,27 +1,27 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runPlan
4
- } from "./chunk-KZ5EY5XX.js";
5
- import "./chunk-32JSYXEK.js";
6
- import "./chunk-VE3IYNDN.js";
7
- import "./chunk-QMIQR7EE.js";
4
+ } from "./chunk-34OCSKOB.js";
5
+ import "./chunk-V7QOIQYC.js";
6
+ import "./chunk-SA6HXL4Y.js";
7
+ import "./chunk-62GVVZQO.js";
8
8
  import "./chunk-KMMASOA6.js";
9
- import "./chunk-HLAPOUEM.js";
9
+ import "./chunk-KMCS76ZW.js";
10
10
  import "./chunk-7F7LGMVO.js";
11
- import "./chunk-UK4E2FUA.js";
11
+ import "./chunk-TZYINKCC.js";
12
12
  import "./chunk-WCCZJL7W.js";
13
13
  import "./chunk-DGRTJD5R.js";
14
- import "./chunk-D6ZBGJ3L.js";
14
+ import "./chunk-ZVZMWNCG.js";
15
15
  import "./chunk-3D4A4B46.js";
16
- import "./chunk-E6KXCV3T.js";
17
- import "./chunk-HY5HLFDU.js";
18
- import "./chunk-DV7HUC4Z.js";
16
+ import "./chunk-LGHND47K.js";
17
+ import "./chunk-QF7VEL3M.js";
18
+ import "./chunk-LI35PIIS.js";
19
19
  import "./chunk-XZUEFTUP.js";
20
20
  import "./chunk-QPGEFLMY.js";
21
21
  import "./chunk-HAKDLR6N.js";
22
22
  import "./chunk-YVPZUN6X.js";
23
23
  import "./chunk-DUS5ZNKL.js";
24
- import "./chunk-YII4U7ZD.js";
24
+ import "./chunk-6K2LCFG6.js";
25
25
  import "./chunk-PPZ3K4YM.js";
26
26
  import "./chunk-SOM4QA6C.js";
27
27
  import "./chunk-ICM463EO.js";
@@ -31,4 +31,4 @@ import "./chunk-3R27MJ5R.js";
31
31
  export {
32
32
  runPlan
33
33
  };
34
- //# sourceMappingURL=plan-PRORGS3L.js.map
34
+ //# sourceMappingURL=plan-OXAT344Q.js.map
@@ -2,9 +2,9 @@
2
2
  import "./chunk-3D4A4B46.js";
3
3
  import {
4
4
  loadRepositoryPolicy
5
- } from "./chunk-E6KXCV3T.js";
6
- import "./chunk-HY5HLFDU.js";
7
- import "./chunk-DV7HUC4Z.js";
5
+ } from "./chunk-LGHND47K.js";
6
+ import "./chunk-QF7VEL3M.js";
7
+ import "./chunk-LI35PIIS.js";
8
8
  import {
9
9
  printError,
10
10
  printInfo,
@@ -14,7 +14,7 @@ import "./chunk-QPGEFLMY.js";
14
14
  import "./chunk-HAKDLR6N.js";
15
15
  import "./chunk-YVPZUN6X.js";
16
16
  import "./chunk-DUS5ZNKL.js";
17
- import "./chunk-YII4U7ZD.js";
17
+ import "./chunk-6K2LCFG6.js";
18
18
  import "./chunk-PPZ3K4YM.js";
19
19
  import "./chunk-SOM4QA6C.js";
20
20
  import "./chunk-ICM463EO.js";
@@ -130,4 +130,4 @@ async function runPolicy(options = {}) {
130
130
  export {
131
131
  runPolicy
132
132
  };
133
- //# sourceMappingURL=policy-WX6O2JID.js.map
133
+ //# sourceMappingURL=policy-U5NBFAO5.js.map
@@ -3,28 +3,28 @@ import {
3
3
  issueClosesLines,
4
4
  multiIssueContext,
5
5
  runPr
6
- } from "./chunk-LPWPFIIB.js";
6
+ } from "./chunk-OODXFCQV.js";
7
7
  import "./chunk-YUNBOUQH.js";
8
- import "./chunk-32JSYXEK.js";
9
- import "./chunk-VE3IYNDN.js";
10
- import "./chunk-QMIQR7EE.js";
8
+ import "./chunk-V7QOIQYC.js";
9
+ import "./chunk-SA6HXL4Y.js";
10
+ import "./chunk-62GVVZQO.js";
11
11
  import "./chunk-KMMASOA6.js";
12
- import "./chunk-HLAPOUEM.js";
12
+ import "./chunk-KMCS76ZW.js";
13
13
  import "./chunk-7F7LGMVO.js";
14
- import "./chunk-UK4E2FUA.js";
14
+ import "./chunk-TZYINKCC.js";
15
15
  import "./chunk-WCCZJL7W.js";
16
16
  import "./chunk-DGRTJD5R.js";
17
- import "./chunk-D6ZBGJ3L.js";
17
+ import "./chunk-ZVZMWNCG.js";
18
18
  import "./chunk-3D4A4B46.js";
19
- import "./chunk-E6KXCV3T.js";
20
- import "./chunk-HY5HLFDU.js";
21
- import "./chunk-DV7HUC4Z.js";
19
+ import "./chunk-LGHND47K.js";
20
+ import "./chunk-QF7VEL3M.js";
21
+ import "./chunk-LI35PIIS.js";
22
22
  import "./chunk-XZUEFTUP.js";
23
23
  import "./chunk-QPGEFLMY.js";
24
24
  import "./chunk-HAKDLR6N.js";
25
25
  import "./chunk-YVPZUN6X.js";
26
26
  import "./chunk-DUS5ZNKL.js";
27
- import "./chunk-YII4U7ZD.js";
27
+ import "./chunk-6K2LCFG6.js";
28
28
  import "./chunk-PPZ3K4YM.js";
29
29
  import "./chunk-SOM4QA6C.js";
30
30
  import "./chunk-ICM463EO.js";
@@ -36,4 +36,4 @@ export {
36
36
  multiIssueContext,
37
37
  runPr
38
38
  };
39
- //# sourceMappingURL=pr-27RMQI5F.js.map
39
+ //# sourceMappingURL=pr-UZHNKKZC.js.map
@@ -2,23 +2,23 @@
2
2
  import {
3
3
  exitCodeFor,
4
4
  runPrReview
5
- } from "./chunk-Z5O2XBWA.js";
5
+ } from "./chunk-LTH6XYZ3.js";
6
6
  import "./chunk-YUNBOUQH.js";
7
- import "./chunk-HLAPOUEM.js";
7
+ import "./chunk-KMCS76ZW.js";
8
8
  import "./chunk-7F7LGMVO.js";
9
- import "./chunk-UK4E2FUA.js";
9
+ import "./chunk-TZYINKCC.js";
10
10
  import "./chunk-WCCZJL7W.js";
11
11
  import "./chunk-DGRTJD5R.js";
12
- import "./chunk-D6ZBGJ3L.js";
13
- import "./chunk-E6KXCV3T.js";
14
- import "./chunk-HY5HLFDU.js";
15
- import "./chunk-DV7HUC4Z.js";
12
+ import "./chunk-ZVZMWNCG.js";
13
+ import "./chunk-LGHND47K.js";
14
+ import "./chunk-QF7VEL3M.js";
15
+ import "./chunk-LI35PIIS.js";
16
16
  import "./chunk-XZUEFTUP.js";
17
17
  import "./chunk-QPGEFLMY.js";
18
18
  import "./chunk-HAKDLR6N.js";
19
19
  import "./chunk-YVPZUN6X.js";
20
20
  import "./chunk-DUS5ZNKL.js";
21
- import "./chunk-YII4U7ZD.js";
21
+ import "./chunk-6K2LCFG6.js";
22
22
  import "./chunk-PPZ3K4YM.js";
23
23
  import "./chunk-SOM4QA6C.js";
24
24
  import "./chunk-ICM463EO.js";
@@ -29,4 +29,4 @@ export {
29
29
  exitCodeFor,
30
30
  runPrReview
31
31
  };
32
- //# sourceMappingURL=pr-review-VNESMAMT.js.map
32
+ //# sourceMappingURL=pr-review-Q4ACAWDM.js.map
@@ -1,26 +1,26 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runPrd
4
- } from "./chunk-ANI2NTR4.js";
5
- import "./chunk-32JSYXEK.js";
6
- import "./chunk-VE3IYNDN.js";
7
- import "./chunk-QMIQR7EE.js";
4
+ } from "./chunk-XUEMATVY.js";
5
+ import "./chunk-V7QOIQYC.js";
6
+ import "./chunk-SA6HXL4Y.js";
7
+ import "./chunk-62GVVZQO.js";
8
8
  import "./chunk-KMMASOA6.js";
9
- import "./chunk-HLAPOUEM.js";
9
+ import "./chunk-KMCS76ZW.js";
10
10
  import "./chunk-7F7LGMVO.js";
11
- import "./chunk-UK4E2FUA.js";
11
+ import "./chunk-TZYINKCC.js";
12
12
  import "./chunk-WCCZJL7W.js";
13
13
  import "./chunk-DGRTJD5R.js";
14
- import "./chunk-D6ZBGJ3L.js";
15
- import "./chunk-E6KXCV3T.js";
16
- import "./chunk-HY5HLFDU.js";
17
- import "./chunk-DV7HUC4Z.js";
14
+ import "./chunk-ZVZMWNCG.js";
15
+ import "./chunk-LGHND47K.js";
16
+ import "./chunk-QF7VEL3M.js";
17
+ import "./chunk-LI35PIIS.js";
18
18
  import "./chunk-XZUEFTUP.js";
19
19
  import "./chunk-QPGEFLMY.js";
20
20
  import "./chunk-HAKDLR6N.js";
21
21
  import "./chunk-YVPZUN6X.js";
22
22
  import "./chunk-DUS5ZNKL.js";
23
- import "./chunk-YII4U7ZD.js";
23
+ import "./chunk-6K2LCFG6.js";
24
24
  import "./chunk-PPZ3K4YM.js";
25
25
  import "./chunk-SOM4QA6C.js";
26
26
  import "./chunk-ICM463EO.js";
@@ -30,4 +30,4 @@ import "./chunk-3R27MJ5R.js";
30
30
  export {
31
31
  runPrd
32
32
  };
33
- //# sourceMappingURL=prd-ZNC4T5BS.js.map
33
+ //# sourceMappingURL=prd-6CYEMLDY.js.map
@@ -10,7 +10,7 @@ import {
10
10
  resetTelemetryState,
11
11
  timingFromUsage,
12
12
  usageFromClaude
13
- } from "./chunk-YII4U7ZD.js";
13
+ } from "./chunk-6K2LCFG6.js";
14
14
  import "./chunk-PPZ3K4YM.js";
15
15
  import "./chunk-SOM4QA6C.js";
16
16
  import "./chunk-ICM463EO.js";
@@ -29,4 +29,4 @@ export {
29
29
  timingFromUsage,
30
30
  usageFromClaude
31
31
  };
32
- //# sourceMappingURL=recorder-N7U66HCO.js.map
32
+ //# sourceMappingURL=recorder-2BAKPBRA.js.map
@@ -1,48 +1,48 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runPipeline
4
- } from "./chunk-HJBF4WD2.js";
5
- import "./chunk-B3TSS7BT.js";
6
- import "./chunk-LPWPFIIB.js";
7
- import "./chunk-Z5O2XBWA.js";
4
+ } from "./chunk-CWSQVHVV.js";
5
+ import "./chunk-QJ44VG5G.js";
6
+ import "./chunk-OODXFCQV.js";
7
+ import "./chunk-LTH6XYZ3.js";
8
8
  import "./chunk-YUNBOUQH.js";
9
- import "./chunk-ANI2NTR4.js";
10
- import "./chunk-MI5TREN3.js";
9
+ import "./chunk-XUEMATVY.js";
10
+ import "./chunk-EG2MGDP5.js";
11
11
  import {
12
12
  PIPELINE_PHASES,
13
13
  PipelineManager,
14
14
  loadExecutionPlan,
15
15
  nextQueueIssue
16
- } from "./chunk-A4H7P7T7.js";
17
- import "./chunk-ISZ54SVE.js";
18
- import "./chunk-KZXQWC7U.js";
19
- import "./chunk-2SUFAE6X.js";
20
- import "./chunk-6YQT3SSM.js";
21
- import "./chunk-SGTTR4XW.js";
16
+ } from "./chunk-7UMMFOL2.js";
17
+ import "./chunk-PMLE7KAQ.js";
18
+ import "./chunk-KRAGAUKD.js";
19
+ import "./chunk-NEWNXZ65.js";
20
+ import "./chunk-ECU7YO7S.js";
21
+ import "./chunk-E4I6MMHD.js";
22
22
  import "./chunk-CRGIQFUQ.js";
23
23
  import "./chunk-L6HSKTQE.js";
24
- import "./chunk-UWDCIFTP.js";
25
- import "./chunk-RCZJQUTC.js";
26
- import "./chunk-KZ5EY5XX.js";
27
- import "./chunk-32JSYXEK.js";
28
- import "./chunk-VE3IYNDN.js";
29
- import "./chunk-QMIQR7EE.js";
24
+ import "./chunk-45WZ6GMI.js";
25
+ import "./chunk-HOAHMERN.js";
26
+ import "./chunk-34OCSKOB.js";
27
+ import "./chunk-V7QOIQYC.js";
28
+ import "./chunk-SA6HXL4Y.js";
29
+ import "./chunk-62GVVZQO.js";
30
30
  import "./chunk-KMMASOA6.js";
31
- import "./chunk-HLAPOUEM.js";
31
+ import "./chunk-KMCS76ZW.js";
32
32
  import "./chunk-7F7LGMVO.js";
33
- import "./chunk-UK4E2FUA.js";
33
+ import "./chunk-TZYINKCC.js";
34
34
  import {
35
35
  parseJournal
36
36
  } from "./chunk-WCCZJL7W.js";
37
37
  import "./chunk-DGRTJD5R.js";
38
- import "./chunk-D6ZBGJ3L.js";
38
+ import "./chunk-ZVZMWNCG.js";
39
39
  import "./chunk-C5TL7T4V.js";
40
40
  import "./chunk-3D4A4B46.js";
41
- import "./chunk-E6KXCV3T.js";
42
- import "./chunk-HY5HLFDU.js";
41
+ import "./chunk-LGHND47K.js";
42
+ import "./chunk-QF7VEL3M.js";
43
43
  import {
44
44
  resolveProjectPaths
45
- } from "./chunk-DV7HUC4Z.js";
45
+ } from "./chunk-LI35PIIS.js";
46
46
  import {
47
47
  printError,
48
48
  printInfo,
@@ -58,7 +58,7 @@ import {
58
58
  preflightRepository
59
59
  } from "./chunk-YVPZUN6X.js";
60
60
  import "./chunk-DUS5ZNKL.js";
61
- import "./chunk-YII4U7ZD.js";
61
+ import "./chunk-6K2LCFG6.js";
62
62
  import "./chunk-PPZ3K4YM.js";
63
63
  import {
64
64
  loadTaskPlan
@@ -241,4 +241,4 @@ async function loadTarget(projectId, issue) {
241
241
  export {
242
242
  runResume
243
243
  };
244
- //# sourceMappingURL=resume-VLWIE264.js.map
244
+ //# sourceMappingURL=resume-URCU6CIJ.js.map
@@ -1,28 +1,28 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runReview
4
- } from "./chunk-MI5TREN3.js";
5
- import "./chunk-6YQT3SSM.js";
6
- import "./chunk-SGTTR4XW.js";
4
+ } from "./chunk-EG2MGDP5.js";
5
+ import "./chunk-ECU7YO7S.js";
6
+ import "./chunk-E4I6MMHD.js";
7
7
  import "./chunk-L6HSKTQE.js";
8
- import "./chunk-VE3IYNDN.js";
9
- import "./chunk-QMIQR7EE.js";
8
+ import "./chunk-SA6HXL4Y.js";
9
+ import "./chunk-62GVVZQO.js";
10
10
  import "./chunk-KMMASOA6.js";
11
- import "./chunk-HLAPOUEM.js";
11
+ import "./chunk-KMCS76ZW.js";
12
12
  import "./chunk-7F7LGMVO.js";
13
- import "./chunk-UK4E2FUA.js";
13
+ import "./chunk-TZYINKCC.js";
14
14
  import "./chunk-WCCZJL7W.js";
15
15
  import "./chunk-DGRTJD5R.js";
16
- import "./chunk-D6ZBGJ3L.js";
17
- import "./chunk-E6KXCV3T.js";
18
- import "./chunk-HY5HLFDU.js";
19
- import "./chunk-DV7HUC4Z.js";
16
+ import "./chunk-ZVZMWNCG.js";
17
+ import "./chunk-LGHND47K.js";
18
+ import "./chunk-QF7VEL3M.js";
19
+ import "./chunk-LI35PIIS.js";
20
20
  import "./chunk-XZUEFTUP.js";
21
21
  import "./chunk-QPGEFLMY.js";
22
22
  import "./chunk-HAKDLR6N.js";
23
23
  import "./chunk-YVPZUN6X.js";
24
24
  import "./chunk-DUS5ZNKL.js";
25
- import "./chunk-YII4U7ZD.js";
25
+ import "./chunk-6K2LCFG6.js";
26
26
  import "./chunk-PPZ3K4YM.js";
27
27
  import "./chunk-SOM4QA6C.js";
28
28
  import "./chunk-ICM463EO.js";
@@ -32,4 +32,4 @@ import "./chunk-3R27MJ5R.js";
32
32
  export {
33
33
  runReview
34
34
  };
35
- //# sourceMappingURL=review-7CREJDKB.js.map
35
+ //# sourceMappingURL=review-LVZT2TMW.js.map
@@ -6,16 +6,16 @@ import {
6
6
  runRoutingReport,
7
7
  runRoutingUse,
8
8
  writeRoutingPreference
9
- } from "./chunk-RCZJQUTC.js";
10
- import "./chunk-D6ZBGJ3L.js";
11
- import "./chunk-HY5HLFDU.js";
12
- import "./chunk-DV7HUC4Z.js";
9
+ } from "./chunk-HOAHMERN.js";
10
+ import "./chunk-ZVZMWNCG.js";
11
+ import "./chunk-QF7VEL3M.js";
12
+ import "./chunk-LI35PIIS.js";
13
13
  import "./chunk-XZUEFTUP.js";
14
14
  import "./chunk-QPGEFLMY.js";
15
15
  import "./chunk-HAKDLR6N.js";
16
16
  import "./chunk-YVPZUN6X.js";
17
17
  import "./chunk-DUS5ZNKL.js";
18
- import "./chunk-YII4U7ZD.js";
18
+ import "./chunk-6K2LCFG6.js";
19
19
  import "./chunk-PPZ3K4YM.js";
20
20
  import "./chunk-SOM4QA6C.js";
21
21
  import "./chunk-ICM463EO.js";
@@ -30,4 +30,4 @@ export {
30
30
  runRoutingUse,
31
31
  writeRoutingPreference
32
32
  };
33
- //# sourceMappingURL=routing-VCDYHSXA.js.map
33
+ //# sourceMappingURL=routing-EK6RBZM4.js.map
@@ -0,0 +1,56 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ publishIssueDetails,
4
+ publishStorySeed,
5
+ runPipeline
6
+ } from "./chunk-CWSQVHVV.js";
7
+ import "./chunk-QJ44VG5G.js";
8
+ import "./chunk-OODXFCQV.js";
9
+ import "./chunk-LTH6XYZ3.js";
10
+ import "./chunk-YUNBOUQH.js";
11
+ import "./chunk-XUEMATVY.js";
12
+ import "./chunk-EG2MGDP5.js";
13
+ import "./chunk-7UMMFOL2.js";
14
+ import "./chunk-PMLE7KAQ.js";
15
+ import "./chunk-KRAGAUKD.js";
16
+ import "./chunk-NEWNXZ65.js";
17
+ import "./chunk-ECU7YO7S.js";
18
+ import "./chunk-E4I6MMHD.js";
19
+ import "./chunk-CRGIQFUQ.js";
20
+ import "./chunk-L6HSKTQE.js";
21
+ import "./chunk-45WZ6GMI.js";
22
+ import "./chunk-HOAHMERN.js";
23
+ import "./chunk-34OCSKOB.js";
24
+ import "./chunk-V7QOIQYC.js";
25
+ import "./chunk-SA6HXL4Y.js";
26
+ import "./chunk-62GVVZQO.js";
27
+ import "./chunk-KMMASOA6.js";
28
+ import "./chunk-KMCS76ZW.js";
29
+ import "./chunk-7F7LGMVO.js";
30
+ import "./chunk-TZYINKCC.js";
31
+ import "./chunk-WCCZJL7W.js";
32
+ import "./chunk-DGRTJD5R.js";
33
+ import "./chunk-ZVZMWNCG.js";
34
+ import "./chunk-C5TL7T4V.js";
35
+ import "./chunk-3D4A4B46.js";
36
+ import "./chunk-LGHND47K.js";
37
+ import "./chunk-QF7VEL3M.js";
38
+ import "./chunk-LI35PIIS.js";
39
+ import "./chunk-XZUEFTUP.js";
40
+ import "./chunk-QPGEFLMY.js";
41
+ import "./chunk-HAKDLR6N.js";
42
+ import "./chunk-YVPZUN6X.js";
43
+ import "./chunk-DUS5ZNKL.js";
44
+ import "./chunk-6K2LCFG6.js";
45
+ import "./chunk-PPZ3K4YM.js";
46
+ import "./chunk-SOM4QA6C.js";
47
+ import "./chunk-ICM463EO.js";
48
+ import "./chunk-XEYH6ZZI.js";
49
+ import "./chunk-P3LRUNC6.js";
50
+ import "./chunk-3R27MJ5R.js";
51
+ export {
52
+ publishIssueDetails,
53
+ publishStorySeed,
54
+ runPipeline
55
+ };
56
+ //# sourceMappingURL=run-2RXJCJKT.js.map
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-CRGIQFUQ.js";
6
6
  import {
7
7
  resolveProjectPaths
8
- } from "./chunk-DV7HUC4Z.js";
8
+ } from "./chunk-LI35PIIS.js";
9
9
  import {
10
10
  printError,
11
11
  printInfo
@@ -18,7 +18,7 @@ import "./chunk-YVPZUN6X.js";
18
18
  import "./chunk-DUS5ZNKL.js";
19
19
  import {
20
20
  discardedExecutionCount
21
- } from "./chunk-YII4U7ZD.js";
21
+ } from "./chunk-6K2LCFG6.js";
22
22
  import "./chunk-PPZ3K4YM.js";
23
23
  import {
24
24
  loadTaskPlan
@@ -174,4 +174,4 @@ export {
174
174
  formatUsageReport,
175
175
  runUsage
176
176
  };
177
- //# sourceMappingURL=usage-U7QNGCPK.js.map
177
+ //# sourceMappingURL=usage-KTMYXAPF.js.map
@@ -5,19 +5,19 @@ import {
5
5
  import {
6
6
  ensureSingleWebServer,
7
7
  stopWebMonitor
8
- } from "./chunk-2SUFAE6X.js";
9
- import "./chunk-UWDCIFTP.js";
10
- import "./chunk-RCZJQUTC.js";
8
+ } from "./chunk-NEWNXZ65.js";
9
+ import "./chunk-45WZ6GMI.js";
10
+ import "./chunk-HOAHMERN.js";
11
11
  import "./chunk-7F7LGMVO.js";
12
12
  import {
13
13
  parseJournal
14
14
  } from "./chunk-WCCZJL7W.js";
15
- import "./chunk-D6ZBGJ3L.js";
15
+ import "./chunk-ZVZMWNCG.js";
16
16
  import "./chunk-C5TL7T4V.js";
17
17
  import {
18
18
  loadWebConfig
19
- } from "./chunk-HY5HLFDU.js";
20
- import "./chunk-DV7HUC4Z.js";
19
+ } from "./chunk-QF7VEL3M.js";
20
+ import "./chunk-LI35PIIS.js";
21
21
  import "./chunk-XZUEFTUP.js";
22
22
  import "./chunk-QPGEFLMY.js";
23
23
  import {
@@ -30,7 +30,7 @@ import {
30
30
  } from "./chunk-HAKDLR6N.js";
31
31
  import "./chunk-YVPZUN6X.js";
32
32
  import "./chunk-DUS5ZNKL.js";
33
- import "./chunk-YII4U7ZD.js";
33
+ import "./chunk-6K2LCFG6.js";
34
34
  import "./chunk-PPZ3K4YM.js";
35
35
  import "./chunk-SOM4QA6C.js";
36
36
  import "./chunk-ICM463EO.js";
@@ -169,4 +169,4 @@ export {
169
169
  runWebServe,
170
170
  runWebStop
171
171
  };
172
- //# sourceMappingURL=web-HUNDHCJ4.js.map
172
+ //# sourceMappingURL=web-B5UPHHR5.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "issue-flow",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "description": "Unified CLI for orchestrating the full issue-flow pipeline via Claude Code, Codex CLI, Cursor CLI or Antigravity CLI",
5
5
  "type": "module",
6
6
  "bin": {
package/web/AGENTS.md CHANGED
@@ -46,7 +46,9 @@ do snapshot.
46
46
  ## Abas, Kanban e drawer
47
47
 
48
48
  O painel tem três abas ("Execução", "Kanban" e "Histórico") e um único drawer de detalhes
49
- para fases e stories (inclusive cards do Kanban). Três regras seguram esse conjunto:
49
+ para fases e stories (inclusive cards do Kanban). As abas seguem o padrão ARIA de
50
+ tablist: setas ←/→ movem o foco, Home/End vão às pontas, e só a aba ativa tem
51
+ `tabindex="0"` (as demais `-1`). Três regras seguram esse conjunto:
50
52
 
51
53
  - **Acesso a story sempre por `getStoryById()` / `getStories()`.** Elas são a
52
54
  camada de leitura: normalizam num lugar só o que pode faltar num
@@ -75,6 +77,110 @@ grid`/`flex` da regra base vence o atributo `hidden`. E o overlay/drawer ficam
75
77
  em `z-index` 20/21 para cobrir o `.banner` de desconexão, que é `sticky` com
76
78
  `z-index: 10`.
77
79
 
80
+ ## Header: informação, não marca
81
+
82
+ O `h1` das duas views **não** carrega o nome do produto — a marca vive só no
83
+ `<title>` do documento, que `renderTitle()`/`renderDashboard()` mantêm no
84
+ formato `<contexto> · issue-flow`. No detalhe o `h1` é a execução (`#N` como
85
+ link para a issue, seguido do título dela); no dashboard é "Execuções ativas".
86
+ Não devolva "issue-flow" para dentro do `h1`: a linha mais visível da tela é
87
+ para o que está acontecendo.
88
+
89
+ O resto da identidade da execução fica ao redor do `h1`: branch e chip de
90
+ versão na `.header-meta` logo abaixo, status, tempo decorrido e estimativa no
91
+ `.header-side`. O título da issue aparece **uma vez só** — por isso
92
+ `renderIssueSummary()` não repete número nem título no bloco "Contexto",
93
+ deixando ali estado, labels e descrição.
94
+
95
+ Layout: `.header-main` é `flex: 1 1 320px` e o `.header-side` fica com o
96
+ `flex` padrão (`0 1 auto`). O `.header-side` **precisa** poder encolher — os
97
+ timers são largos e, fixados em `flex: 0 0 auto`, estouram a largura em 360px.
98
+ O `h1` é fluxo inline (não flex), senão um título longo empurra o `#N` para
99
+ uma linha sozinha.
100
+
101
+ ## Blocos da aba Execução
102
+
103
+ A aba "Execução" tem **quatro** cartões, nesta ordem, e a ordem é a hierarquia:
104
+
105
+ | Bloco | O que carrega |
106
+ | --- | --- |
107
+ | Estado agora | progresso, "Executando agora", "Resiliência" e a linha "Próximos passos" |
108
+ | Contexto | issue, repositório e "Harnesses e configuração efetiva" |
109
+ | Andamento | fases e user stories |
110
+ | Saída | commits, pull requests e logs recentes |
111
+
112
+ Cada assunto dentro de um bloco é uma `.block-part` com `<h3>` — **sem borda,
113
+ sem fundo, sem sombra própria**: quem separa é o `gap` do grid de `.block`.
114
+ Assunto novo entra como `.block-part` de um bloco existente; um cartão novo na
115
+ aba só se justifica se não couber em nenhum dos quatro. Foi a proliferação de
116
+ cartões de mesmo peso (doze deles) que a issue #98 desfez, e ela volta sozinha
117
+ se cada mudança acrescentar "só mais um".
118
+
119
+ "Estado agora" é o único bloco com um requisito de layout: precisa caber sem
120
+ rolagem em 1440x900 **com o cartão de erros e avisos aberto**. Antes de
121
+ acrescentar linha ali, meça (`getBoundingClientRect().bottom <= innerHeight`).
122
+
123
+ A partir de 960px o `#panel-execution` vira um grid de duas colunas: Contexto
124
+ fica ao lado de Estado agora / Andamento, e Saída ocupa a largura toda. Os
125
+ dois breakpoints do painel são 640px (estreito) e 960px (largo) — um
126
+ componente novo se encaixa nesses, não inventa o terceiro. `main` tem
127
+ `max-width: 1200px`. Sem rolagem horizontal em 360, 768 e 1440.
128
+
129
+ "Contexto" roda um degrau abaixo (`--font-size-md` em todo o bloco): é
130
+ referência, não estado. "Próximos passos" é uma linha só — `renderNextSteps()`
131
+ junta os passos com `·` num `<span>`, e o rótulo vem do HTML
132
+ (`.next-steps-label`), não do JS.
133
+
134
+ ## Glossário
135
+
136
+ Termos da interface — um por conceito, em todo `index.html` e `app.js` visível
137
+ ao usuário. Comentários de código podem falar a língua do domínio (`session`,
138
+ `story`); a tela não.
139
+
140
+ | Conceito | Termo na UI | Não usar |
141
+ | --- | --- | --- |
142
+ | Uma corrida do pipeline | **execução** / **execuções** | sessão (exceto no identificador técnico, e mesmo aí o rótulo é "execução `<id>`") |
143
+ | Item do plano | **user story** / **user stories** | story, stories, User Story misturado |
144
+ | Estado da corrida | **aguardando / executando / concluído / falhou** | sinônimos soltos no badge |
145
+ | Indicador de corrida ativa | **ao vivo** + `.live` | "live", segundo badge, ponto com uppercase |
146
+
147
+ Travessão (`—`) fica só em placeholders de valor ausente (`#—`, timers). Em
148
+ frase, use ponto ou vírgula: "Desconectado do servidor. Tentando reconectar…",
149
+ "Execução falhou. Veja os erros acima."
150
+
151
+ O título do drawer é o da user story (`US-00N · título`) ou `Fase · <nome>`,
152
+ nunca "Detalhes da user story".
153
+
154
+ ## Escalas de tipografia, espaçamento e raio
155
+
156
+ Ao lado das cores, `:root` declara três escalas **fechadas**. Um componente
157
+ novo escolhe um degrau que já existe; não introduz um valor local.
158
+
159
+ | Escala | Tokens |
160
+ | --- | --- |
161
+ | Tipografia | `--font-size-xs` 0.75rem · `sm` 0.8125 · `md` 0.875 · `base` 0.9375 · `lg` 1 · `xl` 1.25 |
162
+ | Espaçamento | `--space-4` · `--space-8` · `--space-12` · `--space-16` · `--space-24` |
163
+ | Raio | `--radius-small` 6px · `--radius-medium` 10px · `--radius-pill` 999px |
164
+
165
+ `--font-size-base` é o tamanho do `body`; `xl` é o `h1` e `lg` o `h2`. O
166
+ espaçamento cobre `gap`, `padding` e `margin` — os quatro valores de rem que
167
+ existiam (`0.65rem`, `0.75rem`, `0.8rem`, `1rem`) foram arredondados para o
168
+ degrau mais próximo, e é isso que se faz com qualquer valor novo. Raio:
169
+ `medium` para superfícies com cara de cartão (`.card`, `.kanban-card`,
170
+ `.kanban-column`, `.execution-entry`), `small` para linhas, controles e caixas
171
+ internas, `pill` para badges, trilhas de progresso e pontos — inclusive no
172
+ lugar do antigo `border-radius: 50%`.
173
+
174
+ **Três exceções, e só elas**, cada uma com comentário no `app.css`: o
175
+ `margin-bottom: -1px` das abas (compensa a borda, é alinhamento), o `gap: 1px`
176
+ de `.config-phase-grid` (o fundo `--border` vazando pelo gap é a linha
177
+ divisória) e o `calc(var(--space-12) - 3px)` de `.story-executing` (desconta a
178
+ `box-shadow` interna para preservar o ritmo). Um valor solto sem um motivo
179
+ dessa ordem é dívida — troque pelo degrau.
180
+
181
+ Múltiplos são escritos como `calc()` sobre um token (`calc(var(--space-24) *
182
+ 2)` no rodapé do `main`), não como um sexto token de espaçamento.
183
+
78
184
  ## Paleta e tema
79
185
 
80
186
  As cores do `app.css` são **tokens nomeados por papel**, não por local de uso:
@@ -169,7 +275,7 @@ correspondente** — a maior parte da paleta clara passa com pouca folga.
169
275
  | `--accent-text` | `--state-error` | 4,5:1 | 6,47 | 6,78 |
170
276
 
171
277
  O limiar dos badges de estado é **4,5:1 e não 3:1** porque `.badge` é
172
- `font-size: 0.78rem; font-weight: 600` — abaixo do que a WCAG chama de texto
278
+ `font-size: var(--font-size-sm); font-weight: 600` — abaixo do que a WCAG chama de texto
173
279
  grande. Já `--focus-ring` é um componente gráfico, não texto: 3:1 basta.
174
280
 
175
281
  No tema claro as quatro cores de estado ficam no nível 700 da escala — é o tom
@@ -178,11 +284,13 @@ mais claro que ainda atende 4,5:1 sobre a superfície do próprio badge; `--stat
178
284
  preenchimentos sólidos são claros, então `--accent-text` inverte para
179
285
  `#0f1218`: era branco sobre `--state-error` no banner de desconexão, 2,98:1.
180
286
 
181
- Hover e foco por teclado precisam ser **distinguíveis um do outro**. Em
182
- `.dashboard-card` o hover só acende a borda (`--accent`); o foco desenha
183
- `outline: 2px solid var(--focus-ring)` com `outline-offset: 2px`, que continua
184
- visível em cima do hover. É a única regra do `app.css` que mexe em `outline` —
185
- antes ela o suprimia e dava a mesma aparência aos dois estados.
287
+ Hover e foco por teclado precisam ser **distinguíveis um do outro**. Uma
288
+ única regra `:focus-visible` compartilhada desenha `outline: 2px solid
289
+ var(--focus-ring)` com `outline-offset: 2px` em todo interativo (abas, cards
290
+ do dashboard e do Kanban, `<select>`s, fechar do drawer, "Todas as execuções",
291
+ linhas de fase/story). O hover muda cor, borda ou fundo — nunca o anel.
292
+ Inclusive em `.dashboard-card.is-live`, que já tem `border-color` própria: o
293
+ foco precisa do outline, não de outra troca de borda.
186
294
 
187
295
  ## Como verificar uma mudança aqui
188
296