Skip to content

fix(feed): use the source feed name on source pages and restore squad feed gating - #6733

Merged
idoshamun merged 1 commit into
mainfrom
claude/mystifying-wright-3ed4b2
Sep 27, 2026
Merged

idoshamun merged 1 commit into
mainfrom
claude/mystifying-wright-3ed4b2

Conversation

@idoshamun

@idoshamun idoshamun commented Sep 27, 2026 •

Copy link
Copy Markdown
Member

Changes

  • Source page main feed now passes OtherFeedPage.Source (source) instead of OtherFeedPage.Squad (squadsdiscover). The swap came in with feat: search squad members #2289, which mapped the old "source" literal to the wrong enum member.
  • isSquadFeed in Feed.tsx now compares against OtherFeedPage.Squads (squads[handle]), the name the squad page has used since feat: squad list view #4710. Before this, the source page was the only feed that matched it, so squad pages never got the squad ad start or the first-slot adPostLength gate added in feat: unify first-slot CTAs, fix ad-slot displacement + placement math #6456.
  • Feed spec squad tests use OtherFeedPage.Squads. Against the old comparison, holds the marketing CTA on squad feeds until enough posts load fails.
  • New SourcePage test clicks a post and asserts the click event reports feed: 'source' (fails with squadsdiscover before the fix).

Behavior changes:

  • Source page: analytics extra.feed becomes source, post modal pmcid=source, hero cards become eligible (OtherFeedPage.Source is in HERO_ELIGIBLE_FEEDS), and it uses the regular ad template instead of the squad overrides. The feed query key (sourceFeed) is unchanged.
  • Squad page: grid layout gets adStart: 2 and the first-slot card waits for more than 2 posts, as feat: unify first-slot CTAs, fix ad-slot displacement + placement math #6456 intended.

Events

No new events. The feed value on existing source page feed events changes from squadsdiscover to source, so squads directory numbers no longer include source page traffic.

Experiment

No.

Preview domain

https://claude-mystifying-wright-3ed4b2.preview.app.daily.dev

… feed gating

a39b27f (#2289) replaced the source page's `feedName="source"` literal
with `OtherFeedPage.Squad` instead of `OtherFeedPage.Source`. Since #3608
renamed that value to `squadsdiscover`, source page clicks, impressions and
scroll events were attributed to the squads directory, the post modal carried
`pmcid=squadsdiscover`, and the page skipped the hero cards that
`HERO_ELIGIBLE_FEEDS` enables for `OtherFeedPage.Source`.

It also meant the source page was the only feed hitting `isSquadFeed`: #4710
moved the squad page to `OtherFeedPage.Squads`, so the squad-only ad start and
the first-slot `adPostLength` gate from #6456 never reached squad pages.
`isSquadFeed` now compares against `OtherFeedPage.Squads`, and the Feed spec
squad tests use the real squad feed name so they guard it.
@vercel

vercel Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
daily-webapp Ready Ready Preview Sep 27, 2026 6:43pm UTC

Request Review

@idoshamun
idoshamun merged commit f39552c into main Sep 27, 2026
11 checks passed
@idoshamun
idoshamun deleted the claude/mystifying-wright-3ed4b2 branch September 27, 2026 19:07

This branch was successfully deployed

1 active deployment
Preview — d597e904 Deployed Sep 27, 2026 by vercel[bot]
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