From bb0b49886803d2b481047cff9145ccafc5dd5d0c Mon Sep 17 00:00:00 2001 From: mlevkov Date: Thu, 24 Sep 2026 15:43:32 -0700 Subject: [PATCH] docs: record what restoring v0.4.1's docs showed PR #43 left two questions for the restore after merge, and re-running Deploy Documentation on v0.4.1's Release run (attempt 2 of 35888419705) answered both on 2026-09-24. An expired github-pages artifact does not block a re-run: the attempt deployed beside the run's day-old expired one, so CONTRIBUTING no longer calls that untested. And a green re-run attempt triggers Verify Release: its first run, 36068815000, started two seconds after the attempt, took the run and attempt from the event, and gave 40 passed, 1 failed, 0 skipped, the failure being TD-2026-09-04's masked publish step read from the carried-over log. The round 2 artifact records both outcomes in place of its after-merge plan, and TD-2026-09-04 cites that first run. --- CONTRIBUTING.md | 11 ++++--- .../release-verifier-2026-09-round2.md | 33 ++++++++++++------- docs/tech-debt/TD-2026-09-04.md | 2 ++ 3 files changed, 30 insertions(+), 16 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a475d7a..5efb3d2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -220,11 +220,12 @@ way. Two things outlive the exercise: stable release's commit as a pre-release instead (`git tag v0.4.1-docs.1 'v0.4.1^{}'`) and push it: its run deploys that commit's docs. Delete the tag afterwards like any exercise tag. - - deploy-pages refuses a run that holds more than one `github-pages` - artifact: v0.2.0's second re-run failed with `Multiple artifacts named - "github-pages"` beside the first attempt's, which had not expired yet - (whether an expired one also counts is untested). If that happens, - delete the run's `github-pages` artifacts and re-run the job again. `gh api repos/mlevkov/iggy_sample/actions/runs//artifacts` + - deploy-pages refuses a run that holds more than one unexpired + `github-pages` artifact, and the first attempt's expires after a day: + v0.2.0's second re-run, within that day, failed with `Multiple + artifacts named "github-pages"`, while v0.4.1's, a day later, deployed + beside its expired one. If it happens, delete the run's `github-pages` + artifacts and re-run the job again. `gh api repos/mlevkov/iggy_sample/actions/runs//artifacts` lists them, and `gh api -X DELETE repos/mlevkov/iggy_sample/actions/artifacts/` deletes one. diff --git a/docs/code-reviews/release-verifier-2026-09-round2.md b/docs/code-reviews/release-verifier-2026-09-round2.md index 9a15eb0..e2dd817 100644 --- a/docs/code-reviews/release-verifier-2026-09-round2.md +++ b/docs/code-reviews/release-verifier-2026-09-round2.md @@ -107,7 +107,9 @@ Open, both for the restore after merge to show (see the end): whether an expired `github-pages` artifact also blocks a re-run, and the re-run trigger itself, which rests on GitHub's documentation ("The `requested` activity type does not occur when a workflow is re-run", which exempts no -other type), since Verify Release cannot run before it is on main. +other type), since Verify Release cannot run before it is on main. *Both +settled after merge: an expired artifact does not block a re-run, and a +green re-run attempt does trigger Verify Release.* ## R2-T3 — MEDIUM — A failed tag lookup skipped with a false reason @@ -319,13 +321,22 @@ attempt always has one. ## After merge -- Restore v0.4.1's docs by re-running its Release run's Deploy - Documentation job (run 35888419705, within 30 days of 2026-09-23). That - replaces the exercise's docs (R2-T7), shows whether the expired - `github-pages` artifact blocks a re-run (R2-T2), and, if the attempt - succeeds, whether it triggers Verify Release, which would then check - attempt 2 on its carried-over logs. Expected on the Linux runner: 40 - passed, 1 failed, 0 skipped, since the served docs are then v0.4.1's. - Otherwise, run Verify Release by hand for v0.4.1 (R2-T5). -- Resolve TD-2026-09-04 before the next stable tag, or Verify Release stays - red by design. +PR #43 merged as `09b4459` on 2026-09-24. The same day, v0.4.1's docs were +restored by re-running its Release run's Deploy Documentation job (attempt +2 of run 35888419705), in place of the dispatch R2-T5 planned. It settled +both questions R2-T2 left open: + +- An expired `github-pages` artifact does not block a re-run. The attempt + deployed (deployment 6649629484) beside the run's artifact from + 2026-09-23, which had expired; the site serves the restored build again, + `.lock` included (R2-T7). +- A green re-run attempt triggers Verify Release. Its first run, + 36068815000, started two seconds after the attempt completed, with + `VERIFY_RUN_ID` 35888419705 and `VERIFY_RUN_ATTEMPT` 2, and gave 40 + passed, 1 failed, 0 skipped, as expected: its NOTE named the one job the + attempt re-ran, its one FAIL is TD-2026-09-04's masked publish step, read + from the carried-over log, the served-docs checks ran, and the x86_64 + Linux binary exited 78. + +Still open: TD-2026-09-04, the maintainer's decision before the next +stable tag, without which Verify Release stays red by design. diff --git a/docs/tech-debt/TD-2026-09-04.md b/docs/tech-debt/TD-2026-09-04.md index 100588e..13b2b3f 100644 --- a/docs/tech-debt/TD-2026-09-04.md +++ b/docs/tech-debt/TD-2026-09-04.md @@ -34,6 +34,8 @@ User-Agent; crates.io answers 403 without one). `##[error]` line, including one under a job that concluded success, and `.github/workflows/verify-release.yml` runs it after every green Release run, so the next stable release fails that workflow instead of passing. + Its first run (36068815000, 2026-09-24), which checked a re-run attempt + of v0.4.1's Release run, failed on this step alone: 40 passed, 1 failed. The verifier also checks that crates.io lacks each version while `publish = false`. - The publish job in release.yml and `publish = false` in Cargo.toml both