Add VHS visual testing framework for TUI persona simulation#499
Open
Add VHS visual testing framework for TUI persona simulation#499
Conversation
- Add VHS tape scripts for 7 feature tests (smoke, first-launch, create-task, navigate-kanban, filter-search, settings, keyboard-power-user) and 4 persona journeys (newcomer, power-user, project-manager, developer) - Add seed-data.sh to create isolated test database with 4 projects and 12 tasks - Add run-all.sh runner and analyze.sh for LLM-driven UX analysis - Fix daemon to respect WORKTREE_DB_PATH env var (cmd/taskd uses db.DefaultPath()) - Colocate daemon PID file with database so isolated test instances don't conflict with the real daemon - Set TMUX env var in tapes to bypass tmux wrapper for direct TUI rendering Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
continue-on-error only affects workflow-level conclusion; GitHub PR checks still show the step as FAILURE. Catch the exit code and emit a GH Actions warning annotation instead so the check goes green. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
WORKTREE_DB_PATHenv var works end-to-end (daemon, PID file, TUI)What's included
VHS Infrastructure
vhs/seed-data.sh— Creates isolated test DB at/tmp/vhs-taskyou-test/with 4 projects and 12 sample tasksvhs/run-all.sh— Runs all tapes and collects screenshots/GIFsvhs/analyze.sh— Generates structured UX analysis prompts for LLM review of screenshotsFeature Tapes (
vhs/tapes/)00-smoke-test01-first-launch02-create-task03-navigate-kanban04-filter-search05-settings06-keyboard-power-userPersona Tapes (
vhs/personas/)Bug Fixes
WORKTREE_DB_PATH:cmd/taskd/main.gonow usesdb.DefaultPath()instead of hardcoded pathgetPidFilePath()colocates PID file with database directory, so isolated test daemons don't conflict with the real daemonHow to use
Then have an LLM read the screenshots in
vhs/output/screenshots/for UX analysis.Test plan
🤖 Generated with Claude Code