Repository navigation
Release EmbedLedger 1.0.0 and fix module path aliases - #2
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 45a55756b5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| concurrency: | ||
| group: embedledger-${{ github.workflow }}-${{ github.ref }} | ||
| cancel-in-progress: false |
There was a problem hiding this comment.
Queue every main release workflow
When three pushes to main arrive while the first workflow is still running, the shared top-level concurrency group keeps only the newest pending run even though cancel-in-progress is false; GitHub documents that an existing pending run is canceled unless queue: max is enabled. Because publication occurs only within each push's workflow, this can silently discard a pending version-bump run, causing that version to be skipped entirely if the following push bumps again, or causing its tag to point at a later commit if the version remains unchanged. Queue all runs, or move serialization to the publish job so verified release commits cannot be replaced.
Useful? React with 👍 / 👎.
Publish EmbedLedger 1.0.0 with a documented command, exit-code, and schema-1 compatibility contract. Existing 0.1.1 baselines remain readable without regeneration; Go 1.27 or newer remains required for the resolver.
The native macOS package check exposed a directory-alias mismatch: the module root was canonicalized while Go's package directory retained another path to the same location. Resolve both before the existing containment check. A real Linux resolver regression fails before this change and passes afterward; a package alias outside the selected module remains rejected.
The release workflow builds Windows, Linux, and macOS ZIPs containing the CLI, MIT license, documentation, and example. Each runner extracts its archive and executes version, help, and example checks. Publication runs only on main after all three verification jobs and the Linux race detector pass, using verified same-run assets and the exact tested commit.
Windows tests, vet, native package and independent consumer drift/recovery checks passed. Linux reproduced and verified the alias fix and ran the corrected native ZIP. The new symlink case skips locally on Windows because symlink privilege is unavailable; Linux and macOS CI execute it. Final candidate CI and live publication remain the merge/release gates.