Skip to content

feat(nav): repoint every wxyc.info link at its wxyc.org successor page - #222

Merged
jakebromberg merged 1 commit into
mainfrom
feat/repoint-wxyc-info-links
Aug 19, 2026
Merged

feat(nav): repoint every wxyc.info link at its wxyc.org successor page#222
jakebromberg merged 1 commit into
mainfrom
feat/repoint-wxyc-info-links

Conversation

@jakebromberg

Copy link
Copy Markdown
Member

Closes #214. Last remaining code ticket in Phase 4 of the tubafrenzy decommissioning.

Why now

tubafrenzy serves every wxyc.info/playlists/* page and goes dark at the 2026-08-31 cutover (WXYC/wiki#93), so the four listener-facing links from wxyc.org into wxyc.info become dead links on that date.

#214's two remaining blockers — #211 and #212 — both closed 2026-08-11, so all three successor pages are on main. Verified live in prod before repointing: https://wxyc.org/playlist, /airplay-search, and /playlists/archive each return 200.

Changes

Site Was Now
components/Header.js:107 http://www.wxyc.info/playlists/recent /playlist (#211)
components/DropdownMenu.js:49 http://www.wxyc.info/playlists/recent /playlist (#211)
content/page/programming.mdx:54 http://wxyc.info/playlists/radioWeek /playlists/archive (#213)
content/page/programming.mdx:56 http://wxyc.info/playlists/searchPlaylists /airplay-search (#212)

Targets were read off main, not taken from the ticket's suggested filenames — /airplay-search is top-level, not under /playlists/.

Both nav links become internal navigations, so target="_blank" goes away and they take the repo's internal-link idiom (legacyBehavior={false}). Header's copy also gains onClick={toggleMenu}, matching every other internal link in that mobile overlay — without it the overlay stays open on top of the page it just navigated to. DropdownMenu's stale {/* Until new flowsheet is deployed: <Link href="/playlist"> */} comment held exactly the target this PR now uses, so it is removed rather than left commenting on shipped code.

Test

__tests__/wxycInfoLinks.test.js (8 assertions) guards the cutover: no href or markdown link anywhere in the repo may target wxyc.info; each of the four sites links to its named successor; each successor route resolves to a page that exists. Verified red against the pre-change tree, failing on all four sites.

It is a source-level check by choice, for two reasons a render test can't cover: Header.js and DropdownMenu.js hold JSX in .js files, which this repo's vitest transform rejects (The JSX syntax extension is not currently enabled), and the third site is TinaCMS-managed .mdx that no component test would reach.

Notes for review

  • The grep acceptance criterion is met as narrowed on the ticket. Three wxyc.info mentions survive — docblocks in the three successor pages, plus README.md. Each names the page it replaces. That is accurate provenance, not a link, and the ticket's own comment asks that it not be deleted to satisfy a grep. The test policies link targets only.
  • TinaCMS: content/page/programming.mdx is CMS-managed. The edit is a plain body-text link swap in a file TinaCMS round-trips, so a later CMS edit should rewrite the file without conflict; nothing surprising surfaced. Worth watching on the next CMS save.
  • Reconfigure top site nav #93 ("Reconfigure top site nav", opened 2025-07-13) proposes a broader nav restructure and still lists a "Recently Played" entry pointing at wxyc.info. Deliberately not implemented here. Its wxyc.info reference is now stale, but whether to close it as superseded is a human call.
  • Copy left alone: programming.mdx:54 still reads "going back to 2009", while the new archive page covers back to at least November 2004. Not corrected here — that is listener-facing copy, not a link.

Verification

  • npm run test — 287 passed (15 files)
  • npm run lint — no errors (pre-existing no-img-element / alt-text warnings only)
  • npx next build under tinacms dev, i.e. the exact CI build — succeeds; /playlist, /airplay-search, /playlists/archive all export, and the exported site contains zero wxyc.info occurrences
  • prettier --check on all four touched files — clean. (Header.js and DropdownMenu.js were already prettier-dirty on main before this change; left as-is per the ticket.)

tubafrenzy serves every wxyc.info/playlists/* page and goes dark at the 2026-08-31 cutover (WXYC/wiki#93), so the four listener-facing links from wxyc.org into wxyc.info become dead links on that date. The three successor pages all landed on main and are live in prod, so the nav can point at them now.

- components/Header.js and components/DropdownMenu.js: "Live playlist" -> /playlist (#211). Both become internal navigations, so target="_blank" goes away and they take the repo's internal-link idiom (legacyBehavior={false}). Header's copy also gets onClick={toggleMenu}, matching every other internal link in that mobile overlay — without it the overlay stays open on top of the page it just navigated to. DropdownMenu's stale "Until new flowsheet is deployed" comment, which held the target this commit now uses, is removed rather than left pointing at shipped code.
- content/page/programming.mdx: "show archives" -> /playlists/archive (#213), "airplay records" -> /airplay-search (#212). These are the paths the pages actually landed at, read off main rather than assumed from the ticket's suggested filenames.

__tests__/wxycInfoLinks.test.js guards the cutover: no href or markdown link anywhere in the repo may target wxyc.info, each of the four sites links to its named successor, and each successor route resolves to a page that exists. It is a source-level check because Header.js and DropdownMenu.js hold JSX in .js files, which this repo's vitest transform rejects, and because the third site is TinaCMS-managed .mdx that no component test would reach. Verified red against the pre-change tree on all four sites.

Prose mentions of wxyc.info survive on purpose — the three successor pages and README.md each name the page they replace, which is accurate provenance and not a link. The test policies link targets only.

Closes #214
@jakebromberg
jakebromberg merged commit 8347eeb into main Aug 19, 2026
1 check passed
@jakebromberg
jakebromberg deleted the feat/repoint-wxyc-info-links branch August 19, 2026 19:27
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.

Repoint all wxyc.info links to the new wxyc.org successor pages

1 participant