chore: polish qa lab follow-ups
This commit is contained in:
@@ -69,6 +69,12 @@
|
|||||||
- any-glob-to-any-file:
|
- any-glob-to-any-file:
|
||||||
- "extensions/qa-channel/**"
|
- "extensions/qa-channel/**"
|
||||||
- "docs/channels/qa-channel.md"
|
- "docs/channels/qa-channel.md"
|
||||||
|
"extensions: qa-lab":
|
||||||
|
- changed-files:
|
||||||
|
- any-glob-to-any-file:
|
||||||
|
- "extensions/qa-lab/**"
|
||||||
|
- "docs/concepts/qa-e2e-automation.md"
|
||||||
|
- "docs/channels/qa-channel.md"
|
||||||
"channel: signal":
|
"channel: signal":
|
||||||
- changed-files:
|
- changed-files:
|
||||||
- any-glob-to-any-file:
|
- any-glob-to-any-file:
|
||||||
|
|||||||
@@ -149,3 +149,4 @@ changelog/fragments/
|
|||||||
test/fixtures/openclaw-vitest-unit-report.json
|
test/fixtures/openclaw-vitest-unit-report.json
|
||||||
analysis/
|
analysis/
|
||||||
.artifacts/qa-e2e/
|
.artifacts/qa-e2e/
|
||||||
|
extensions/qa-lab/web/dist/
|
||||||
|
|||||||
@@ -68,9 +68,19 @@ Current vertical slice:
|
|||||||
pnpm qa:e2e
|
pnpm qa:e2e
|
||||||
```
|
```
|
||||||
|
|
||||||
This starts the in-repo QA bus, boots the bundled `qa-channel` runtime slice,
|
This now routes through the bundled `qa-lab` extension. It starts the in-repo
|
||||||
runs a deterministic self-check, and writes a Markdown report under
|
QA bus, boots the bundled `qa-channel` runtime slice, runs a deterministic
|
||||||
`.artifacts/qa-e2e/`.
|
self-check, and writes a Markdown report under `.artifacts/qa-e2e/`.
|
||||||
|
|
||||||
|
Private debugger UI:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pnpm qa:lab:build
|
||||||
|
pnpm openclaw qa ui
|
||||||
|
```
|
||||||
|
|
||||||
|
That launches the private QA debugger at a local URL, separate from the
|
||||||
|
shipped Control UI bundle.
|
||||||
|
|
||||||
## Scope
|
## Scope
|
||||||
|
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ Discord, Teams, and similar channels.
|
|||||||
|
|
||||||
## System overview
|
## System overview
|
||||||
|
|
||||||
The system has five pieces.
|
The system has six pieces.
|
||||||
|
|
||||||
1. `qa-channel` plugin
|
1. `qa-channel` plugin
|
||||||
|
|
||||||
@@ -144,6 +144,14 @@ The auto-fix worker should start outside the container. It needs direct repo
|
|||||||
and GitHub access, clean worktree control, and better isolation from the
|
and GitHub access, clean worktree control, and better isolation from the
|
||||||
runtime under test.
|
runtime under test.
|
||||||
|
|
||||||
|
6. `qa-lab` extension
|
||||||
|
|
||||||
|
- Bundled extension under `extensions/qa-lab`
|
||||||
|
- Owns the QA harness, Markdown report flow, and private debugger UI
|
||||||
|
- Registers hidden CLI entrypoints such as `openclaw qa run` and
|
||||||
|
`openclaw qa ui`
|
||||||
|
- Stays separate from the shipped Control UI bundle
|
||||||
|
|
||||||
## High-level flow
|
## High-level flow
|
||||||
|
|
||||||
1. Start `qa-bus`.
|
1. Start `qa-bus`.
|
||||||
@@ -222,6 +230,29 @@ That is enough to build a first QA controller for:
|
|||||||
This should be Phase 0 because it de-risks the scenario protocol before the
|
This should be Phase 0 because it de-risks the scenario protocol before the
|
||||||
full channel lands.
|
full channel lands.
|
||||||
|
|
||||||
|
## `qa-lab` extension design
|
||||||
|
|
||||||
|
`qa-lab` is the private operator-facing half of this system.
|
||||||
|
|
||||||
|
Suggested package:
|
||||||
|
|
||||||
|
- `extensions/qa-lab/`
|
||||||
|
|
||||||
|
Suggested responsibilities:
|
||||||
|
|
||||||
|
- host the synthetic bus state machine
|
||||||
|
- host the scenario runner
|
||||||
|
- write Markdown reports
|
||||||
|
- serve a private debugger UI on a separate local server
|
||||||
|
- keep that UI entirely outside the shipped Control UI bundle
|
||||||
|
|
||||||
|
Suggested UI shape:
|
||||||
|
|
||||||
|
- left rail for conversations and threads
|
||||||
|
- center transcript pane
|
||||||
|
- right rail for event stream and report inspection
|
||||||
|
- bottom inject-composer for inbound QA traffic
|
||||||
|
|
||||||
## `qa-channel` plugin design
|
## `qa-channel` plugin design
|
||||||
|
|
||||||
## Package layout
|
## Package layout
|
||||||
|
|||||||
Reference in New Issue
Block a user