diff --git a/README.md b/README.md index 96a15ab..514a083 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ npm run og:render | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- | ------------------------------------ | | `protostar-demo` | [Protostar interactive init demo](https://github.com/JacksonFergusonDev/protostar/blob/main/docs/assets/demo_init_interactive.cast) | `public/protostar-demo.cast` | Asciinema v2 header and minimum size | | `protostar-icon` | [Protostar](https://github.com/JacksonFergusonDev/protostar) | `public/images/protostar.svg` | SVG markup and minimum size | -| `protostar-mutation-score` | [Protostar mutation benchmarks](https://protostar.jacksonferguson.me/benchmarks/) | `public/data/protostar-mutation-score.json` | JSON object with typed keys | +| `protostar-mutation-score` | [Protostar metrics](https://protostar.jacksonferguson.me/metrics/) | `public/data/protostar-mutation-score.json` | JSON object with typed keys | | `systems-audio-analysis` | [Systems Audio Lab](https://github.com/JacksonFergusonDev/systems-audio-lab) | `public/images/audio-analysis.svg` | SVG markup and minimum size | | `data-science-redshift-distribution` | [Data Science Portfolio](https://github.com/JacksonFergusonDev/data-science-portfolio) | `public/images/gmm-redshift-distribution.svg` | SVG markup and minimum size | | `systems-audio-report` | [Systems Audio Lab technical report](https://github.com/JacksonFergusonDev/systems-audio-lab/blob/main/docs/systems_audio_tech_report.pdf) | `public/reports/systems-audio-lab-technical-report.pdf` | PDF signature and minimum size | @@ -84,7 +84,7 @@ The current sources follow upstream `main` branches, so rebuilding a portfolio c Each manifest entry supplies a unique ID, a description, an HTTPS source, a unique target inside `public/`, a supported validation type, and a positive `minBytes` threshold. The type matches the asset format, and the size threshold helps catch empty or unexpectedly small responses. SVG checks look for opening and closing SVG markup; terminal recordings require a JSON Asciinema v2 header with numeric dimensions; PDFs must start with the `%PDF-` signature. A `json` entry also declares a `shape` mapping each key the site reads to `string`, `number`, or `boolean`, and the fetched document must be an object whose keys have those types. These are format checks, not a full content audit. -Pages reference the generated local paths. The project catalog reads Protostar's mutation score file while the site builds, and the homepage shows the score linked to Protostar's benchmarks dashboard, so a new score appears on the next build. The asset pipeline is checked through the fetch command, production build, and site tests. +Pages reference the generated local paths. The project catalog reads Protostar's mutation score file while the site builds, and the homepage shows the score linked to Protostar's metrics dashboard, so a new score appears on the next build. The asset pipeline is checked through the fetch command, production build, and site tests. ### Refreshes from source repositories diff --git a/config/remote-assets.json b/config/remote-assets.json index 191704e..87950c0 100644 --- a/config/remote-assets.json +++ b/config/remote-assets.json @@ -20,7 +20,7 @@ { "id": "protostar-mutation-score", "description": "Protostar's latest engine mutation score, shown on the flagship project card.", - "source": "https://protostar.jacksonferguson.me/benchmarks/mutation-latest.json", + "source": "https://protostar.jacksonferguson.me/metrics/mutation-latest.json", "target": "public/data/protostar-mutation-score.json", "type": "json", "shape": { diff --git a/src/lib/projects.ts b/src/lib/projects.ts index 180f5ab..9ecff87 100644 --- a/src/lib/projects.ts +++ b/src/lib/projects.ts @@ -51,7 +51,7 @@ export const protostar = { score: { label: 'Engine mutation score', value: protostarMutation.message, - href: 'https://protostar.jacksonferguson.me/benchmarks/', + href: 'https://protostar.jacksonferguson.me/metrics/', }, } satisfies Project; diff --git a/tests/site.test.mjs b/tests/site.test.mjs index b0ea5a3..ac8b7cf 100644 --- a/tests/site.test.mjs +++ b/tests/site.test.mjs @@ -74,7 +74,7 @@ test('project hierarchy and real downloads are preserved', async () => { 'utf8', ), ); - assert.ok(raw.includes('href="https://protostar.jacksonferguson.me/benchmarks/"')); + assert.ok(raw.includes('href="https://protostar.jacksonferguson.me/metrics/"')); assert.ok( home.includes(`Engine mutation score ${score}`), 'Protostar card shows its mutation score',