Skip to content

docs: bring the release runbook and the syntax reference up to 2.7.4 - #660

Merged
PathGao merged 4 commits into
masterfrom
docs/bring-the-release-and-syntax-docs-to-2.7.4
Aug 12, 2026
Merged

docs: bring the release runbook and the syntax reference up to 2.7.4#660
PathGao merged 4 commits into
masterfrom
docs/bring-the-release-and-syntax-docs-to-2.7.4

Conversation

@PathGao

@PathGao PathGao commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

Four claims in the docs describe behaviour that PRs since 2.7.3 changed, two features shipped without reaching the file whose job is to say what Markpad can do, and the release runbook had drifted into being something else. npm test 904 pass, npm run test:vitest 365 pass.

1. Claims that were no longer true

file said is
RELEASING.md snapcraft.yaml uses npm ci and builds the snap outside Actions it unpacks the release's own .deb (#579) and compiles nothing (#577)
RELEASING.md snap job fails ⇒ the rust-deps part is gone or renamed there is no rust-deps part and no rustup; the live failures are a missing markpad.deb and the snapcraft snap moving under us
RELEASING.md, README.md, README.zh-CN.md Check for Updates… offers .deb/.rpm users an update and then fails to install it #573 asks self_update_supported before the check and says where updates come from
README.zh-CN.md .deb and .rpm users update "通过各自的分发渠道" there is no apt or dnf repository — this is the sentence #566 removed from the English README, in the file it did not touch
snapcraft.yaml .github/workflows/test_snap.yml puts the .deb there that workflow was deleted in #601

2. The runbook is a runbook again

RELEASING.md is what you read on the day you cut a release. Over three days in August I threaded post-mortems through it: which run pushed Chocolatey 2.7.2 at 15:37 UTC, that the Snap Store served 2.6.11 for three months and six versions, which two of the three v2.7.2 attempts the AppImage strip failed in, how the 2.7.2/2.7.3 lock skew was found. All true, none of it changes what you do next, and it sits between the reader and step 5 while a build is running.

The test applied to every sentence: can it change an action taken on release day.

  • Gone — the "Why package managers publish after the release" section entirely; its one operational sentence (a workflow_dispatch against a published tag is the only way to exercise snapcraft.yaml) moves into step 7, where you would reach for it. The failure histories in three troubleshooting rows, keeping the symptom and the fix. The placeholder-pubkey era. Two design defences.
  • Kept — reasons that stop you doing the wrong thing: why nothing may be created at alecdotdev/Markpad, why the Cargo.lock bump is the one that gets forgotten. A prohibition without its reason gets deleted as superstition by whoever comes next.

1957 → 1563 words. The version before I started on it was 883.

The same edit removed the last issue number from both READMEs. #570 was a closed bug report, and after #573 it hung off a sentence describing ordinary behaviour — a user asking "how does my .deb update" clicked through to a fault that no longer exists. The Report a Bug link, which is what both files had before, stays.

3. The syntax reference

samples/markdown-syntax.md is what the README points users and their AI assistants at for "what can Markpad do". Two features landed since it was written:

Every key was read out of Editor.svelte rather than out of a PR description — #645's Mod+K T and Mod+K C were superseded by #653 two PRs later, so the descriptions would have documented a keymap that was two days stale.

That file carries no issue numbers, no history and no defence of a decision in its 500 lines; where it does give a reason — the three deliberate incompatibilities — the reason tells the reader what to write instead. Two sentences of mine argued the design at the reader (that four other editors use Mod+K; why deleting a row has no chord while deleting a column does) and came back out. Both language versions carry the same additions.

🤖 Generated with Claude Code

Four claims in the docs describe behaviour that PRs since 2.7.3 changed, and
two features shipped without reaching the file that documents what Markpad
can do.

RELEASING.md
- snapcraft.yaml no longer builds the app; it unpacks the release's own .deb
  (#579), so the `npm ci` note and the `rust-deps` troubleshooting row both
  described a file that no longer exists in that shape (#577).
- The .deb/.rpm coverage note still said *Check for Updates…* offers an
  update and then fails to install it. #573 asks `self_update_supported`
  first, so it says where updates come from instead.
- Adds the AppImage checks (#584, #658) as their own troubleshooting row, and
  notes that release builds are serialized (#612).

README, README.zh-CN
- The same pre-#573 claim, in both languages. The Chinese one also told
  .deb/.rpm users to update "through their distribution channels", which is
  the sentence #566 removed from the English one — there is no apt or dnf
  repository.

snapcraft.yaml
- The comment pointed at .github/workflows/test_snap.yml, deleted in #601.

samples/markdown-syntax{,.zh-CN}.md
- Lists: Enter continues the marker, Tab changes level, Enter on an empty
  item leaves the list (#636), and the three list chords (#652).
- Tables: cell, row and column keys, why deleting a row has no chord (#645,
  #653).
- Links: Ctrl/Cmd+K (#652).

npm test 904 pass, vitest 365 pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
PathGao added 3 commits August 13, 2026 03:09
The syntax reference carries no issue numbers, no history and no defence of
a decision anywhere in its 500 lines; where it does give a reason -- the
three deliberate incompatibilities -- the reason tells the reader what to
write instead. Two sentences I added argued for the design at the reader:
that four other editors use Mod+K, and why deleting a row has no chord while
deleting a column does. Neither changes anything the reader would type.

What is left of the second is the part that was actually useful: to delete a
row, delete its line.
#570 was the last issue number in either README, and it was one I added a
few days ago. It is a closed bug report, and after #573 the sentence it was
attached to describes ordinary behaviour -- so a reader asking "how does my
.deb update" now clicks through to a fault that no longer exists.

The half-sentence in front of it went for the same reason: "rather than
offering one it cannot install" describes what the app used to do. What is
left is what the reader needs -- .deb and .rpm are one-time installs, there
is no apt or dnf repository, and Check for Updates says so.

Both READMEs keep the Report a Bug link, which is the only issue link either
of them had before.
This file is what you read on the day you cut a release. Over three days in
August I turned it into a runbook with post-mortems threaded through it:
which run pushed Chocolatey 2.7.2 at 15:37, that the snap served 2.6.11 for
three months and six versions, which two of the three v2.7.2 attempts the
AppImage strip failed in, how the 2.7.2/2.7.3 lock skew was found. All true,
none of it changes what you do next, and it sits between you and step 5
while a build is running.

Test applied to each one: can it change an action taken on release day.

Gone: the "Why package managers publish after the release" section entirely
-- its one operational sentence (workflow_dispatch works against a published
tag, the only way to exercise snapcraft.yaml) moves into step 7, where you
would need it. The failure histories in three troubleshooting rows, keeping
the symptom and the fix. The placeholder-pubkey era. Two design defences.

Kept: reasons that stop you doing the wrong thing -- why not to create
anything at alecdotdev/Markpad, why the Cargo.lock bump is the one that gets
forgotten. A prohibition without its reason gets deleted as superstition by
whoever comes next.

1957 -> 1563 words. The version before I started was 883.
@PathGao
PathGao merged commit e4016ee into master Aug 12, 2026
4 checks passed
@PathGao
PathGao deleted the docs/bring-the-release-and-syntax-docs-to-2.7.4 branch August 12, 2026 19:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant