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.
- package/dist/{agent-TB6W7PT7.js → agent-HMZTXCRT.js} +5 -5
- package/dist/{analyze-6M3KEOX7.js → analyze-Q4ONIWRZ.js} +10 -10
- package/dist/{apply-ADB3ZK7W.js → apply-EEFPY2W4.js} +5 -5
- package/dist/{bench-FM7I7EIV.js → bench-WWWXLTFH.js} +9 -9
- package/dist/{chunk-KZ5EY5XX.js → chunk-34OCSKOB.js} +7 -7
- package/dist/{chunk-UWDCIFTP.js → chunk-45WZ6GMI.js} +27 -43
- package/dist/chunk-45WZ6GMI.js.map +1 -0
- package/dist/{chunk-QMIQR7EE.js → chunk-62GVVZQO.js} +3 -3
- package/dist/{chunk-YII4U7ZD.js → chunk-6K2LCFG6.js} +2 -2
- package/dist/{chunk-A4H7P7T7.js → chunk-7UMMFOL2.js} +3 -3
- package/dist/chunk-7UMMFOL2.js.map +1 -0
- package/dist/{chunk-HJBF4WD2.js → chunk-CWSQVHVV.js} +59 -25
- package/dist/chunk-CWSQVHVV.js.map +1 -0
- package/dist/{chunk-SGTTR4XW.js → chunk-E4I6MMHD.js} +4 -4
- package/dist/{chunk-6YQT3SSM.js → chunk-ECU7YO7S.js} +2 -2
- package/dist/{chunk-MI5TREN3.js → chunk-EG2MGDP5.js} +6 -6
- package/dist/{chunk-RCZJQUTC.js → chunk-HOAHMERN.js} +43 -10
- package/dist/chunk-HOAHMERN.js.map +1 -0
- package/dist/{chunk-HLAPOUEM.js → chunk-KMCS76ZW.js} +3 -3
- package/dist/{chunk-KZXQWC7U.js → chunk-KRAGAUKD.js} +8 -8
- package/dist/{chunk-E6KXCV3T.js → chunk-LGHND47K.js} +2 -2
- package/dist/{chunk-DV7HUC4Z.js → chunk-LI35PIIS.js} +2 -2
- package/dist/{chunk-Z5O2XBWA.js → chunk-LTH6XYZ3.js} +5 -5
- package/dist/{chunk-2SUFAE6X.js → chunk-NEWNXZ65.js} +21 -12
- package/dist/{chunk-2SUFAE6X.js.map → chunk-NEWNXZ65.js.map} +1 -1
- package/dist/{chunk-LPWPFIIB.js → chunk-OODXFCQV.js} +7 -7
- package/dist/{chunk-ISZ54SVE.js → chunk-PMLE7KAQ.js} +17 -9
- package/dist/chunk-PMLE7KAQ.js.map +1 -0
- package/dist/{chunk-HY5HLFDU.js → chunk-QF7VEL3M.js} +115 -14
- package/dist/chunk-QF7VEL3M.js.map +1 -0
- package/dist/{chunk-B3TSS7BT.js → chunk-QJ44VG5G.js} +2 -2
- package/dist/{chunk-VE3IYNDN.js → chunk-SA6HXL4Y.js} +2 -2
- package/dist/{chunk-UK4E2FUA.js → chunk-TZYINKCC.js} +75 -53
- package/dist/chunk-TZYINKCC.js.map +1 -0
- package/dist/{chunk-32JSYXEK.js → chunk-V7QOIQYC.js} +2 -2
- package/dist/{chunk-ANI2NTR4.js → chunk-XUEMATVY.js} +6 -6
- package/dist/{chunk-D6ZBGJ3L.js → chunk-ZVZMWNCG.js} +129 -35
- package/dist/chunk-ZVZMWNCG.js.map +1 -0
- package/dist/cli.js +35 -35
- package/dist/cli.js.map +1 -1
- package/dist/{config-KGZUPAUP.js → config-LEBZZCJP.js} +4 -4
- package/dist/{conventions-RYN7OXJN.js → conventions-XOT6YW5L.js} +6 -6
- package/dist/{execute-QL3ZQIAP.js → execute-LELOSR5T.js} +14 -14
- package/dist/{generate-CX6KNHZS.js → generate-JGW5JSKB.js} +10 -10
- package/dist/{init-PDVQDRS6.js → init-TO6MUXO4.js} +7 -5
- package/dist/{operations-CAKIT2BO.js → operations-O4FORFIH.js} +4 -4
- package/dist/{plan-PRORGS3L.js → plan-OXAT344Q.js} +12 -12
- package/dist/{policy-WX6O2JID.js → policy-U5NBFAO5.js} +5 -5
- package/dist/{pr-27RMQI5F.js → pr-UZHNKKZC.js} +12 -12
- package/dist/{pr-review-VNESMAMT.js → pr-review-Q4ACAWDM.js} +9 -9
- package/dist/{prd-ZNC4T5BS.js → prd-6CYEMLDY.js} +12 -12
- package/dist/{recorder-N7U66HCO.js → recorder-2BAKPBRA.js} +2 -2
- package/dist/{resume-VLWIE264.js → resume-URCU6CIJ.js} +26 -26
- package/dist/{review-7CREJDKB.js → review-LVZT2TMW.js} +13 -13
- package/dist/{routing-VCDYHSXA.js → routing-EK6RBZM4.js} +6 -6
- package/dist/run-2RXJCJKT.js +56 -0
- package/dist/{usage-U7QNGCPK.js → usage-KTMYXAPF.js} +3 -3
- package/dist/{web-HUNDHCJ4.js → web-B5UPHHR5.js} +8 -8
- package/package.json +1 -1
- package/web/AGENTS.md +115 -7
- package/web/public/app.css +393 -245
- package/web/public/app.js +108 -38
- package/web/public/index.html +106 -78
- package/dist/chunk-A4H7P7T7.js.map +0 -1
- package/dist/chunk-D6ZBGJ3L.js.map +0 -1
- package/dist/chunk-HJBF4WD2.js.map +0 -1
- package/dist/chunk-HY5HLFDU.js.map +0 -1
- package/dist/chunk-ISZ54SVE.js.map +0 -1
- package/dist/chunk-RCZJQUTC.js.map +0 -1
- package/dist/chunk-UK4E2FUA.js.map +0 -1
- package/dist/chunk-UWDCIFTP.js.map +0 -1
- package/dist/run-3MPORLF5.js +0 -56
- /package/dist/{agent-TB6W7PT7.js.map → agent-HMZTXCRT.js.map} +0 -0
- /package/dist/{analyze-6M3KEOX7.js.map → analyze-Q4ONIWRZ.js.map} +0 -0
- /package/dist/{apply-ADB3ZK7W.js.map → apply-EEFPY2W4.js.map} +0 -0
- /package/dist/{bench-FM7I7EIV.js.map → bench-WWWXLTFH.js.map} +0 -0
- /package/dist/{chunk-KZ5EY5XX.js.map → chunk-34OCSKOB.js.map} +0 -0
- /package/dist/{chunk-QMIQR7EE.js.map → chunk-62GVVZQO.js.map} +0 -0
- /package/dist/{chunk-YII4U7ZD.js.map → chunk-6K2LCFG6.js.map} +0 -0
- /package/dist/{chunk-SGTTR4XW.js.map → chunk-E4I6MMHD.js.map} +0 -0
- /package/dist/{chunk-6YQT3SSM.js.map → chunk-ECU7YO7S.js.map} +0 -0
- /package/dist/{chunk-MI5TREN3.js.map → chunk-EG2MGDP5.js.map} +0 -0
- /package/dist/{chunk-HLAPOUEM.js.map → chunk-KMCS76ZW.js.map} +0 -0
- /package/dist/{chunk-KZXQWC7U.js.map → chunk-KRAGAUKD.js.map} +0 -0
- /package/dist/{chunk-E6KXCV3T.js.map → chunk-LGHND47K.js.map} +0 -0
- /package/dist/{chunk-DV7HUC4Z.js.map → chunk-LI35PIIS.js.map} +0 -0
- /package/dist/{chunk-Z5O2XBWA.js.map → chunk-LTH6XYZ3.js.map} +0 -0
- /package/dist/{chunk-LPWPFIIB.js.map → chunk-OODXFCQV.js.map} +0 -0
- /package/dist/{chunk-B3TSS7BT.js.map → chunk-QJ44VG5G.js.map} +0 -0
- /package/dist/{chunk-VE3IYNDN.js.map → chunk-SA6HXL4Y.js.map} +0 -0
- /package/dist/{chunk-32JSYXEK.js.map → chunk-V7QOIQYC.js.map} +0 -0
- /package/dist/{chunk-ANI2NTR4.js.map → chunk-XUEMATVY.js.map} +0 -0
- /package/dist/{config-KGZUPAUP.js.map → config-LEBZZCJP.js.map} +0 -0
- /package/dist/{conventions-RYN7OXJN.js.map → conventions-XOT6YW5L.js.map} +0 -0
- /package/dist/{execute-QL3ZQIAP.js.map → execute-LELOSR5T.js.map} +0 -0
- /package/dist/{generate-CX6KNHZS.js.map → generate-JGW5JSKB.js.map} +0 -0
- /package/dist/{init-PDVQDRS6.js.map → init-TO6MUXO4.js.map} +0 -0
- /package/dist/{operations-CAKIT2BO.js.map → operations-O4FORFIH.js.map} +0 -0
- /package/dist/{plan-PRORGS3L.js.map → plan-OXAT344Q.js.map} +0 -0
- /package/dist/{policy-WX6O2JID.js.map → policy-U5NBFAO5.js.map} +0 -0
- /package/dist/{pr-27RMQI5F.js.map → pr-UZHNKKZC.js.map} +0 -0
- /package/dist/{pr-review-VNESMAMT.js.map → pr-review-Q4ACAWDM.js.map} +0 -0
- /package/dist/{prd-ZNC4T5BS.js.map → prd-6CYEMLDY.js.map} +0 -0
- /package/dist/{recorder-N7U66HCO.js.map → recorder-2BAKPBRA.js.map} +0 -0
- /package/dist/{resume-VLWIE264.js.map → resume-URCU6CIJ.js.map} +0 -0
- /package/dist/{review-7CREJDKB.js.map → review-LVZT2TMW.js.map} +0 -0
- /package/dist/{routing-VCDYHSXA.js.map → routing-EK6RBZM4.js.map} +0 -0
- /package/dist/{run-3MPORLF5.js.map → run-2RXJCJKT.js.map} +0 -0
- /package/dist/{usage-U7QNGCPK.js.map → usage-KTMYXAPF.js.map} +0 -0
- /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-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
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-
|
|
9
|
+
import "./chunk-KMCS76ZW.js";
|
|
10
10
|
import "./chunk-7F7LGMVO.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-TZYINKCC.js";
|
|
12
12
|
import "./chunk-WCCZJL7W.js";
|
|
13
13
|
import "./chunk-DGRTJD5R.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-ZVZMWNCG.js";
|
|
15
15
|
import "./chunk-3D4A4B46.js";
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
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-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
133
|
+
//# sourceMappingURL=policy-U5NBFAO5.js.map
|
|
@@ -3,28 +3,28 @@ import {
|
|
|
3
3
|
issueClosesLines,
|
|
4
4
|
multiIssueContext,
|
|
5
5
|
runPr
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-OODXFCQV.js";
|
|
7
7
|
import "./chunk-YUNBOUQH.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-V7QOIQYC.js";
|
|
9
|
+
import "./chunk-SA6HXL4Y.js";
|
|
10
|
+
import "./chunk-62GVVZQO.js";
|
|
11
11
|
import "./chunk-KMMASOA6.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-KMCS76ZW.js";
|
|
13
13
|
import "./chunk-7F7LGMVO.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-TZYINKCC.js";
|
|
15
15
|
import "./chunk-WCCZJL7W.js";
|
|
16
16
|
import "./chunk-DGRTJD5R.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-ZVZMWNCG.js";
|
|
18
18
|
import "./chunk-3D4A4B46.js";
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
39
|
+
//# sourceMappingURL=pr-UZHNKKZC.js.map
|
|
@@ -2,23 +2,23 @@
|
|
|
2
2
|
import {
|
|
3
3
|
exitCodeFor,
|
|
4
4
|
runPrReview
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-LTH6XYZ3.js";
|
|
6
6
|
import "./chunk-YUNBOUQH.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-KMCS76ZW.js";
|
|
8
8
|
import "./chunk-7F7LGMVO.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-TZYINKCC.js";
|
|
10
10
|
import "./chunk-WCCZJL7W.js";
|
|
11
11
|
import "./chunk-DGRTJD5R.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
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-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
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-
|
|
9
|
+
import "./chunk-KMCS76ZW.js";
|
|
10
10
|
import "./chunk-7F7LGMVO.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-TZYINKCC.js";
|
|
12
12
|
import "./chunk-WCCZJL7W.js";
|
|
13
13
|
import "./chunk-DGRTJD5R.js";
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
33
|
+
//# sourceMappingURL=prd-6CYEMLDY.js.map
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
resetTelemetryState,
|
|
11
11
|
timingFromUsage,
|
|
12
12
|
usageFromClaude
|
|
13
|
-
} from "./chunk-
|
|
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-
|
|
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-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
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-
|
|
10
|
-
import "./chunk-
|
|
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-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
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-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
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-
|
|
31
|
+
import "./chunk-KMCS76ZW.js";
|
|
32
32
|
import "./chunk-7F7LGMVO.js";
|
|
33
|
-
import "./chunk-
|
|
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-
|
|
38
|
+
import "./chunk-ZVZMWNCG.js";
|
|
39
39
|
import "./chunk-C5TL7T4V.js";
|
|
40
40
|
import "./chunk-3D4A4B46.js";
|
|
41
|
-
import "./chunk-
|
|
42
|
-
import "./chunk-
|
|
41
|
+
import "./chunk-LGHND47K.js";
|
|
42
|
+
import "./chunk-QF7VEL3M.js";
|
|
43
43
|
import {
|
|
44
44
|
resolveProjectPaths
|
|
45
|
-
} from "./chunk-
|
|
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-
|
|
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-
|
|
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-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-EG2MGDP5.js";
|
|
5
|
+
import "./chunk-ECU7YO7S.js";
|
|
6
|
+
import "./chunk-E4I6MMHD.js";
|
|
7
7
|
import "./chunk-L6HSKTQE.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-SA6HXL4Y.js";
|
|
9
|
+
import "./chunk-62GVVZQO.js";
|
|
10
10
|
import "./chunk-KMMASOA6.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-KMCS76ZW.js";
|
|
12
12
|
import "./chunk-7F7LGMVO.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-TZYINKCC.js";
|
|
14
14
|
import "./chunk-WCCZJL7W.js";
|
|
15
15
|
import "./chunk-DGRTJD5R.js";
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
35
|
+
//# sourceMappingURL=review-LVZT2TMW.js.map
|
|
@@ -6,16 +6,16 @@ import {
|
|
|
6
6
|
runRoutingReport,
|
|
7
7
|
runRoutingUse,
|
|
8
8
|
writeRoutingPreference
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
177
|
+
//# sourceMappingURL=usage-KTMYXAPF.js.map
|
|
@@ -5,19 +5,19 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
ensureSingleWebServer,
|
|
7
7
|
stopWebMonitor
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
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-
|
|
15
|
+
import "./chunk-ZVZMWNCG.js";
|
|
16
16
|
import "./chunk-C5TL7T4V.js";
|
|
17
17
|
import {
|
|
18
18
|
loadWebConfig
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import "./chunk-
|
|
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-
|
|
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-
|
|
172
|
+
//# sourceMappingURL=web-B5UPHHR5.js.map
|
package/package.json
CHANGED
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).
|
|
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:
|
|
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**.
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
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 só 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
|
|