Agents Builders

Ship Turf Monster sidebar back-navigation fix

Archived avi
task-c2d06883e677

Fix and QA the Turf Monster gear/sidebar bug where the sidebar trigger stops working after opening the sidebar, clicking a navigation option, then using browser Back. PR: https://github.com/amcritchie/turf-monster/pull/151 Local proof URL from feature worktree: http://localhost:3101 Current QA-intake note: PR is checks-review because existing matchup-selection Playwright specs are failing; sidebar-specific proof passed locally.

Created

Jun 17, 21:31

Completed

Jun 19, 16:15

Error

Avi review blocked: Turf Monster PR #151 has required Playwright CI failures after rerun. Shard 1: geo_hold_validation hidden fifth-card timeout. Shard 3: smoke fifth-card timeout. Focused sidebar proof passed locally.

DevOps handoff

Type

Bug

Shape

Worktree Slug

Repositories

turf-monster

Release Train

2026-06-17-sidebar-back-fix

Branch

feat/sidebar-back-qa-sync

ui navigation turbo alpine

Acceptance Criteria

  • Open the signed-in sidebar trigger in the target app.
  • Click a sidebar navigation option and wait for the destination page to load.
  • Use the browser Back button to return to the previous page.
  • Open the sidebar again after Back; it should open every time without a reload.
  • Confirm the sidebar can still close normally and the page remains usable.
  • Confirm the focused Playwright sidebar regression passes or an equivalent browser proof is recorded.
  • In Turf Monster
  • verify from a signed-in page such as /contests and navigate through /account or another gear-sidebar link.
  • Existing account
  • contest navigation
  • auth
  • and payment-related entry flows remain unaffected.
  • Avi reviews the unrelated failing matchup-selection Playwright specs before merge and either reruns
  • fixes separately
  • or records an explicit conductor decision.

Expected Test Plan

  • PW_BASE_URL=http://127.0.0.1:3101 npx playwright test e2e/navigation.spec.js -g "gear sidebar reopens"
  • PATH="/opt/homebrew/opt/ruby@3.3/bin:$PATH" bundle exec rails test test/controllers/admin_controller_test.rb
  • Review GitHub CI for PR #151 and resolve or explicitly disposition unrelated matchup-selection failures.

Checks Run

No completed checks recorded.

Stage Timeline

Who handled each stage, the time it took (measured), and the model / tokens / cost reported (best-effort) — plus who's on it right now. means the agent didn't report that metric.

No stage changes recorded yet.

Conversation

QA review feedback, agent handoffs, and follow-up notes for this task.

QA Feedback avi 9 days ago

Avi review paused: PR #151 remains blocked by failing GitHub Playwright checks. Current failing checks are playwright (1) and playwright (3), while lint/test/scan_js/scan_ruby and playwright (2) pass. Please fix or isolate the matchup-selection failures, rerun CI green, then return to PR REVIEW.

QA Feedback avi 9 days ago

Still blocked: Turf Monster PR #151 continues to fail GitHub Playwright shards 1 and 3. Leave it out of QA merge until CI is green or the failing specs are explicitly isolated with a follow-up plan.

QA Feedback avi 9 days ago

Avi scout update for Turf Monster PR #151: keep out of QA merge. PR remains draft and Playwright shards 1/3 fail. Likely blocker is test targeting hidden/stale matchup card buttons after selection UI mutation, not the sidebar diff directly. Tighten visible/selectable card locators or isolate the unrelated flake, rerun shards, then hand back.

QA Feedback avi 9 days ago

Held out of QA. PR is still draft and Playwright shards 1 and 3 are red while lint/test/scan checks pass. Fix or isolate the matchup-card selection browser failures, rerun failing shards green, update handoff proof, and undraft before Avi merge.

QA Feedback avi 9 days ago

Avi clarification for original agent: the sidebar change itself passed focused local proof, but PR #151 is blocked by required Playwright CI. Fix the browser suite state before handing back. Specific failures: playwright shard 1 times out in e2e/geo_hold_validation.spec.js around the hold-to-confirm geo-blocked modal path; shard 3 times out in e2e/smoke.spec.js around matchup selection. Prior logs indicate selectors can land on hidden or stale already-selected matchup cards after the UI mutates, especially the fifth card / cards.nth(4). Please tighten locators to visible/selectable matchup cards or otherwise isolate the unrelated flake, rerun shards 1 and 3 green, update this task with the commands and results, and undraft https://github.com/amcritchie/turf-monster/pull/151 when ready. Keep PR out of QA until green or explicitly overridden.

Handoff avi 8 days ago

QA accepted for production-ready promotion: Turf QA is on ca0b4be at https://qa.turfmonster.media with /up 200; PR #154 is merged and CI is fully green including all three Playwright shards; included in current production deployment batch.

Handoff avi 8 days ago

Production shipped: Turf Monster v102 / ca0b4be. Production URL: https://app.turfmonster.media. Verification included production health checks, relevant route smokes, dyno status, and release notes posted to Discord. Task marked done.

Sealed-bid sizing

Edit →

Alex (PM)

Avi (PO)

Dev

Actual