releasing-presentation
Skill628 starsChanged 4 months agoApache-2.0View on GitHub
Bring the developer deck and narrative current before a NanoLang release is tagged, and publish them afterwards. Use when make release-docs-check reports the presentation stale or disagreeing with its specification.
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 63
Verify before recording anything:
- Distinctive: line 65
Read-back. The publisher exports the uploads back out of Google and compares slide, note and heading counts against the local build.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Release gate: deck and narrative
Owned by ../SKILL.md. Authoring and regeneration live in
docs/presentation/SKILL.md -- this
file is the release gate, and does not repeat what that one says.
make release-docs-check # or: python3 skills/releasing/presentation/check_presentation.pyWhat it asks
Staleness. Did the sources the deck is built from -- the release document,
the roadmap, the measurements, the instruction set, the verifier -- change
while docs/presentation/ did not? Same check every other artifact gets, from
../lib/staleness.py.
Agreement with its own specification. deck-specification.md enumerates
the slide sequence one per line and build_deck.py implements it, so the two
counts must match. They silently did not: main() printed built 12 slides
through the entire 14-slide 4.0 edition, and the manifest hardcoded a third
number beside it. A constant that describes a list is a claim, and claims get
checked.
The specification is the authority. When the counts disagree, either implement the missing slide or amend the sequence -- do not let the two drift.
Rebuilding, before the tag
make presentationThis rebuilds the deck and narrative, renders every slide, builds a contact sheet, and fails on text-frame overlaps. Look at the rendered slides. The renderer catches overlapping frames; it does not catch a headline that is invisible against its own background, which is what happened to every dark slide of the 3.5 edition until 4.0.
Publishing, after the tag
Deliberately not automated, and deliberately last. It writes to a personal Google Drive and is outward-facing.
python3 docs/presentation/publish_google_workspace.py \
--slides-id <existing> --doc-id <existing>Always pass the existing IDs. Creating new files orphans the URLs already
in circulation -- release notes, posts, current-deliverables.md. Drive also
fixes a file's name at creation, so a new file inherits whatever name the
script hardcodes.
Verify before recording anything:
- Read-back. The publisher exports the uploads back out of Google and compares slide, note and heading counts against the local build. They must match.
- Anonymous access, with no credentials.
/editand/viewprompt a signed-out reader to log in even on a world-readable file;/previewdoes not. Record the/previewform. A link that works while you are signed in tells you nothing about what anyone else sees.
Then record the URLs in docs/presentation/current-deliverables.md,
qa-ledger.md, and README.md.
In this repository13 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .cursor/rules/code-quality/RULE.mdCursor rule
- .cursor/rules/file-organization/RULE.mdCursor rule
- .cursor/rules/testing-standards/RULE.mdCursor rule
- github-issue-trackingSkill
- nanovm-opcode-debuggingSkill
- reading-nanolangSkill
- release-readinessSkill
- releasing-documentationSkill
- releasingSkill
- roadmap-executionSkill
- session-completionSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

