Agents Builders

E2E Test DB Isolation

Archived
e2e-test-db-isolation

Created

Jun 29, 16:06

Started

Jun 29, 16:10

Completed

Jun 29, 22:23

DevOps handoff

Type

Bug

Shape

backend

Worktree Slug

e2e-test-db-isolation

Repositories

mcritchie-studio

Release Slug

Branch

feat/e2e-test-db-isolation

QA URL

Production URL

devops testing

Acceptance Criteria

  • Playwright runs do not pollute Rails suite
  • Full-suite check resets known e2e seed residue
  • Failure mode is covered by regression tests
  • Local instructions mention required cleanup command

Expected Test Plan

  • [unit] seed cleanup helper removes e2e rows
  • [integration] full-suite-check starts from clean test database
  • [integration] Playwright-to-Rails sequence remains green

Checks Run

  • [unit] bin/rails test test/lib/full_suite_check_test.rb — reset order and failure regression (15 runs)
  • [integration] FULL_SUITE_TEST_CMD=true FULL_SUITE_RUBOCOP_CMD=true bin/full-suite-check --print — real db:test:purge db:test:prepare reset passed
  • [full-suite@cdeba8f897c2f3fbafedad7fd528deda1519b332] bin/rails test green
  • [rubocop@cdeba8f897c2f3fbafedad7fd528deda1519b332] bin/rubocop clean

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.

Sizing Avi · PO SMALL Dev SMALL Actual XL ≠ forecast
  1. Created Designed
    W Wigglytuff
    Wigglytuff
    Model
    Duration
    Tokens
    Cost
    Completed Jun 29, 16:06 · 9 days ago
    api
  2. Designed Building
    W Wigglytuff
    Wigglytuff
    Model
    gpt-5.5
    Duration
    4 minutes
    Tokens
    1,545,785
    Cost
    ~$0.91
    Started Jun 29, 16:06
    Completed Jun 29, 16:10 · 9 days ago
    cli
  3. Building Submitted
    W Wigglytuff
    Wigglytuff
    Model
    gpt-5.5
    Duration
    22 minutes
    Tokens
    8,216,370
    Cost
    ~$5.92
    Started Jun 29, 16:10
    Completed Jun 29, 16:32 · 9 days ago
    cli
  4. Submitted Reviewed Review Activity
    C Carl
    Carl primary
    A Alex
    Alex light
    Model
    gpt-5.5
    Duration
    about 5 hours
    Tokens
    Cost
    Started Jun 29, 16:32
    Completed Jun 29, 21:48 · 9 days ago
    cli
  5. Reviewed Assembled
    S Steffon
    Steffon
    Model
    gpt-5.5
    Duration
    6 minutes
    Tokens
    1,432,026
    Cost
    ~$0.94
    Started Jun 29, 21:48
    Completed Jun 29, 21:54 · 9 days ago
  6. Assembled Shipped
    A Avi
    Avi
    Model
    gpt-5.5
    Duration
    29 minutes
    Tokens
    4,783,489
    Cost
    ~$3.20
    Started Jun 29, 21:54
    Completed Jun 29, 22:23 · 9 days ago
  7. Shipped Archived
    Model
    Duration
    4 days
    Tokens
    Cost
    Started Jun 29, 22:23
    Completed Jul 04, 03:23 · 4 days ago

Conversation

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

Comment 9 days ago

Spawned from Stage Sort Freshness session. Running Playwright e2e before bin/full-suite-check left e2e/seed.rb rows in the test DB; the full Rails suite then failed with duplicate Pokemon/releases and stale release dashboard state. Resetting with RAILS_ENV=test bin/rails db:test:purge db:test:prepare made full-suite-check green. Design a durable isolation/reset path.

Comment carl 9 days ago

Scout report: wait-for-ci - No technical blockers found; PR is draft/qa-intake avi-ready-draft, so wait for ready-for-review signal before Avi merge. Reporter: carl Outcome: wait-for-ci Findings: - Blockers: none in the diff; full-suite-check resets the Rails test DB before certifying lanes and aborts without evidence on reset failure. - Non-blocker: PR #285 remains draft and qa-intake says confirm owner intent/mark ready; the local dev stack is down only because the worktree development DB is missing. - Merge safety: PR targets release, merge-tree is clean, and no other open release-base PR touches bin/full-suite-check, docs/topics/testing.md, or test/lib/full_suite_check_test.rb. Questions: - none Checks: - Reviewed AGENTS.md, qa-release SOP, README/RUNBOOK, testing docs, task metadata, PR body, diff, docs, tests, CI, and open-PR overlap. - GitHub CI for PR #285 is green: scan_ruby, scan_js, lint, and test all passed; GitHub reports MERGEABLE but draft. - Local focused regression passed: bin/agent-worktree test mcritchie-studio e2e-test-db-isolation -- test/lib/full_suite_check_test.rb => 15 runs, 115 assertions. - Local reset integration passed with documented Ruby PATH: FULL_SUITE_TEST_CMD=true FULL_SUITE_RUBOCOP_CMD=true bin/full-suite-check --print emitted c1de05d1904e evidence after db:test:purge db:test:prepare. - Local DOR passed from the PR worktree: bin/dor-check e2e-test-db-isolation reports backend tiers and full-suite/rubocop evidence green at c1de05d1904e.

Comment alex 9 days ago

Scout report: merge-ready - No code blockers; reset gate and regression coverage satisfy acceptance. Reporter: alex Outcome: merge-ready Findings: - Blockers: none. - bin/full-suite-check resets RAILS_ENV=test before certifying suite evidence at bin/full-suite-check:138. - Regression tests cover reset ordering and abort on reset failure at test/lib/full_suite_check_test.rb:90 and test/lib/full_suite_check_test.rb:105. - Docs include the required cleanup command at docs/topics/testing.md:22. - Non-blocker: qa-intake labels PR as avi-ready-draft; mark ready before final merge. - No open release PR touches the changed files, and merge-tree is clean. Questions: - none Checks: - Reviewed task metadata, PR body, diff, changed files, docs, tests, CI, and merge safety. - Ruby 3.3 PATH bin/rails test test/lib/full_suite_check_test.rb - 15 runs, 115 assertions, green. - Ruby 3.3 PATH FULL_SUITE_TEST_CMD=true FULL_SUITE_RUBOCOP_CMD=true bin/full-suite-check --print - reset/full-suite/rubocop lanes pass. - Ruby 3.3 PATH bin/dor-check e2e-test-db-isolation - DoR-to-Merge met. - gh pr checks 285 - lint, scan_js, scan_ruby, and test pass. - git merge-tree --write-tree origin/release origin/pr/285 - clean tree c1de05d1904e.

Comment alex 9 days ago

Scout report: wait-for-ci - No technical blockers; PR is draft/avi-ready-draft, so wait for ready-for-review signal. Reporter: alex Outcome: wait-for-ci Findings: - Supersedes prior alex merge-ready report after primary report and qa-intake read-back. - Blockers: none in the code diff. - bin/full-suite-check resets RAILS_ENV=test before certifying suite evidence at bin/full-suite-check:138. - Regression tests cover reset ordering and abort on reset failure at test/lib/full_suite_check_test.rb:90 and test/lib/full_suite_check_test.rb:105. - Docs include the required cleanup command at docs/topics/testing.md:22. - Procedural gate: qa-intake labels PR as avi-ready-draft; mark ready before Avi final review/merge. - No open release PR touches the changed files, and merge-tree is clean. Questions: - none Checks: - Reviewed task metadata, PR body, diff, changed files, docs, tests, CI, and merge safety. - Ruby 3.3 PATH bin/rails test test/lib/full_suite_check_test.rb - 15 runs, 115 assertions, green. - Ruby 3.3 PATH FULL_SUITE_TEST_CMD=true FULL_SUITE_RUBOCOP_CMD=true bin/full-suite-check --print - reset/full-suite/rubocop lanes pass. - Ruby 3.3 PATH bin/dor-check e2e-test-db-isolation - DoR-to-Merge met. - gh pr checks 285 - lint, scan_js, scan_ruby, and test pass. - git merge-tree --write-tree origin/release origin/pr/285 - clean tree c1de05d1904e.

Comment avi 9 days ago

Avi Heartbeat deferred e2e-test-db-isolation: wait-for-ci. carl: wait-for-ci - No technical blockers found; PR is draft/qa-intake avi-ready-draft, so wait for ready-for-review signal before Avi merge.; alex: wait-for-ci - No technical blockers; PR is draft/avi-ready-draft, so wait for ready-for-review signal.

Comment avi 9 days ago

Avi deferred review in this pass: PR #285 remains draft/avi-ready-draft. Existing scout reports found no technical blocker, but this should wait for the owner ready-for-review signal before Avi advances it.

Handoff avi 9 days ago

Re-kicked for review: rebased feat/e2e-test-db-isolation onto origin/release, pushed rebased head 7cf8638, marked PR #285 ready for review, and reran gates. Evidence: session-preflight passed; bin/dor-check e2e-test-db-isolation passed; full suite passed 2086 runs / 9783 assertions / 0 failures; RuboCop inspected 578 files with no offenses; full-suite/rubocop evidence recorded at cdeba8f897c2.

Comment avi 9 days ago

Avi re-kick verification complete: PR #285 is no longer draft, head 7cf8638 is pushed, qa-intake reports avi-ready, and GitHub CI lint/scan_js/scan_ruby/test all passed after the rebase.

Comment steffon 9 days ago

Scout report: merge-ready - QA gate improvement is deterministic and keeps e2e residue out of Rails suite certification. Reporter: steffon Outcome: merge-ready Findings: - none Questions: - none Checks: - Task has full-suite and rubocop evidence after rebase. - PR #285 is non-draft, clean to release, and green on GitHub checks.

Comment carl 9 days ago

Scout report: merge-ready - Full-suite-check now resets the Rails test database before certifying the suite and aborts if reset fails. Reporter: carl Outcome: merge-ready Findings: - none Questions: - none Checks: - Regression covers reset-before-test order and reset failure abort. - GitHub CI passed lint, scan_js, scan_ruby, and test on PR #285.

Sealed-bid sizing

Edit →

Alex (PM)

Avi (PO)

SMALL

Dev

SMALL

Actual

XL