Skip to content

chore: add local release workflow and rules - #54

Merged
caorushizi merged 1 commit into
masterfrom
codex/local-release
Oct 3, 2026
Merged

caorushizi merged 1 commit into
masterfrom
codex/local-release

Conversation

@caorushizi

Copy link
Copy Markdown
Contributor

The previous commit removed the release workflow and GoReleaser configuration, leaving no repeatable publishing entry point. Restore the five-platform GoReleaser configuration and add mise run release with plan, build, and publish stages using an independent clean source checkout.

Preserve semantic tag versioning, fixed release-channel and skill-source SHA injection, annotated tags, draft uploads, exact asset checks, SHA256 verification after downloading uploaded assets, idempotency, and interrupted-release recovery. Record the bilingual release rules in RELEASING.md and link them from AGENTS.md and CONTRIBUTING.md. Include the existing Dashboard import-format fix required to pass the release gate.

Validation: mise run check passed after the format fix; eight release-rule tests passed; the release scripts passed TypeScript checking; one init mise --dry-run -o json reports no pending configuration changes; git diff --check passed. The release task invokes the full forced check and validates all five packages before any remote tag or release write.

Copilot AI balanced review requested due to automatic review settings October 3, 2026 22:56
@vercel

vercel Bot commented Oct 3, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
one-cli-docs Ready Ready Preview Oct 3, 2026 10:56pm UTC

@caorushizi
caorushizi merged commit c4008a5 into master Oct 3, 2026
3 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Release provenance, annotated-tag validation, and interrupted Latest-state recovery have unresolved correctness issues.

Review effort: Balanced
Findings: 1 High severity · 2 Medium severity

Open (3)
What changed in this PR

Adds a local, repeatable release pipeline for One CLI with pinned builds, artifact verification, publishing recovery, and bilingual documentation.

Changes:

  • Adds release planning, building, publishing, and rule tests.
  • Restores five-target GoReleaser packaging and mise tasks.
  • Documents release procedures and includes the Dashboard formatting fix.
File Description
.goreleaser.yaml Defines release archives and build metadata.
scripts/​release.mts Implements the release workflow.
scripts/​release-rules.mts Defines versioning and artifact rules.
scripts/​release-rules.test.mts Tests release rules and validation.
mise.toml Registers release tasks and checks.
RELEASING.md Documents bilingual release procedures.
AGENTS.md Adds repository release conventions.
CONTRIBUTING.md Links contributor release guidance.
apps/​dashboard/​src/​features/​global-variables/​GlobalVariables.tsx Applies the required import formatting.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread scripts/release.mts
});
run("git", ["checkout", "--detach", p.sourceSha], { cwd: source });
const config = join(dir, "goreleaser.yaml");
copyFileSync(join(root, ".goreleaser.yaml"), config);
Comment thread scripts/release.mts
Comment on lines +176 to +181
if (
git(build.source, "rev-parse", "HEAD") !== build.plan.sourceSha ||
git(build.source, "status", "--porcelain", "--untracked-files=no")
) {
fail("The release source checkout changed after validation.", "验证后发布源码副本发生变化。");
}
Comment thread scripts/release.mts
Comment on lines +368 to +370
if (release && !release.draft) {
say(`Already published: ${release.html_url}`, `已完成发布:${release.html_url}`);
return;

This branch was successfully deployed

1 active deployment
Preview — 7babdbdb Deployed Oct 3, 2026 by vercel[bot]
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.

2 participants