Conversation
🦋 Changeset detectedLatest commit: 587deb4 The changes in this PR will be included in the next version bump. This PR includes changesets to release 29 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Hi @deepshekhardas, thanks for your interest in contributing! This project requires that pull request authors are vouched, and you are not in the list of vouched users. This PR will be closed automatically. See https://github.com/triggerdotdev/trigger.dev/blob/main/CONTRIBUTING.md for more details. |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (8)
WalkthroughThis pull request introduces a new RunEvent schema for the Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes ✨ Finishing Touches🧪 Generate unit tests (beta)
⚔️ Resolve merge conflicts
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 |
| start: { | ||
| from: { seqNum: 0 }, | ||
| }, | ||
| }, |
There was a problem hiding this comment.
🔴 Removal of S2 read session timeout allows CLI to hang indefinitely
The old code had stop: { waitSecs: 60 * 20 } which provided a 20-minute safety timeout for the S2 read session. This PR removes it entirely. The for await (const record of readSession) loop at packages/cli-v3/src/commands/deploy.ts:1175 will now block indefinitely if no finalized event is ever emitted (e.g., build server crashes, stream infrastructure issues, or any scenario where the deployment process hangs without producing a terminal event). The abortController is only triggered upon receiving a finalized event (packages/cli-v3/src/commands/deploy.ts:1227), so without the server-side timeout, there is no fallback to break the loop.
| start: { | |
| from: { seqNum: 0 }, | |
| }, | |
| }, | |
| start: { | |
| from: { seqNum: 0 }, | |
| }, | |
| stop: { waitSecs: 60 * 20 }, // 20 minutes |
Was this helpful? React with 👍 or 👎 to provide feedback.
| listRunEvents(runId: string, requestOptions?: ZodFetchOptions) { | ||
| return zodfetch( | ||
| z.any(), // TODO: define a proper schema for this | ||
| ListRunEventsResponse, |
There was a problem hiding this comment.
🚩 Schema tightening from z.any() to ListRunEventsResponse may strip fields from API response
The change from z.any() to ListRunEventsResponse at packages/core/src/v3/apiClient/index.ts:707 introduces strict Zod parsing. The API route at apps/webapp/app/routes/api.v1.runs.$runId.events.ts:48-54 returns all fields from RunPreparedEvent which includes idempotencyKey and environmentType (selected at apps/webapp/app/v3/eventRepository/eventRepository.server.ts:704,715). These fields are NOT in the new RunEvent schema and will be silently stripped by Zod's default behavior. While this is likely intentional (moving from untyped to typed), any existing consumers of listRunEvents() that relied on idempotencyKey or environmentType will lose access to those fields. This is a semantic API contract change worth noting in the changeset.
Was this helpful? React with 👍 or 👎 to provide feedback.
Closes #
✅ Checklist
Testing
[Describe the steps you took to test this change]
Changelog
[Short description of what has changed]
Screenshots
[Screenshots]
💯