Skip to content

Merge train: QA burn-down #905-#922 (15 PRs, validated as one tree) - #938

Merged
njrini99-code merged 16 commits into
mainfrom
batch/qa-burn-down-0717
Jul 18, 2026
Merged

Merge train: QA burn-down #905-#922 (15 PRs, validated as one tree)#938
njrini99-code merged 16 commits into
mainfrom
batch/qa-burn-down-0717

Conversation

@njrini99-code

Copy link
Copy Markdown
Owner

Merge train: full QA burn-down (issues #905#922)

One integration branch carrying all 15 burn-down PRs as 15 individual squash commits, in the dependency-safe order, with cross-PR conflicts resolved and the combined tree validated. Merging this single PR is equivalent to merging #923, #924, #926, #927, #925, #929, #930, #931, #928, #936, #932, #934, #933, #935, #937 in order — with one CI run and one production deploy instead of fifteen.

Why a train

Sequential squash-merging would have conflicted mid-train (overlapping edits in 4 files across #925/#929/#930/#931/#932/#936); this branch resolves them once, centrally, and validates the final tree — which no individual PR's CI could ever see.

Cross-PR conflict resolutions (all unions, nothing dropped)

File PRs involved Resolution
dashboard/development/page.tsx #925 + #929 (+#936 clean) import union
signals/patternToInsightVocabulary.test.ts #930 + #931 both test suites kept (5 describe blocks)
dashboard/stats/team/page.tsx #929 + #936 three-way union (restored in fixup commit)
actions/team-category-insights.ts #925 + #929 + #932 three-way union (restored in fixup commit)

The final fix(merge) commit restores edits an initial take-theirs resolution would have dropped — audited by sweeping every branch × every conflicted file.

Validation on the combined tree (locally, this branch)

  • tsc --noEmit — clean (exit 0, unpiped)
  • npm test580 files / 5,640 tests passed, 14 skipped (exit 0)
  • npm run lint --max-warnings 0 — clean (exit 0)
  • Full Playwright e2e (incl. the blocking baseball mobile-viewport suite) — dispatched on this branch, see checks

After merge

🤖 Generated with Claude Code

https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg

Fable Integrator and others added 16 commits July 17, 2026 19:43
…am Stats (#929)

Includes cross-branch conflict resolution.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
… math, accuracy gate (#930)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
…oice (#931)

Includes cross-branch conflict resolution.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
…the-Record, Ask rail (#928)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
…putts unification (#936)

Includes cross-branch conflict resolution.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
…932)

Includes cross-branch conflict resolution.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
…edits to team-category-insights dropped in cross-PR conflict resolution

Proper three-way unions: stats/team/page.tsx = #929 + #936; team-category-insights.ts = #925 + #929 + #932.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MMdviLDsAg2YYJ8adsM6fg
@cursor

cursor Bot commented Jul 18, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@greptile-apps

greptile-apps Bot commented Jul 18, 2026

Copy link
Copy Markdown

Too many files changed for review. (117 files found, 50 file limit)

Bypass the limit by tagging @greptile-apps to review.

@qodo-code-review

Copy link
Copy Markdown

ⓘ Qodo reviews are paused because your trial has ended. Ask your workspace admin to add credits to resume reviews. Manage billing

@vercel

vercel Bot commented Jul 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
helmv3 Ignored Ignored Preview Jul 18, 2026 12:30am

Request Review

@supabase

supabase Bot commented Jul 18, 2026

Copy link
Copy Markdown

Updates to Preview Branch (batch/qa-burn-down-0717) ↗︎

Deployments Status Updated
Database Sat, 18 Jul 2026 00:30:50 UTC
Services Sat, 18 Jul 2026 00:30:50 UTC
APIs Sat, 18 Jul 2026 00:30:50 UTC

Tasks are run on every commit but only new migration files are pushed.
Close and reopen this PR if you want to apply changes from existing seed or migration files.

Tasks Status Updated
Configurations Sat, 18 Jul 2026 00:30:59 UTC
Migrations Sat, 18 Jul 2026 00:31:10 UTC
Seeding Sat, 18 Jul 2026 00:31:12 UTC
Edge Functions ⚠️ Sat, 18 Jul 2026 00:31:12 UTC

⚠️ Warning — Only Functions declared in config.toml will be automatically deployed to branches: [functions.my-slug]


View logs for this Workflow Run ↗︎.
Learn more about Supabase for Git ↗︎.

@coderabbitai

coderabbitai Bot commented Jul 18, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 117 files, which is 17 over the limit of 100.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

Upgrade to a paid plan to raise the limit.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 26ea4bf8-f846-4293-ac11-b8e4c6d0bd30

📥 Commits

Reviewing files that changed from the base of the PR and between 6d25e44 and 09f13c0.

📒 Files selected for processing (117)
  • docs/seed/BASEBALLHELM_DEMO_DATA_CONTRACT.md
  • package.json
  • scripts/__tests__/scripts-no-committed-secrets.test.mjs
  • scripts/backfill-qualifier-round-tags.ts
  • scripts/refresh-golf-demo-realism.ts
  • scripts/seed-baseball-demo-program.ts
  • scripts/seed-course-library-scorecards.ts
  • scripts/verify-baseball-demo-coverage.ts
  • src/app/api/cron/coachhelm-roster-sweep/route.ts
  • src/app/baseball/(auth)/demo/page.tsx
  • src/app/baseball/(dashboard)/_components/hub-sub-nav.test.tsx
  • src/app/baseball/(dashboard)/_components/hub-sub-nav.tsx
  • src/app/baseball/actions/__tests__/demo-access.test.ts
  • src/app/baseball/actions/demo-access.ts
  • src/app/baseball/actions/stat-visual-views.ts
  • src/app/globals.css
  • src/app/golf/(auth)/demo/page.tsx
  • src/app/golf/(auth)/forgot-password/page.tsx
  • src/app/golf/(auth)/login/page.tsx
  • src/app/golf/(auth)/reset-password/page.tsx
  • src/app/golf/(auth)/signup/page.tsx
  • src/app/golf/(dashboard)/dashboard/alerts/page.tsx
  • src/app/golf/(dashboard)/dashboard/coachhelm/page.tsx
  • src/app/golf/(dashboard)/dashboard/courses/page.tsx
  • src/app/golf/(dashboard)/dashboard/development/page.tsx
  • src/app/golf/(dashboard)/dashboard/insights/page.tsx
  • src/app/golf/(dashboard)/dashboard/intelligence/loading.tsx
  • src/app/golf/(dashboard)/dashboard/stats/team/page.tsx
  • src/app/golf/actions/__tests__/course-library.test.ts
  • src/app/golf/actions/__tests__/demo-access.test.ts
  • src/app/golf/actions/__tests__/golf-round-submit-after-chain.test.ts
  • src/app/golf/actions/course-library.ts
  • src/app/golf/actions/demo-access.ts
  • src/app/golf/actions/golf.ts
  • src/app/golf/actions/insights.ts
  • src/app/golf/actions/round-drafts.ts
  • src/app/golf/actions/team-category-insights.ts
  • src/components/baseball/command-center/CommandCenterFairway.tsx
  • src/components/baseball/stat-visuals/use-stat-visual-views.ts
  • src/components/baseball/stats-center/StatsCenterClient.tsx
  • src/components/fairway/app-shell/FairwayBottomNav.test.tsx
  • src/components/fairway/app-shell/FairwayBottomNav.tsx
  • src/components/fairway/cards-insight/InsightCard.test.tsx
  • src/components/fairway/cards-insight/InsightCard.tsx
  • src/components/fairway/cards-insight/InsightPanel.tsx
  • src/components/fairway/charts/Ribbon.test.tsx
  • src/components/fairway/charts/Ribbon.tsx
  • src/components/fairway/charts/StandingStrip.tsx
  • src/components/fairway/charts/StrokesGainedTornado.test.tsx
  • src/components/fairway/charts/StrokesGainedTornado.tsx
  • src/components/fairway/data-table/data-table.tsx
  • src/components/fairway/pages/coachhelm/AskConversationRail.tsx
  • src/components/fairway/pages/coachhelm/AskWorkspace.tsx
  • src/components/fairway/pages/coachhelm/FairwayBrief.formatAnalyzed.test.ts
  • src/components/fairway/pages/coachhelm/FairwayBrief.tsx
  • src/components/fairway/pages/coachhelm/FairwayCoachHelmSignals.tsx
  • src/components/fairway/pages/coachhelm/FairwayEffectiveness.test.ts
  • src/components/fairway/pages/coachhelm/FairwayEffectiveness.tsx
  • src/components/fairway/pages/coachhelm/FairwayPlayerStats.tsx
  • src/components/fairway/pages/coachhelm/FairwayStatsCockpit.test.ts
  • src/components/fairway/pages/coachhelm/FairwayStatsCockpit.tsx
  • src/components/fairway/pages/coachhelm/FairwayTeamStats.tsx
  • src/components/fairway/pages/coachhelm/PlayersGridView.tsx
  • src/components/fairway/pages/coachhelm/signals/patternToInsightVocabulary.test.ts
  • src/components/fairway/pages/coachhelm/signals/patternToInsightVocabulary.ts
  • src/components/fairway/pages/rounds/FairwayRoundCard.tsx
  • src/components/fairway/pages/rounds/FairwayRoundDetail.tsx
  • src/components/fairway/pages/rounds/FairwayRoundRow.tsx
  • src/components/fairway/pages/rounds/FairwayUnfinishedBanner.tsx
  • src/components/golf/calendar/PremiumEventBlock.tsx
  • src/components/golf/coachhelm/coach/LeakBoard.test.tsx
  • src/components/golf/coachhelm/coach/LeakBoard.tsx
  • src/components/golf/coachhelm/v3/HoleShotPath/index.tsx
  • src/components/golf/coachhelm/v3/StandingBar/index.tsx
  • src/components/golf/coachhelm/v3/StandingBar/types.ts
  • src/components/golf/coachhelm/v3/StandingBar/utils.ts
  • src/components/golf/courses/CourseDetailDrawer.tsx
  • src/components/golf/courses/CourseLibraryClient.tsx
  • src/components/landing/Hero.tsx
  • src/components/ui/__tests__/animated-number.test.tsx
  • src/components/ui/animated-number.tsx
  • src/components/ui/page-header.tsx
  • src/lib/admin/__tests__/coverage-contract.foundation.test.ts
  • src/lib/admin/__tests__/feature-registry.test.ts
  • src/lib/admin/cron-registry.ts
  • src/lib/auth/__tests__/session-activity.test.ts
  • src/lib/auth/session-activity.ts
  • src/lib/baseball/read-models/__tests__/command-center.test.ts
  • src/lib/baseball/read-models/command-center.ts
  • src/lib/baseball/seed/__tests__/demo-program-sim.test.ts
  • src/lib/baseball/seed/demo-program-sim.ts
  • src/lib/coachhelm/trend.test.ts
  • src/lib/coachhelm/trend.ts
  • src/lib/coachhelm/v2/mining/pattern-miner.ts
  • src/lib/coachhelm/v3/brief/assemble.test.ts
  • src/lib/coachhelm/v3/brief/assemble.ts
  • src/lib/demo/__tests__/gate-probe.test.ts
  • src/lib/demo/gate-probe.ts
  • src/lib/golf/__tests__/course-scorecard-generator.test.ts
  • src/lib/golf/__tests__/demo-realism-schedule.test.ts
  • src/lib/golf/course-scorecard-generator.ts
  • src/lib/golf/date-only.test.ts
  • src/lib/golf/date-only.ts
  • src/lib/golf/demo-realism-schedule.ts
  • src/lib/golf/putts-per-round.test.ts
  • src/lib/golf/putts-per-round.ts
  • src/lib/golf/scoring-trend.test.ts
  • src/lib/golf/scoring-trend.ts
  • src/lib/supabase/__tests__/middleware-demo-session-expired.test.ts
  • src/lib/supabase/middleware.ts
  • src/lib/utils/golf-stats-calculator-shots.ts
  • src/test/api/cron/coachhelm-roster-sweep.test.ts
  • src/test/coachhelm/v2/mining/pattern-miner.test.ts
  • src/test/golf/components/StandingBar.test.tsx
  • supabase/migrations/20260717120000_course_library_owner_gate.sql
  • supabase/tests/rls/golf_course_library.sql
  • vercel.json

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Review on demand using usage pricing
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch batch/qa-burn-down-0717
  • 🛠️ helm safety pass
  • 🛠️ dashboard ux pass
  • 🛠️ rls test pass

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

This was referenced Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant