23 lines
1.6 KiB
Markdown
23 lines
1.6 KiB
Markdown
# 02: No-AI desktop path: PyQt bot connected to the page
|
|
|
|
Part of: ../spec.md
|
|
|
|
**What to build:** A developer runs the no-AI skill in a PyQt project that already has a bot printing step markers. The skill chooses the desktop path and connects the bot to the dashboard:
|
|
- The bot runs as its own child process, and its output is read line by line.
|
|
- Specific step markers move the progress bar and step list.
|
|
- A friendly-rules table turns raw output lines into plain-English log lines.
|
|
- Error lines always appear, even when no rule matches.
|
|
- Dark mode is remembered between launches.
|
|
|
|
**Blocked by:** 01
|
|
|
|
**Status:** ready-for-agent
|
|
|
|
- [ ] The skill detects the PyQt project and the bot entry point, and fills in the host template's bot command, steps, step markers and friendly rules from the bot's real output.
|
|
- [ ] Clicking Run starts the bot in a separate process. The Run button disables itself while running, and the status dot goes ready → running → done/error.
|
|
- [ ] Step markers match on specific substrings and the first match wins. An unrelated line containing a common word does not move progress.
|
|
- [ ] Unmatched error lines are always shown. Unmatched non-error lines are hidden.
|
|
- [ ] The dark-mode choice persists across app restarts.
|
|
- [ ] A Python assert-based self-check covers line classification, step-marker matching and friendly-rule matching, including the "never hide an error" case.
|
|
- [ ] Skill eval on test project (b), a PyQt project with a step-marker bot: the skill doesn't ask the stack question, and the running page shows real steps and log lines.
|