Skip to content

Expand the searchable Verified Feed experience#47

Merged
azizu06 merged 3 commits into
mainfrom
issue-29/searchable-feed
Jul 12, 2026
Merged

Expand the searchable Verified Feed experience#47
azizu06 merged 3 commits into
mainfrom
issue-29/searchable-feed

Conversation

@azizu06

@azizu06 azizu06 commented Jul 12, 2026

Copy link
Copy Markdown
Owner

Summary

  • add immediate client-side search across title, channel, TLDR, and category
  • add accessible All, Investing, Credit, Taxes, Budgeting, and Retirement filters with clear/reset/no-match behavior
  • replace mismatched feed data with eight metadata-verified public YouTube fixtures spanning every category, using coherent URL/title/channel/thumbnail/duration/TLDR/scorecard data
  • show explicit YouTube attribution plus stale and unavailable-video states
  • render URL-null videos as a truthful unavailable detail state with no iframe
  • expose category filters as a named accessible group and keep console checks strict with deterministic thumbnails
  • cover loading, empty catalog, no match, repository error/retry, unavailable video, missing detail, reduced motion, focus order, console health, and long-metadata containment
  • update the two UI contracts to preserve the approved grotesque-flat 1c/2a system and raise feed metadata contrast/size
  • preserve merged PRs Adapt /analyze embed aspect ratio to source orientation #43, Logo, favicon, and /analyze header polish #44, and Emphasize landscape embed + fix external-link icon wrap #45 by integrating origin/main at 424a865 without editing their analyzer-owned components

TDD evidence

First RED:

  • npx vitest run src/components/feed/feed-explorer.test.tsx failed because the public FeedExplorer module did not exist.

Subsequent vertical RED/GREEN slices covered category/reset behavior, coherent 6-10 fixture/category coverage, no-match/stale/unavailable states, and the persisted UUID contract. The live seed first failed safely because readable fixture IDs did not satisfy the Supabase UUID column; deterministic UUID fixture identities made the same runtime contract persistable.

Focused results:

  • feed/loading/repository component and contract tests: 22 passed
  • desktop/mobile e2e/feed.spec.ts: 6 passed

Final Node 22.19.0 gate

  • npm run lint — passed
  • npm run typecheck — passed
  • npm run test:unit — 318 passed, 6 credential-gated skips
  • npm run build — passed
  • npm run test:e2e — 38 passed, 2 expected skips across desktop/mobile Chromium

Fixture and browser verification

  • Candidate IDs, titles, channels, durations, and public watch URLs were verified with current yt-dlp metadata before inclusion; unverified candidates were excluded.
  • The approved dev-personal Supabase catalog was seeded with all eight items. A second seed updated the same rows, confirming idempotency.
  • Review-corrected durations were re-seeded across all eight rows; creator/channel and TLDR search paths now have explicit assertions.
  • A real headed-browser visual pass was completed at desktop and 375px. Filters wrap, metadata remains readable, and there is no horizontal page overflow.
  • Impeccable was not installed in the active Codex skill inventory, so no Impeccable critique is claimed.

Closes #29

Copilot AI review requested due to automatic review settings July 12, 2026 01:25
@vercel

vercel Bot commented Jul 12, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
capcheck Ready Ready Preview, Comment Jul 12, 2026 1:35am

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@azizu06
azizu06 merged commit ed37885 into main Jul 12, 2026
4 checks passed
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.

Expand the searchable Verified Feed experience

2 participants