The full flow and the operating assumptions
This chapter turns the whole pipeline into one operating map: SemVer tag, GitHub Release publish, homepage dispatch, Astro import, and site deployment. It starts by fixing which repository is the source of truth and which systems are downstream consumers.
Release automation looks complex because it contains many steps, but most confusion disappears once you decide where the truth lives. In this course, GitHub Release itself becomes the canonical source for public release state. That sharply reduces the chance that the app repository, docs, and product page all drift apart.
The second key step is to constrain what the homepage repository is allowed to do. It does not create or edit releases on behalf of the source repository. Instead, it reads the published release, transforms it into Astro content, and completes its own build and commit using its own token. That separation is one of the main stability wins in the design.
By freezing the full flow first, every later piece—secrets, generated notes, LLM polishing, dispatch tokens, and import scripts—can be understood in terms of which stage owns it. This chapter is therefore less about tooling and more about drawing the operating boundary map before implementation details.
| Stage | Owner | Primary responsibility |
|---|---|---|
| Tag classification and release creation | Source repo | SemVer classification, draft release creation, and asset / note preparation |
| Release publish | Source repo | Promote the draft into the final public release |
| Homepage sync | Homepage repo | Consume the published stable release and update content plus build output |
- Why GitHub Release is treated as the canonical source
- Why source-repo and homepage-repo roles should stay separate
End-to-end release flow diagram
DiagramA compact text diagram showing the path from SemVer tag to Astro deployment.