feat: browser pre-verification for /gsd:verify-work#819
Open
ethan-hurst wants to merge 7 commits intogsd-build:mainfrom
Open
feat: browser pre-verification for /gsd:verify-work#819ethan-hurst wants to merge 7 commits intogsd-build:mainfrom
ethan-hurst wants to merge 7 commits intogsd-build:mainfrom
Conversation
added 7 commits
February 28, 2026 20:28
Command shipped in a92512a but was missing from all documentation. Added to help.md (full reference + common workflows), README.md command table, and USER-GUIDE.md command reference.
Add centralized path resolution layer (paths.cjs) that enables milestone-scoped directories for parallel milestone work. All 11 lib files refactored to use resolvePlanningPaths() instead of hardcoded .planning/ paths. Key changes: - New paths.cjs: resolvePlanningPaths(cwd, milestoneOverride) resolves abs/rel paths based on ACTIVE_MILESTONE file or --milestone CLI flag - --milestone <name> CLI flag parsed in gsd-tools.cjs - New commands: milestone create/switch/list/status - All init commands output milestone, is_multi_milestone, planning_base - Legacy mode (no ACTIVE_MILESTONE) returns identical paths to before - Auto-migration: first milestone create copies existing global state - 25 new tests for paths and milestone commands (457 total, 0 failures)
Replace hardcoded .planning/ paths in bash commands and commit
file lists with init JSON variables ({state_path}, {roadmap_path},
{planning_base}/...). Workflows without init calls gain appropriate
init calls. Global paths (PROJECT.md, codebase/) left unchanged.
…tusline, and docs (gsd-build#291) Phase 5: polish for concurrent milestone execution. - Milestone-scoped commit prefixes in execute-plan.md (v2.0/08-02) - cmdMilestoneSwitch warns about in-progress work before switching - /gsd:switch-milestone workflow and command - Statusline shows active milestone in cyan [v2.0] - new-milestone.md calls milestone create for multi-milestone mode - Help and README updated with switch-milestone and concurrent docs
…itch-warning tests (gsd-build#291) - USER-GUIDE: add /gsd:switch-milestone, concurrent milestones section, multi-milestone directory layout - CHANGELOG: add [Unreleased] entry for concurrent milestone execution - planner-subagent-prompt.md: replace hardcoded .planning/ paths with milestone-aware template variables - 4 new tests: switch in-progress warning, idle switch, same-milestone switch, and auto-migration on first milestone create (461 total)
…ration (gsd-build#99) Add structured bug reporting lifecycle: report → triage → investigate → fix → resolve. - Skill file, workflow, and bug-report template - CLI commands: bug list/update/resolve, init bugs, scaffold bugs - Severity inference from keywords (critical/high/medium/low) - Diagnostic log capture (git state, error output, log files) - Optional GitHub issue creation via gh CLI - 13 new tests across 4 test suites - Registered in help, README, USER-GUIDE, CHANGELOG - STATE.md and progress workflow track active bugs
Spawn a gsd-browser-verifier agent via chrome-devtools-mcp to auto-test UI deliverables before human UAT. Tests that auto-pass get skipped, tests that auto-fail get enriched with diagnostics, and only ambiguous tests reach the user. Opt-in via browser.enabled config; degrades gracefully when MCP is not configured.
This was referenced Feb 28, 2026
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.
What
Add opt-in browser pre-verification to
/gsd:verify-workthat auto-tests UI deliverables viachrome-devtools-mcpbefore human UAT (#201).Why
Users currently test every UI deliverable manually one-by-one. Browser automation can auto-pass obvious tests, enrich failures with diagnostics, and only send ambiguous tests to the human — cutting UAT time significantly.
Testing
Verification steps:
/gsd:verify-workskips browser step with info message, proceeds to manual UAT as beforebrowser.enabled: true+ running dev server: attempts browser verification, produces auto_pass/needs_human resultsnode bin/gsd-tools.cjs config-ensure-sectionincludesbrowsersection withenabled: falsenode bin/gsd-tools.cjs init verify-work <phase>includesbrowser_enabledfieldnpm test— 498/498 passing (7 new tests, 0 regressions)Checklist
Breaking Changes
None — feature is opt-in (
browser.enabled: falseby default). Zero behavioral change when disabled.Files Changed (13)
New:
agents/gsd-browser-verifier.md— Browser verification agent definitionget-shit-done/references/browser-setup.md— Setup guideConfig layer:
get-shit-done/bin/lib/config.cjs— Browser defaults + deep-merge for nested authget-shit-done/bin/lib/core.cjs—browserfield inloadConfig()returnget-shit-done/bin/lib/init.cjs—browser_enabled/browser_base_urlin verify-work initWorkflow:
get-shit-done/workflows/verify-work.md—browser_pre_verifystep + auto_pass skip + auto_note displayDocs/Templates:
get-shit-done/templates/UAT.md—auto_pass,auto_evidence,auto_notefieldsget-shit-done/references/planning-config.md— Browser config referenceget-shit-done/workflows/settings.md— Browser toggle (8th setting)CHANGELOG.md+docs/USER-GUIDE.mdTests:
tests/config.test.cjs— Browser defaults + auth deep-merge (2 tests)tests/init.test.cjs—cmdInitVerifyWorksuite (5 tests)