-
Notifications
You must be signed in to change notification settings - Fork 1
Add pipeline extension blueprint catalog #373
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ 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".
…e-extension-framework
…ion-framework Refine pipeline extension lifecycle and remove listr2 coupling
|
@codex review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ 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".
-> in packages/pipeline/src/createPipeline.ts:598.
When we enqueue a pending registration, we now materialize a tracked promise (Promise.resolve(maybePending).then(() => undefined)) and immediately attach a .catch(() => {}) before storing it. That tiny catch keeps Node from flagging the rejection as unhandled if the extension’s register() fails before waitForPendingExtensionRegistrations() runs, while the promise itself still rejects so Promise.all(...) inwaitForPendingExtensionRegistrations() surfaces the failure to pipeline.run(). Jest regression suite for the pipeline still passes.
|
@codex review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ 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".
- Hardened packages/pipeline/src/createPipeline.ts:598 so pending extension registrations stay in the queue until they truly settle. Instead
of splicing everything up front, we now keep each promise in pendingExtensionRegistrations, remove it in a .finally cleanup (with its own
guarded catch), and have every pipeline.run() call wait on whatever is still pending. This closes the race where a second run could start
before earlier async registrations finished.
- While touching that area I ensured every promise we spin up (the registration result, the tracked pending promise, and the cleanup
chain) has a defensive .catch(() => {}) so Node never sees unhandled rejections, yet the original error still propagates through
waitForPendingExtensionRegistrations().
- The new regression tests in packages/pipeline/src/__tests__/createPipeline.test.ts still pass (pnpm test -- --runTestsByPath packages/
pipeline/src/__tests__/createPipeline.test.ts).
|
@codex review |
|
Codex Review: Didn't find any major issues. Bravo. ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
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". |
Summary
src/extensions/workspace with authoring guidance for pipeline extensionsTesting
Codex Task