1RELEASE-PLAN-CLONE-START: https://github.com/cameronraysmith/vanixiets.git #3270 186d6f4bf6d8f289c79f9528e594e210f12f60e22RELEASE-PACKAGES-ACTION: plan (#3270 at 186d6f4bf6d8f289c79f9528e594e210f12f60e2 onto main at ab98a627df1800cf904862a1076036d11f497283)3packages discovered: [{"name":"docs","path":"packages/docs"}]4RELEASE-PACKAGE-ITERATION: packages/docs5running semantic-release in packages/docs...6[8:46:19 PM] [[secure]] › ℹ Running [secure] version 25.0.97[8:46:20 PM] [[secure]] › ✔ Loaded plugin "verifyConditions" from "@[secure]/changelog"8[8:46:20 PM] [[secure]] › ✔ Loaded plugin "verifyConditions" from "@[secure]/github"9[8:46:20 PM] [[secure]] › ✔ Loaded plugin "prepare" from "@[secure]/changelog"10[8:46:20 PM] [[secure]] › ✔ Loaded plugin "publish" from "@[secure]/github"11[8:46:20 PM] [[secure]] › ✔ Loaded plugin "addChannel" from "@[secure]/github"12[8:46:20 PM] [[secure]] › ✔ Loaded plugin "success" from "@[secure]/github"13[8:46:20 PM] [[secure]] › ✔ Loaded plugin "success" from "[secure]-major-tag"14[8:46:20 PM] [[secure]] › ⚠ Run automated release from branch main on repository https://github.com/cameronraysmith/vanixiets.git in dry-run mode15[8:46:20 PM] [[secure]] › ✔ Allowed to push to the Git repository16[8:46:20 PM] [[secure]] › ℹ Start step "verifyConditions" of plugin "@[secure]/changelog"17[8:46:20 PM] [[secure]] › ✔ Completed step "verifyConditions" of plugin "@[secure]/changelog"18[8:46:20 PM] [[secure]] › ℹ Start step "verifyConditions" of plugin "@[secure]/github"19[8:46:20 PM] [[secure]] [@[secure]/github] › ℹ Verify GitHub authentication20[8:46:21 PM] [[secure]] › ✔ Completed step "verifyConditions" of plugin "@[secure]/github"21[8:46:21 PM] [[secure]] › ℹ Found git tag @vanixiets/docs-v0.10.0 associated with version 0.10.0 on branch main22[8:46:21 PM] [[secure]] › ℹ Found 6 commits since last release23[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"24[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Start step "analyzeCommits" of plugin "@[secure]/commit-analyzer"25[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Found 4 commits for package @vanixiets/docs since last release26[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Analyzing commit: fix(docs): keep WebKit failure screenshots in Darwin build reports2728On aarch64-darwin, Nix build users have no LaunchServices database, so WebKit's image encoder returns an empty data URL and Playwright writes a 0-byte failure screenshot without raising an error. The report validator rightly rejects empty attachments, so a WebKit product failure on Darwin kept no report. A shared test fixture now replaces a 0-byte WebKit screenshot with the latest screencast frame, or fails the attempt as infrastructure if none exists. e2e-webkit-negative-control proves that a WebKit failure keeps a real PNG.2930Change-Id: I01c2ad58cb950529278fb87dda109414ead21c0931[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ The release type for the commit is patch32[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Analyzing commit: fix(docs): give each browser report build its own preview ports3334Darwin Nix builds are unsandboxed and share the host network, so report derivations built at once all served on localhost:4321 and raced for the workerd inspector port from 9229; one build's server broke another's tests. The report build now picks a free loopback port and passes it to Playwright as DOCS_PREVIEW_PORT, and sets DOCS_DISABLE_WORKER_INSPECTOR so astro preview opens no inspector. Local runs keep 4321 and the inspector.3536Change-Id: Ia0c3192bbfed2940fbd062e68105432e6a6a696437[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ The release type for the commit is patch38[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Analyzing commit: fix(docs): keep the homepage hero within narrow viewports3940The homepage hero uses raw <img width="400"> markup inside Starlight's .hero-html wrapper, which Starlight sizes but does not constrain. On phones the image overflowed and widened the layout viewport past the device, cutting off the logo and header search. The mobile scenario now requires no horizontal overflow and a hero image inside the viewport; it failed on all three engines before the CSS fix and passes after it.4142Change-Id: Id64a1dfa32e0a68946327dba89fc8362f7f6247343[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ The release type for the commit is patch44[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Analyzing commit: feat(docs): publish validated browser evidence from finished builds4546publish-evidence is the trusted build_finished sidecar. It finds the docs report check through nixbot's build API, validates it with its own copy of validate-report.mjs, and copies run.json, completion.json and the referenced PNG screenshots beside a deterministic receipt. Unsafe paths, symlinks, non-PNG data and identity mismatches are rejected; missing outputs are reported, never rebuilt. No effect runs it yet: storage, access and retention are undecided, so publication ends at a local --out directory. publish-evidence-rehearsal covers each case against a loopback API and a chroot store.4748Change-Id: I9adcceeed84b3fe7e7c86c572fdc8f5b5a0d7b0249[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ The release type for the commit is minor50[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Analysis of 4 commits complete: minor release51[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Completed step "analyzeCommits" of plugin "@[secure]/commit-analyzer"52[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"53[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"54[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "@[secure]/release-notes-generator" does not provide step "analyzeCommits"55[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"56[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"57[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "@[secure]/changelog" does not provide step "analyzeCommits"58[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"59[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"60[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "@[secure]/github" does not provide step "analyzeCommits"61[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"62[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"63[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "[secure]-major-tag" does not provide step "analyzeCommits"64[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"65[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"66[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins67[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"68[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"69[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins70[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"71[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"72[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins73[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"74[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"75[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins76[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"77[8:46:21 PM] [[secure]] › ℹ Start step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"78[8:46:21 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins79[8:46:21 PM] [[secure]] › ✔ Completed step "analyzeCommits" of plugin "[Function: [secure]-monorepo]"80[8:46:22 PM] [[secure]] › ℹ The next release version is 0.11.081[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"82[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "@[secure]/commit-analyzer" does not provide step "generateNotes"83[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"84[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"85[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Start step "generateNotes" of plugin "@[secure]/release-notes-generator"86[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Found 4 commits for package @vanixiets/docs since last release87[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Completed step "generateNotes" of plugin "@[secure]/release-notes-generator"88[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"89[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"90[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "@[secure]/changelog" does not provide step "generateNotes"91[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"92[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"93[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "@[secure]/github" does not provide step "generateNotes"94[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"95[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"96[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ Plugin "[secure]-major-tag" does not provide step "generateNotes"97[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"98[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"99[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins100[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"101[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"102[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins103[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"104[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"105[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins106[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"107[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"108[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins109[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"110[8:46:22 PM] [[secure]] › ℹ Start step "generateNotes" of plugin "[Function: [secure]-monorepo]"111[8:46:22 PM] [[secure]] [[Function: [secure]-monorepo]] › ℹ No more plugins112[8:46:22 PM] [[secure]] › ✔ Completed step "generateNotes" of plugin "[Function: [secure]-monorepo]"113[8:46:22 PM] [[secure]] › ⚠ Skip step "prepare" of plugin "@[secure]/changelog" in dry-run mode114[8:46:22 PM] [[secure]] › ⚠ Skip @vanixiets/docs-v0.11.0 tag creation in dry-run mode115[8:46:22 PM] [[secure]] › ⚠ Skip step "publish" of plugin "@[secure]/github" in dry-run mode116[8:46:22 PM] [[secure]] › ⚠ Skip step "success" of plugin "@[secure]/github" in dry-run mode117[8:46:22 PM] [[secure]] › ⚠ Skip step "success" of plugin "[secure]-major-tag" in dry-run mode118[8:46:22 PM] [[secure]] › ✔ Published release 0.11.0 on default channel119[8:46:22 PM] [[secure]] › ℹ Release note for version 0.11.0:120## @vanixiets/docs-v0.11.0 (https://github.com/cameronraysmith/vanixiets/compare/@vanixiets/docs-v0.10.0...@vanixiets/docs-v0.11.0) (2026-10-01)121122### Features123124 * **docs:** publish validated browser evidence from finished builds ([0b00bf4](https://github.com/cameronraysmith/vanixiets/commit/0b00bf47232d182356d9c1831c42eef1ac20960a))125126### Bug Fixes127128 * **docs:** give each browser report build its own preview ports ([f9764c3](https://github.com/cameronraysmith/vanixiets/commit/f9764c3b0fb201e8accedea2b50403853baad6d8))129 * **docs:** keep the homepage hero within narrow viewports ([540eb07](https://github.com/cameronraysmith/vanixiets/commit/540eb07b43ff098fbef7cb59ebf63255a71a73d6))130 * **docs:** keep WebKit failure screenshots in Darwin build reports ([186d6f4](https://github.com/cameronraysmith/vanixiets/commit/186d6f4bf6d8f289c79f9528e594e210f12f60e2))131132RELEASE-PLAN: docs 0.10.0 -> 0.11.0