Test/pr wire#21
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2a8eef6001
ℹ️ 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".
| on: | ||
| workflow_run: | ||
| workflows: | ||
| - CI |
There was a problem hiding this comment.
Match workflow_run trigger to actual CI workflow name
workflow_run.workflows is configured as CI, but this repo’s CI workflow is named ci in .github/workflows/ci.yml (name: ci). Because this filter matches workflow names, the notifier job will never run after CI completions, so n8n will miss all intended events.
Useful? React with 👍 / 👎.
| const existing = await findAutomationEventByIdempotencyKey(input.idempotencyKey); | ||
| if (existing !== null) { |
There was a problem hiding this comment.
Make automation event idempotency write atomic
This idempotency flow does a read-before-write (find...ByIdempotencyKey then create later), so two concurrent requests with the same key can both observe “missing” and race into create. The second insert will hit the DB unique constraint and currently bubbles as an unhandled error (500) instead of returning the existing event or a structured idempotency response, which breaks webhook retry safety under concurrent delivery.
Useful? React with 👍 / 👎.
| const existing = await findStatusCheckByIdempotencyKey(statusIdempotencyKey); | ||
| if (existing !== null) { |
There was a problem hiding this comment.
Make GitHub status idempotency race-safe
This has the same non-atomic read-then-create pattern for statusIdempotencyKey: concurrent posts can both pass the existence check and one will fail on the unique index during create. Since that DB uniqueness error is not converted into an idempotent response, legitimate parallel retries can fail with 500/502 instead of returning the already-created status record.
Useful? React with 👍 / 👎.
|
this shit was genuinely a disaster im never listening to instagram again |
Status: Active
Last updated: 2026-01-02
Pull Request Checklist
Current behavior
Summary
Testing
npm run checknpm testnpm run buildnpm run ci:verifyEngine Impact
docs/engine-roadmap.md:During an active engine freeze, engine-changing PRs are prohibited unless explicitly whitelisted in
docs/engine-roadmap.md. CI enforces this viacheck:engine-freeze.Future/Target behavior
Related docs
CONTRIBUTING.mddocs/ci-and-guardrails.mddocs/engine-roadmap.md