[Chore] Trigger docs release via repository_dispatch after stable publish - #1898
zoomote[bot] wants to merge 1 commit into
Conversation
|
Important Review skippedAuto reviews are limited based on label configuration. 🏷️ Required labels (at least one) (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Review statusThis PR was opened by an automated account. A human maintainer must verify the change intent, provenance, and validation before merging. Current step: Mark the PR ready. Required CI must pass before CodeRabbit starts. Review-state labels are managed by this workflow; do not edit them manually. |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Related GitHub Issue
Requested by the team in Discord (docs-release automation); no tracking issue exists yet.
Description
After
publish-stablesucceeds inmarketplace-publish.yml, a newdispatch-docs-releasejob sends arepository_dispatchevent of typezoo-stable-releaseto Zoo-Code-Org/Zoo-Code-Docs so release docs are generated automatically.How it works:
publish-stablenow exposes job outputs (version,tag,source_sha,release_url,changes) captured in the existing "Create GitHub release" step from what was actually published — the dispatch payload is rebuilt deterministically from these outputs, so re-running the job re-sends the identical event for the same release.actions/create-github-app-token, pinned to v3.2.0 by SHA) scoped viaowner/repositoriestoZoo-Code-Docsonly, withcontents: write(required forrepository_dispatchon the target repo). The defaultGITHUB_TOKENis deliberately not used for the cross-repo call.continue-on-error: trueand emits a::warning::annotation on failure, so a docs dispatch problem can never invalidate or roll back a published extension. Retrying is safe:repository_dispatchis fire-and-forget and the docs receiver dedupes on the payload.One-time human setup required before this works (also documented in workflow comments): create a GitHub App with
contents: writeon Zoo-Code-Org/Zoo-Code-Docs only, install it on that repo, and addDOCS_DISPATCH_APP_IDandDOCS_DISPATCH_APP_PRIVATE_KEYsecrets to this repo.Test Procedure
pnpm testpasses (9,610 tests).actionlint(clean) and YAML parse.jq -nwith--argfor safe JSON encoding; end-to-end dispatch cannot be exercised until the GitHub App and secrets above exist (intentionally non-blocking until then).Pre-Submission Checklist
pnpm testgreen; workflow linted with actionlint.Visual Snapshots
N/A — CI workflow change only.
Videos (interaction / animation only)
N/A.
Documentation Updates
Additional Notes
The dispatch job must remain non-blocking forever: the extension publish is the source of truth, docs generation is downstream and retryable.
Related PRs
Get in Touch
Discord: 0x7777777_ (requester)