Skip to content

Documentation fixes - #424

Merged
MelbourneDeveloper merged 3 commits into
mainfrom
release-fixes
Aug 8, 2026
Merged

Documentation fixes#424
MelbourneDeveloper merged 3 commits into
mainfrom
release-fixes

Conversation

@MelbourneDeveloper

@MelbourneDeveloper MelbourneDeveloper commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

TLDR

Removes the claim that Basilisk's conformance submission was procedurally clean from every document that repeated it, and fixes the release pipeline so a dead gate, a removed channel, and a transient registry error can no longer stop a release from shipping.

What Was Changed or Deleted?

1. The "we followed the process correctly" claim is deleted (18 files)

The retraction material asserted that nobody set out to game the suite, that nothing was concealed from python/typing, and that the harness ran unmodified with default configuration and every rule enabled. In documents whose purpose is to record a failure, that reads as a defence of conduct. It was repeated across every README, both locales of the site, both blog posts, and the integrity audit.

Deleted, in all its variants:

  • "not an attempt to game the suite" — including the two section headings built on it, now "How this happened" / "这是怎么发生的" (conformance.md, zh/conformance.md, both blog posts)
  • "Nobody set out to defeat the conformance tests" / "没有人试图去糊弄..."
  • "nothing was concealed from python/typing: the submission ran the suite's own unmodified harness, with default configuration and every rule enabled" — plus the integrity audit's longer form, "no special-casing of the harness, no doctored output, no disabled rules, no edited results file"
  • "not because we were trying to get away with something" / "而不是因为我们想蒙混过关"
  • "it does not describe deception, and nothing in it should be read as alleging any" (CONFORMANCE-INTEGRITY-AUDIT.md)
  • the blog FAQ entry "Was the original result an attempt to game the conformance suite?" → "No…", retitled "How did this happen?" with the exculpatory sentence dropped from the answer

Kept deliberately — the admissions, which are the point of these documents: "This was a mistake and a failure to verify", "we were wrong because we did not verify it", the account of how the score became the target, and the link to the author's apology in every location.

Authored files edited: docs/readme/README.src.md, docs/readme/README.zh.src.md, the four hand-written nvim/Zed READMEs, docs/CONFORMANCE-INTEGRITY-AUDIT.md, both conformance docs, both index.njk heroes, and both blog posts. README.md, README.zh.md, README-pypi.md and the two vscode-extension READMEs are generated and were regenerated from docs/readme/.

2. Release pipeline unblocked

  • Zed publishing removed — the publish-zed job (93 lines) is deleted from release.yml. Its registry-listing step failed the v0.41.0 release. Scoped to the release workflow only; the basilisk-zed tree and its CI job are untouched, and the mirror is already current at v0.41.0.
  • VSIX publishing survives transient registry failures. v0.41.0 published three of five targets to Open VSX, took a 503 on the fourth, and set -e aborted the loop — leaving win32-arm64 and win32-x64 unpublished with no retry. Both publish loops (Open VSX and Marketplace) now retry each target up to 4 times with exponential backoff, treat already exists as the desired end state so re-runs and partial retries are safe, and attempt every target before failing so one bad target cannot strand the ones behind it. The job still fails if any target ends up unpublished — a partial push is never reported as green. The Marketplace loop additionally exits immediately on an expired PAT with the steps to mint a new one, since retrying that can only fail.

How Do The Automated Tests Prove It Works?

No test suite covers workflow YAML or marketing prose, so this was verified directly:

  • Retry logic, behaviourally. The publish loop was extracted and run against a stub publisher across four paths: all-success (published=2), all-already-published (skipped=2), transient-then-success — the exact v0.41.0 failure, which now retries through two 503s and succeeds — and permanent-failure, which reports failed=2, proving both targets are attempted rather than the second being stranded.
  • YAML and bash. release.yml parses; 12 jobs, publish-zed absent, no dangling needs. Both publish steps' run: blocks pass bash -n.
  • Generated-README drift. python3 scripts/gen_conformance_reference.py --check"READMEs are in sync with docs/readme/", so the generated copies cannot drift from the sources.
  • Deletion completeness. A repo-wide grep for every variant (not an attempt to game, Nobody set out, nothing was concealed, 有意操纵, 没有人试图, get away with something, 蒙混过关) returns zero matches.

make ci was not run: this is a docs-and-workflow change carrying nothing the Rust matrix exercises, and the PR is labelled docs-only accordingly.

Spec / Doc Changes

Everything here is documentation, site content, or CI workflow YAML. No spec IDs added or renamed; no checker rule, crate, or diagnostic behaviour is touched.

Breaking Changes

  • None

Zed users who installed from the registry keep the extension; it simply stops receiving version bumps.

Refs #379

Its registry-listing step failed the v0.41.0 release, and Zed publishing
is no longer wanted in the release path. Removed rather than disabled.

Scoped to the release workflow only: the basilisk-zed tree and its CI job
are untouched.
@MelbourneDeveloper MelbourneDeveloper added the docs-only CI skips the code matrix for this PR — documentation only label Aug 8, 2026
v0.41.0 published three of five VSIX targets to Open VSX, took a 503 on
the fourth, and 'set -e' aborted the loop — leaving win32-arm64 and
win32-x64 unpublished with no retry and no second chance.

Both publish loops (Open VSX and Marketplace) now:
- retry each target up to 4 times with exponential backoff,
- treat 'already exists' as the desired end state, so a re-run or a
  partial retry no longer fails on targets that already landed,
- attempt every target before failing, so one bad target cannot strand
  the ones behind it,
- still fail the job if any target ends up unpublished — a partial push
  is never reported as green.

The Marketplace loop additionally exits immediately on an expired PAT
with the steps to mint a new one, since retrying that can only fail.

Verified with a stub publisher across four paths: all-success, all-
already-published, transient-then-success, and permanent-failure. The
permanent-failure case attempts both targets and reports both.
@MelbourneDeveloper MelbourneDeveloper changed the title Remove the Zed extension publish job from the release workflow Delete the claim that the conformance process was followed correctly; unblock the release pipeline Aug 8, 2026
@MelbourneDeveloper MelbourneDeveloper changed the title Delete the claim that the conformance process was followed correctly; unblock the release pipeline Documentation fixes Aug 8, 2026
@MelbourneDeveloper
MelbourneDeveloper merged commit adf2b31 into main Aug 8, 2026
24 checks passed
@MelbourneDeveloper
MelbourneDeveloper deleted the release-fixes branch August 8, 2026 03:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs-only CI skips the code matrix for this PR — documentation only

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant