Skip to content

Commit 39693f0

Browse files
committed
fix(FR-2872): align subtasks schema with project convention and clean up dev-plan table
1 parent b344017 commit 39693f0

2 files changed

Lines changed: 24 additions & 24 deletions

File tree

.specs/FR-2871-webui-smoke-cli/dev-plan.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,16 @@ GitHub mirror issue numbers are populated by the Jira → GitHub webhook clone;
1313

1414
| FR | Jira | Tier | GitHub | Title |
1515
|----|------|------|--------|-------|
16-
| FR-A | [FR-2875](https://lablup.atlassian.net/browse/FR-2875) | MVP | pending | chore(WebUI Smoke CLI): introduce @smoke tag convention for e2e specs |
17-
| FR-B | [FR-2876](https://lablup.atlassian.net/browse/FR-2876) | MVP | pending | feat(WebUI Smoke CLI): scaffold backend.ai-webui-smoke-cli workspace package |
18-
| FR-C | [FR-2877](https://lablup.atlassian.net/browse/FR-2877) | MVP | pending | feat(WebUI Smoke CLI): implement runner with tag filter and external endpoint support |
19-
| FR-D | [FR-2878](https://lablup.atlassian.net/browse/FR-2878) | Phase 2 | pending | feat(WebUI Smoke CLI): add preflight/doctor subcommand and role auto-detection |
20-
| FR-E | [FR-2879](https://lablup.atlassian.net/browse/FR-2879) | Phase 2 | pending | feat(WebUI Smoke CLI): post-process report with summary.json and diagnostic block |
21-
| FR-F | [FR-2880](https://lablup.atlassian.net/browse/FR-2880) | Phase 2 | pending | refactor(WebUI Smoke CLI): extract single-account-safe e2e utilities |
22-
| FR-G | [FR-2881](https://lablup.atlassian.net/browse/FR-2881) | Phase 2 | pending | feat(WebUI Smoke CLI): bundle Chromium and add air-gap + insecure-tls support |
23-
| FR-H | [FR-2882](https://lablup.atlassian.net/browse/FR-2882) | Phase 2 | pending | chore(WebUI Smoke CLI): SEA/pkg binary build and internal release workflow |
24-
| FR-I | [FR-2883](https://lablup.atlassian.net/browse/FR-2883) | Phase 2 | pending | docs(WebUI Smoke CLI): operator README in English and Korean |
25-
| FR-J | [FR-2884](https://lablup.atlassian.net/browse/FR-2884) | Phase 2 | pending | feat(WebUI Smoke CLI): expand smoke coverage (App launcher P1, model serving, RBAC basics) |
16+
| FR-A | [FR-2875](https://lablup.atlassian.net/browse/FR-2875) | MVP | #7379 | chore(WebUI Smoke CLI): introduce @smoke tag convention for e2e specs |
17+
| FR-B | [FR-2876](https://lablup.atlassian.net/browse/FR-2876) | MVP | #7380 | feat(WebUI Smoke CLI): scaffold backend.ai-webui-smoke-cli workspace package |
18+
| FR-C | [FR-2877](https://lablup.atlassian.net/browse/FR-2877) | MVP | #7381 | feat(WebUI Smoke CLI): implement runner with tag filter and external endpoint support |
19+
| FR-D | [FR-2878](https://lablup.atlassian.net/browse/FR-2878) | Phase 2 | #7382 | feat(WebUI Smoke CLI): add preflight/doctor subcommand and role auto-detection |
20+
| FR-E | [FR-2879](https://lablup.atlassian.net/browse/FR-2879) | Phase 2 | #7383 | feat(WebUI Smoke CLI): post-process report with summary.json and diagnostic block |
21+
| FR-F | [FR-2880](https://lablup.atlassian.net/browse/FR-2880) | Phase 2 | #7384 | refactor(WebUI Smoke CLI): extract single-account-safe e2e utilities |
22+
| FR-G | [FR-2881](https://lablup.atlassian.net/browse/FR-2881) | Phase 2 | #7385 | feat(WebUI Smoke CLI): bundle Chromium and add air-gap + insecure-tls support |
23+
| FR-H | [FR-2882](https://lablup.atlassian.net/browse/FR-2882) | Phase 2 | #7386 | chore(WebUI Smoke CLI): SEA/pkg binary build and internal release workflow |
24+
| FR-I | [FR-2883](https://lablup.atlassian.net/browse/FR-2883) | Phase 2 | #7387 | docs(WebUI Smoke CLI): operator README in English and Korean |
25+
| FR-J | [FR-2884](https://lablup.atlassian.net/browse/FR-2884) | Phase 2 | #7388 | feat(WebUI Smoke CLI): expand smoke coverage (App launcher P1, model serving, RBAC basics) |
2626

2727
## Dependency Graph
2828

@@ -70,8 +70,8 @@ Encoded Jira links (`blocks` unless noted):
7070

7171
| FR | Files touched | Verification |
7272
|----|---------------|--------------|
73-
| FR-A | `E2E-TEST-NAMING-GUIDELINES.md`, `e2e/tests/**` (tag annotations only) | `pnpm --filter ./e2e exec playwright test --grep @smoke --list` lists starter specs; existing e2e CI run count unchanged |
74-
| FR-B | `packages/backend.ai-webui-smoke-cli/` (new), `pnpm-workspace.yaml` | `pnpm install && pnpm --filter backend.ai-webui-smoke-cli run build`; `bai-smoke list|version|run --help` |
73+
| FR-A | `e2e/E2E-TEST-NAMING-GUIDELINES.md`, `e2e/**` (tag annotations only) | `pnpm exec playwright test --grep @smoke --list` (run at the repo root) lists starter specs; existing e2e CI run count unchanged |
74+
| FR-B | `packages/backend.ai-webui-smoke-cli/` (new), `pnpm-workspace.yaml` | `pnpm install && pnpm --filter backend.ai-webui-smoke-cli run build`; verify `bai-smoke list`, `bai-smoke version`, and `bai-smoke run --help` |
7575

7676
### Wave 2 — MVP runner
7777

.specs/FR-2871-webui-smoke-cli/metadata.json

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,18 @@
66
"specTaskUrl": "https://lablup.atlassian.net/browse/FR-2872",
77
"stories": [],
88
"sourceIssues": [],
9-
"subtasks": {
10-
"FR-A": "FR-2875",
11-
"FR-B": "FR-2876",
12-
"FR-C": "FR-2877",
13-
"FR-D": "FR-2878",
14-
"FR-E": "FR-2879",
15-
"FR-F": "FR-2880",
16-
"FR-G": "FR-2881",
17-
"FR-H": "FR-2882",
18-
"FR-I": "FR-2883",
19-
"FR-J": "FR-2884"
20-
},
9+
"subtasks": [
10+
{ "key": "FR-2875", "label": "A", "title": "feat(FR-2871 / A): @smoke tag convention" },
11+
{ "key": "FR-2876", "label": "B", "title": "feat(FR-2871 / B): backend.ai-webui-smoke-cli workspace scaffold" },
12+
{ "key": "FR-2877", "label": "C", "title": "feat(FR-2871 / C): playwright.smoke.config.ts + runner" },
13+
{ "key": "FR-2878", "label": "D", "title": "feat(FR-2871 / D): preflight/doctor subcommand + role auto-detection" },
14+
{ "key": "FR-2879", "label": "E", "title": "feat(FR-2871 / E): smoke spec set expansion" },
15+
{ "key": "FR-2880", "label": "F", "title": "feat(FR-2871 / F): HTML+JSON report directory + summary" },
16+
{ "key": "FR-2881", "label": "G", "title": "feat(FR-2871 / G): single-binary build (pkg/sea)" },
17+
{ "key": "FR-2882", "label": "H", "title": "feat(FR-2871 / H): air-gap bundle (browsers + assets)" },
18+
{ "key": "FR-2883", "label": "I", "title": "feat(FR-2871 / I): app launcher / wsproxy smoke scenarios" },
19+
{ "key": "FR-2884", "label": "J", "title": "docs(FR-2871 / J): Field-Ops handoff guide" }
20+
],
2121
"createdAt": "2026-05-12T00:00:00Z",
2222
"verification": {
2323
"verifiedAt": "2026-05-12T11:30:00Z",

0 commit comments

Comments
 (0)