Repository navigation
chore(trigger): fix queues that never serialized and schedule missing self-hosted crons - #8715
Conversation
…, schedule missing self-hosted crons
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
1 issue found across 16 files
Confidence score: 3/5
quickbooks-webhook-ingress.tscan hit the five-minute cap before dispatching every target for a valid high-fan-out delivery; because dispatch is serial and has no continuation point, some targets may never be reached. Keep the 5,400-second ceiling or add resumable dispatch before lowering it.
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/sim/background/quickbooks-webhook-ingress.ts">
<violation number="1" location="apps/sim/background/quickbooks-webhook-ingress.ts:146">
P2: This five-minute cap can stop a valid high-fan-out delivery before all targets are dispatched: the task processes them serially and does not persist a continuation point. Keep the 5,400-second ceiling or split/limit accepted work so it can finish within five minutes.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Turn on auto-fix | Re-trigger cubic
|
…rim sizing comments
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 17 files
Requires human review: Auto-approval blocked because this review re-detected 1 unresolved issue already reported by Cubic.
Fix all with cubic | Turn on auto-fix | Re-trigger cubic
…e cleanup on kill
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
…ump chart for new cronjobs
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
Summary
Queues that didn't do what they said
run-data-drain: enqueue sites key runs bydata-drain:<id>to serialize a drain, but with no queue limit each key got the env's full concurrency. AddconcurrencyLimit: 1(manual runs already refuse while one is in progress, so nothing needs concurrency), plus an explicitmaxDuration: 5400(same value it inherited) noting the cursor commits only at the endtable-run-dispatcher: triggered withconcurrencyKey: dispatchId, so the limit is per dispatch and8was meaningless;1serializes a duplicate run of the same dispatch without throttling distinct dispatches (children run on the cell task's own queue)lifecycle-email: no concurrency limit; cap at 10 (delayed one-off sends, no SLA)Bounded per-run task:
cleanup-table-row-ttlgetsmaxDuration: 600(capped at 100 batches per run; 30-day max 30s). Every task whose work can grow with user data or fan-out stays on the global ceiling, since a run that hitsmaxDurationis killed and not retriedConfig:
logLevel: 'log'→'info'(the worker already coerces unknown levels toinfo; no behavior change). Corrected comments that tied the 95-minute stale thresholds to the task ceiling — they measure time since the last heartbeatSelf-hosted crons (Helm + Compose,
check:cron-paritygreen; chart 1.11.6 → 1.11.7): schedulecleanup-stale-executions(*/30) — without it, runs whose worker died never stop showing as running — and idempotency-key cleanup (daily; batched deletes bounded by the route's 5-minute limit; every namespace's retention is ≤ the 7-day cutoff and the long-lived namespaces are excluded). Docs table updated, including the missingfold-table-row-changesrowType of Change
Testing
bun run lint,bun run type-check,bun run check:audits(incl.check:cron-parity),bun run docs-manifest:check— greenhelm unittest helm/sim,helm templaterenders both new CronJobs with the expected schedules/timeoutsChecklist
test-auditauthoring gate)