Skip to content

Add release health manifest generation to release workflow#98

Merged
jetyu merged 1 commit into
developfrom
codex/generate-health.json-during-releases
Jun 4, 2026
Merged

Add release health manifest generation to release workflow#98
jetyu merged 1 commit into
developfrom
codex/generate-health.json-during-releases

Conversation

@jetyu
Copy link
Copy Markdown
Owner

@jetyu jetyu commented Jun 4, 2026

Motivation

  • Ensure a machine-readable health.json is produced for each release so consumers (GitHub assets and Cloudflare R2) can verify release health before serving updates.
  • Verify the presence and non-empty contents of three platform manifests (latest.yml, latest-mac.yml, latest-linux.yml) and surface a failure early if any are missing.
  • Attach the generated health manifest to existing release artifacts so it is uploaded to both GitHub Releases and the Cloudflare R2 channel directories.

Description

  • Added a Generate release health manifest step to .github/workflows/build.yml that runs before the GitHub release page generation and R2 upload.
  • The step runs an inline Node.js script which checks release_files/latest.yml, release_files/latest-mac.yml, and release_files/latest-linux.yml, then writes release_files/health.json containing ok, version, per-platform ok flags and generated_at.
  • The step reads the release version from RELEASE_VERSION (wired to needs.prepare.outputs.version) and fails the workflow with a clear error if any manifest is missing or empty.
  • No changes required to the upload steps because files: release_files/* (GitHub) and the existing aws s3 sync release_files/ ... (Cloudflare R2) will include health.json automatically.

Testing

  • Ran ruby -e "require 'yaml'; YAML.load_file('.github/workflows/build.yml'); puts 'YAML OK'" and it returned YAML OK indicating the workflow YAML is valid.
  • Ran git diff --check and there were no check failures.
  • Performed a local Node.js smoke test by creating a temporary release_files with latest.yml, latest-mac.yml, and latest-linux.yml, running the inline script with RELEASE_VERSION=1.2.3, and confirmed release_files/health.json was produced with top-level ok: true and version: "1.2.3".

Codex Task

@jetyu jetyu merged commit 9198080 into develop Jun 4, 2026
@jetyu jetyu deleted the codex/generate-health.json-during-releases branch June 4, 2026 02:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant