Commit graph

48 commits

Author SHA1 Message Date
ThatGuySam
d45b587434 Finish axios migration via shared native HTTP helper
Replace all in-scope axios callsites with a new helpers/http.js wrapper over native fetch, including JSON/text GET, JSON POST, HEAD checks, and transient 5xx retry behavior; update all browser, build, script, and proxy API clients to use it; add focused unit tests; and remove axios from package dependencies.

Constraint: Preserve API/build and deployment behavior while lowering transport surface area.

Rejected: inline fetch replacements at each callsite | rejected to avoid inconsistent error/retry semantics.

Confidence: high

Scope-risk: moderate

Directive: Keep helper in place as the transport boundary and update tests when changing request semantics.

Tested: pnpm run -s typecheck, pnpm -s run test-prebuild, pnpm -s run test, pnpm -s run test:browser, pnpm -s run netlify-build, smoke GETs on /apple-silicon-app-test and /apple-silicon-app-test/?version=2

Not-tested: branch/netlify deployment health in CI pipeline after merge
2026-04-06 12:09:16 -05:00
ThatGuySam
6cfbfbf530 Keep prod health checks and route fallbacks from failing on stale API entries
Add a Bun health script that exercises top-level, dynamic, and representative video routes against one or more hosts so prod regressions are visible from a single command.

Device pages now fall back to the bundled device list when the external API misses a slug, and orphaned tv slugs redirect to /benchmarks instead of returning a 500. Video fallback logic reuses the existing YouTube-to-listing builder so route reconstruction stays aligned with the current build logic.

Constraint: The external API host can lag behind the frontend build and omit per-slug JSON files that public routes still expect
Rejected: Import the generated video list directly | static/video-list.json is too large for a safe SSR fallback
Rejected: Leave missing tv routes as 500s | a stale public URL should degrade to a useful redirect instead of breaking the request
Confidence: medium
Scope-risk: moderate
Reversibility: clean
Directive: Keep route fallbacks tied to build-time artifacts from the same repo so frontend and fallback data stay in sync
Tested: bun scripts/health http://127.0.0.1:4322; vitest ./test/prebuild/config-node.test.js ./test/prebuild/site-listings.test.js; pnpm run netlify-build
Not-tested: live production deploy before push
2026-04-06 10:51:49 -05:00
ThatGuySam
fcda9f0a02 chore(node): move repo tooling to node 24
Align local version markers and GitHub Actions with Node 24, switch the default test entrypoint to the maintained Vitest runner, and replace pnpm-incompatible npm helpers in repo scripts.

This also removes the obsolete AVA plus esm path and excludes disabled test fixtures from generic Vitest discovery so CI reflects the supported test surface.
2026-03-15 12:55:25 -05:00
ThatGuySam
e54c0cdac1 Move msw listener to file 2023-08-12 16:14:45 -05:00
ThatGuySam
361350e5fa Enable msw file server for DoesItAPI 2023-08-12 16:02:17 -05:00
Sam Carlton
91d36b7f0e Add comment on what’s needed to fix YouTube 2023-02-11 16:32:46 -06:00
Sam Carlton
f1be7ca87e Lock YouTube API data for now 2023-02-11 16:18:27 -06:00
Sam Carlton
50af45d99c Support parsing remote sitemap indexes 2022-06-13 13:22:44 -05:00
Sam Carlton
cd512aa2eb Exclude bundle data from kind lists 2022-06-12 12:04:43 -05:00
Sam Carlton
8c4700c7ea Include astro template urls in sitemap
getUrlsForAstroDefinedPages
2022-06-11 18:49:19 -05:00
Sam Carlton
45bfe1c2fa Move parseSitemapXml into helper file 2022-06-11 18:04:36 -05:00
Sam Carlton
0adcade0be Add Rene Ritchie Playlists 2022-06-11 12:31:40 -05:00
Sam Carlton
9f219451ac Add new Andrew Tsai Playlists 2022-06-11 12:25:33 -05:00
Sam Carlton
21fb090cdc Add ProgramHub playlists 2022-06-11 12:21:10 -05:00
Sam Carlton
915c1b0a3a Save sitemap as xml during build 2022-06-06 20:41:37 -05:00
Sam Carlton
69eefc0a34 Export youtubeVideoPath 2022-06-06 17:35:51 -05:00
Sam Carlton
976ab06cc3 Fetch youtube videos from playlists 2022-06-06 11:48:25 -05:00
Sam Carlton
de93e1282c Add previous page to kind listings 2022-06-03 17:48:14 -05:00
Sam Carlton
85d0297946 Include number in kind api data 2022-06-03 17:30:05 -05:00
Sam Carlton
9772fea4ed Add sampleNamesShort to list summaries 2022-06-03 16:57:03 -05:00
Sam Carlton
aeedb6d2e3 Add sampleNames to kind list summary 2022-05-25 13:23:46 -05:00
Sam Carlton
ad2892772d Catch non-arrays 2022-05-22 10:43:00 -05:00
Sam Carlton
49581738bb Store summary without memoization 2022-05-22 10:42:42 -05:00
Sam Carlton
26cebf47f1 Include summary in kind pages 2022-05-21 17:57:29 -05:00
Sam Carlton
e47efb6717 Fix url not returning json 2022-05-21 11:58:11 -05:00
Sam Carlton
ae5f85ffd1 Fic missing space 2022-05-21 11:52:47 -05:00
Sam Carlton
0d0d8573dd Document apply handler 2022-05-21 11:38:43 -05:00
Sam Carlton
2794764787 Add reference for HTTP methods 2022-05-21 11:28:28 -05:00
Sam Carlton
bcfcbe2271 Disable unused methods 2022-05-21 11:27:34 -05:00
Sam Carlton
201ddf7854 Add api client helper 2022-05-21 11:25:48 -05:00
Sam Carlton
7ebee653c6 Add next page endpoint to kinds 2022-05-20 14:40:08 -05:00
Sam Carlton
2a02441734 Fix writing entire list for each page 2022-05-20 14:39:49 -05:00
Sam Carlton
f838955dc3 Add hasNextPage to pagination 2022-05-20 14:39:09 -05:00
Sam Carlton
f3ad21e22f Memoize kind list 2022-05-20 12:20:31 -05:00
Sam Carlton
ea0b445f74 Add comment about memoization 2022-05-19 14:01:21 -05:00
Sam Carlton
924aa7c8ab Add KindList class 2022-05-19 13:50:46 -05:00
Sam Carlton
602a78a48a Move apiDirectory to it’s own file 2022-05-19 13:48:45 -05:00
Sam Carlton
2dbf9e3d26 Support list as a function 2022-05-19 13:48:15 -05:00
Sam Carlton
6e51ff67d8 Make json getter 2022-05-19 12:28:43 -05:00
Sam Carlton
a23b0c02db Add default perPag amount to PaginatedList 2022-05-19 10:33:50 -05:00
Sam Carlton
dea22f7650 Add PaginatedList helper 2022-05-18 17:06:31 -05:00
Sam Carlton
9bc45ffc5a Prevent overwriting existing toml file 2022-05-17 15:33:07 -05:00
Sam Carlton
991bdf4261 Fix not properly trimming static part of path 2022-05-10 12:36:43 -05:00
Sam Carlton
cfb442324c Check if toml is file 2022-05-10 12:18:55 -05:00
Sam Carlton
01e8db4a78 Wait for toml file to write 2022-05-10 12:15:58 -05:00
Sam Carlton
eaf500e061 Fix missing import 2022-05-10 12:10:15 -05:00
Sam Carlton
571ac6d782 Wait for and confirrm toml file 2022-05-10 12:06:09 -05:00
Sam Carlton
5bbbc7f41c Add downloadStorkToml helper and script 2022-05-09 16:13:47 -05:00