Skip to content

Remove ISR to make site fully static#1752

Merged
brianlovin merged 4 commits into
mainfrom
remove-isr
Feb 22, 2026
Merged

Remove ISR to make site fully static#1752
brianlovin merged 4 commits into
mainfrom
remove-isr

Conversation

@brianlovin
Copy link
Copy Markdown
Member

Summary

  • Remove revalidate from all getStaticProps — pages are built once at deploy time and cached forever
  • Set fallback: false on dynamic routes — no new podcast episodes will be added
  • Remove unused search API route

Context

This project is archived and no longer receives content updates. ISR was costing ~$5/month in unnecessary function duration (13.6 GB-hours), ISR writes (246K), and function invocations (147K) for background revalidation of pages that never change.

Test plan

  • Verify site builds successfully
  • Verify existing podcast pages render correctly
  • Confirm no 500 errors on previously-cached dynamic routes

🤖 Generated with Claude Code

This project is archived with no new content. Removing ISR eliminates
background revalidation that costs ~$5/month in serverless function
duration and ISR writes.

- Remove revalidate from all getStaticProps
- Set fallback: false on dynamic routes (no new paths needed)
- Remove unused search API route

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented Feb 22, 2026

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

Project Deployment Actions Updated (UTC)
spec-next Ready Ready Preview, Comment Feb 22, 2026 0:12am

Request Review

fallback: false returns 404 for paths not in getStaticPaths, breaking
episode pages and invalid slug redirects. 'blocking' generates on first
request and caches forever (no revalidate = no ongoing ISR cost).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
fallback: 'blocking' triggers Simplecast API calls via isomorphic-unfetch
which throws 'Aborted is not defined' on modern Node.js. Since the project
is archived, use fallback: false (404 for non-pre-generated paths) and
remove tests that depend on runtime fallback behavior:
- Delete episode_spec.ts (episodes aren't pre-generated)
- Remove invalid podcast test (fallback: false returns 404, not redirect)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
isomorphic-unfetch uses node-fetch which references a global 'Aborted'
class removed in Node.js 18+. The CI runs on ubuntu-latest (Node 22)
which triggers this on every page. Since the project is archived,
suppress rather than upgrade the dependency.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@brianlovin brianlovin merged commit ce34943 into main Feb 22, 2026
3 of 4 checks passed
@brianlovin brianlovin deleted the remove-isr branch February 22, 2026 12:15
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