feat(every-astro): add interactive Astro regression bisect CLI - #301
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
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 configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 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 |
@inox-tools/astro-tests
@inox-tools/astro-when
@inox-tools/content-utils
@inox-tools/custom-routing
@inox-tools/cut-short
@inox-tools/every-astro
@inox-tools/git-redirect
@inox-tools/inline-mod
@inox-tools/modular-station
@inox-tools/portal-gun
@inox-tools/request-nanostores
@inox-tools/request-state
@inox-tools/route-config
@inox-tools/runtime-logger
@inox-tools/server-islands
@inox-tools/sitemap-ext
@inox-tools/star-warp
@inox-tools/utils
@inox-tools/velox-luna
commit: |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1d339e82e3
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 044c620a99
ℹ️ 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".
# Conflicts: # packages/request-state/e2e/dev.spec.ts # pnpm-lock.yaml
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9703234ba0
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f54b8d0af1
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8a6710107a
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2ce4b05a78
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 611b64b83a
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 058c82ca48
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: dae22df93a
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7725a10ea4
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ff8abe6103
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 740a5e80a6
ℹ️ 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".
Intent
Implement a new publishable @inox-tools/every-astro CLI that runs inside an Astro project and identifies the Astro commit that introduced a user-observed bug. It must determine the installed Astro major, clone the full Astro repository to a temporary directory, build and link or install every Astro monorepo package used by the project, test latest and the first release of that major by running the project's dev server and asking whether the bug is present, stop with fixed or predates-major messages when applicable, and otherwise drive git bisect until the exact first bad commit is identified. Use Astro's real astro@.0.0 Git ref while displaying v.0.0 to users; support pnpm, npm, Yarn Classic/Berry/PnP, and Bun; use Node >=22.12, bundled Corepack, and Windows-safe process spawning; recompute available linked packages per revision; and always restore manifests, lockfiles, dependencies, links, processes, bisect state, and temporary files before reporting success.
What Changed
git bisectto identify the first bad commit.@inox-tools/every-astro.Risk Assessment
🚨 High: The cleanup path can alter or break the user’s dependency installation, including a deterministic restoration failure on common Windows package-manager layouts.
Testing
The focused package tests and packed-CLI end-to-end checks passed. Bun and Yarn Berry/PnP both built and activated the selected Astro checkout, reached the interactive result, restored manifests, lockfiles, dependency state, and original Astro behavior, and left no testing residue in the worktree.
Evidence: Bun revision activation and restoration
built fixture Astro ASTRO_FIXTURE_BEHAVIOR=bad latest: is the bug present? [y/n] n The bug is already fixed in the latest Astro revision. RESTORED_ASTRO_VERSION=7.0.0 RESTORATION_HASHES_MATCHEvidence: Yarn Berry/PnP activation and restoration
built fixture Astro ➤ YN0085: │ + astro@portal:/tmp/every-astro-EhzbwI/astro/packages/astro latest: is the bug present? [y/n] ASTRO_FIXTURE_BEHAVIOR=bad The bug is already fixed in the latest Astro revision. ASTRO_FIXTURE_BEHAVIOR=original-restored RESTORATION_HASHES_MATCH