Skip to content

[Chore] Trigger docs release via repository_dispatch after stable publish - #1898

Draft
zoomote[bot] wants to merge 1 commit into
mainfrom
feature/docs-release-automation-2f280h58bf2o3
Draft

zoomote[bot] wants to merge 1 commit into
mainfrom
feature/docs-release-automation-2f280h58bf2o3

Conversation

@zoomote

@zoomote zoomote Bot commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

​Created by Roomote. Follow up by mentioning @roomote, in the web UI, or in Discord.

Related GitHub Issue

Requested by the team in Discord (docs-release automation); no tracking issue exists yet.

Description

After publish-stable succeeds in marketplace-publish.yml, a new dispatch-docs-release job sends a repository_dispatch event of type zoo-stable-release to Zoo-Code-Org/Zoo-Code-Docs so release docs are generated automatically.

How it works:

  • publish-stable now 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.
  • The dispatch uses a least-privilege GitHub App token (actions/create-github-app-token, pinned to v3.2.0 by SHA) scoped via owner/repositories to Zoo-Code-Docs only, with contents: write (required for repository_dispatch on the target repo). The default GITHUB_TOKEN is deliberately not used for the cross-repo call.
  • The job is continue-on-error: true and emits a ::warning:: annotation on failure, so a docs dispatch problem can never invalidate or roll back a published extension. Retrying is safe: repository_dispatch is 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: write on Zoo-Code-Org/Zoo-Code-Docs only, install it on that repo, and add DOCS_DISPATCH_APP_ID and DOCS_DISPATCH_APP_PRIVATE_KEY secrets to this repo.

Test Procedure

  • pnpm test passes (9,610 tests).
  • Workflow validated with actionlint (clean) and YAML parse.
  • Payload construction uses jq -n with --arg for safe JSON encoding; end-to-end dispatch cannot be exercised until the GitHub App and secrets above exist (intentionally non-blocking until then).
  • The paired Zoo-Code-Docs receiver PR was dry-run end-to-end against a scratch copy of the docs repo, including a full Docusaurus build of the generated output.

Pre-Submission Checklist

  • Issue Linked: Requested in Discord; no approved GitHub Issue exists for this automation yet.
  • Scope: CI-only change, one workflow file.
  • Self-Review: Diff reviewed; no source code touched.
  • Testing: pnpm test green; workflow linted with actionlint.
  • Visual Snapshot (UI changes only): N/A — no UI change.
  • Documentation Impact: Yes — paired docs-repo PR adds the receiver (see below).
  • Contribution Guidelines: Read and followed.

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)

@coderabbitai

coderabbitai Bot commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • coderabbit-review-active

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: Zoo-Code-Org/Zoo-Code/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: ba1a18e3-eda1-4bb4-8aa9-9cb032fee45e

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

Review status

This 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. community-approved is managed the same way — do not add or remove it manually. It signals a fresh community code approval for the current head as an advisory priority only; maintainer review is still required.

@codecov

codecov Bot commented Oct 3, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

This branch has not been deployed

No deployments
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