@ihyeon/flow-qa 0.8.0 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ko.md +1 -1
- package/README.md +1 -1
- package/dist/src/ui/public/app.js +3 -1
- package/dist/src/ui/public/i18n.js +2 -0
- package/docs/mobile.md +1 -1
- package/docs/releases.md +9 -0
- package/docs/ui.md +3 -1
- package/package.json +1 -1
package/README.ko.md
CHANGED
|
@@ -16,7 +16,7 @@ CLI와 `127.0.0.1` 전용 웹 UI를 제공합니다. UI는 영어로 시작하
|
|
|
16
16
|
Node.js 24.x(24.22.1 이상) 또는 26.12.1 이상이 필요합니다. 브라우저는 첫 웹 실행 전에 설치합니다.
|
|
17
17
|
|
|
18
18
|
```sh
|
|
19
|
-
npm install -g @ihyeon/flow-qa@0.8.
|
|
19
|
+
npm install -g @ihyeon/flow-qa@0.8.1
|
|
20
20
|
flow-qa browser install
|
|
21
21
|
flow-qa ui --demo
|
|
22
22
|
```
|
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ Flow QA is available as a CLI and a web UI bound to `127.0.0.1`. Provide a targe
|
|
|
16
16
|
Node.js 24.x (24.22.1 or later) or 26.12.1 or later is required. Install Chromium before the first web run:
|
|
17
17
|
|
|
18
18
|
```sh
|
|
19
|
-
npm install -g @ihyeon/flow-qa@0.8.
|
|
19
|
+
npm install -g @ihyeon/flow-qa@0.8.1
|
|
20
20
|
flow-qa browser install
|
|
21
21
|
flow-qa ui --demo
|
|
22
22
|
```
|
|
@@ -713,7 +713,9 @@
|
|
|
713
713
|
if (!cases.length) { host.append(el('p', 'empty', t('report.empty'))); return; }
|
|
714
714
|
if (!shown.length) { host.append(el('p', 'empty', t('report.noMatches'))); return; }
|
|
715
715
|
for (const item of shown) {
|
|
716
|
-
const
|
|
716
|
+
const attemptCount = (item.attempts || []).length;
|
|
717
|
+
const attemptCountLabel = t(attemptCount === 1 ? 'report.attemptCountSingular' : 'report.attemptCountPlural', { count: attemptCount });
|
|
718
|
+
const section = el('section', 'case-report'); section.append(el('h3', '', `${item.id} · ${item.title} · ${i18n.status(item.status)} · ${attemptCountLabel}`));
|
|
717
719
|
if (item.reason) section.append(el('p', '', t('app.reason', { reason: item.reason })));
|
|
718
720
|
section.append(el('p', '', t('app.expected'))); const expected = el('ul', 'compact-list'); for (const check of item.expected || []) expected.append(el('li', '', check)); section.append(expected);
|
|
719
721
|
for (const [attemptIndex, attempt] of (item.attempts || []).entries()) {
|
|
@@ -150,6 +150,8 @@
|
|
|
150
150
|
'report.filterFailedError': ['Failed/error only', '실패·오류만'],
|
|
151
151
|
'report.reset': ['Reset filters', '필터 초기화'],
|
|
152
152
|
'report.caseCount': ['Showing {shown} of {total} report cases', '보고서 케이스 {total}개 중 {shown}개 표시'],
|
|
153
|
+
'report.attemptCountSingular': ['{count} attempt', '시도 {count}회'],
|
|
154
|
+
'report.attemptCountPlural': ['{count} attempts', '시도 {count}회'],
|
|
153
155
|
'report.empty': ['This report has no cases.', '이 보고서에는 케이스가 없습니다.'],
|
|
154
156
|
'report.noMatches': ['No cases match these filters.', '필터에 맞는 케이스가 없습니다.'],
|
|
155
157
|
'report.filterHint': ['Filters only change the displayed cases. Downloads include all cases, and failed/error preparation uses all recorded failed/error cases regardless of visibility.', '필터는 표시되는 케이스에만 적용됩니다. 다운로드에는 모든 케이스가 포함되고, 실패·오류 준비에는 표시 여부와 관계없이 기록된 모든 실패·오류 케이스가 사용됩니다.'],
|
package/docs/mobile.md
CHANGED
|
@@ -9,7 +9,7 @@ Choose **Mobile** on the scenario screen, describe the flow, and generate or dow
|
|
|
9
9
|
With the installed CLI:
|
|
10
10
|
|
|
11
11
|
```sh
|
|
12
|
-
npm install -g @ihyeon/flow-qa@0.8.
|
|
12
|
+
npm install -g @ihyeon/flow-qa@0.8.1
|
|
13
13
|
flow-qa init ./my-qa
|
|
14
14
|
# Write your mobile flow in my-qa/flows/my-flow.md first.
|
|
15
15
|
flow-qa plan flows/my-flow.md --platform mobile --prompt-only --workspace ./my-qa
|
package/docs/releases.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
The alpha entries below are historical release records. They document earlier package versions and checks.
|
|
4
4
|
|
|
5
|
+
## 0.8.1: show recorded attempt counts in report headings
|
|
6
|
+
|
|
7
|
+
Detailed report case headings now show their recorded attempt count, including zero, with English singular/plural and Korean labels. This makes repeated or absent attempts visible before reading the attempt details. The count uses only the saved attempt list; case status, search/filter behavior, evidence links, report exports, and execution remain unchanged.
|
|
8
|
+
|
|
9
|
+
Locally verified on macOS with Node.js 24.22.1 on 2026-11-07 (Asia/Tokyo): 118 tests, type checking, UI syntax/design-system audit, the report-explorer browser smoke, and package checks passed. The existing report smoke now covers zero, one, and two recorded attempts, English singular/plural, Korean labels, and 390px layout alongside report filtering/export/evidence checks. A fresh tarball installation ran seven passing browser cases and verified the attempt count in the installed UI. No model calls, external logins, or native-device runs were used.
|
|
10
|
+
|
|
11
|
+
- Package: [`@ihyeon/flow-qa@0.8.1`](https://www.npmjs.com/package/@ihyeon/flow-qa/v/0.8.1)
|
|
12
|
+
- Release: [GitHub 0.8.1](https://github.com/hyeonse-swing/flow-qa/releases/tag/v0.8.1)
|
|
13
|
+
|
|
5
14
|
## 0.8.0: explore cases and errors within a report
|
|
6
15
|
|
|
7
16
|
Detailed reports now support case-content search and status filters, including **Failed/error only**. Search covers IDs, titles, reasons, expectations, attempt/secondary errors, and step labels/errors. Status choices show counts from the complete open report, while the match count describes displayed cases. Partial-run scope and report-level warnings remain visible; empty reports are distinguished from filters with no matches.
|
package/docs/ui.md
CHANGED
|
@@ -7,7 +7,7 @@ Describe a user flow, review cases, and configure a target when ready to run. We
|
|
|
7
7
|
Node.js 24.x (24.22.1 or later) or 26.12.1 or later is required. Node 25 is unsupported. Upgrade the Node runtime and restart any running UI process; updating Flow QA alone does not patch Node. Install Flow QA and start the web demo:
|
|
8
8
|
|
|
9
9
|
```sh
|
|
10
|
-
npm install -g @ihyeon/flow-qa@0.8.
|
|
10
|
+
npm install -g @ihyeon/flow-qa@0.8.1
|
|
11
11
|
flow-qa browser install
|
|
12
12
|
flow-qa ui --demo
|
|
13
13
|
```
|
|
@@ -80,6 +80,8 @@ When recent run records change, a single loaded page refreshes automatically. If
|
|
|
80
80
|
|
|
81
81
|
### Explore cases in a report
|
|
82
82
|
|
|
83
|
+
From `0.8.1`, each case heading also shows the number of attempts recorded in that report. Zero attempts is shown explicitly. This count does not infer a retry policy or change the recorded case status.
|
|
84
|
+
|
|
83
85
|
From `0.8.0`, open **Run history → Detailed report** and use **Search cases** with **Case status** to narrow the displayed results. Search ignores case and surrounding whitespace, and matches case IDs, titles, reasons, expected results, attempt errors, secondary errors, step labels, and step errors. User-written Korean text is supported. Artifact paths and translated status labels are not search fields.
|
|
84
86
|
|
|
85
87
|
**Failed/error only** shows those two recorded statuses; the other status choices distinguish passed, failed, error, blocked, flaky, and skipped. Status-option counts describe the entire open report, while the displayed count shows matches out of that report's recorded cases. A partial run's omitted cases are not included in those counts; its selected/full-suite scope remains visible separately. Report-level warnings remain visible even when no case matches. **Reset filters** clears both search and status.
|