Repository navigation
Conversation
The Kafka job queue writes invocations with JSON.stringify, so a Luxon DateTime in queueScheduledAt comes back as an ISO string. Recording a terminal failure for such an invocation then threw "toJSDate is not a function", and the failed lifecycle row was never written. Add deserializeInvocation next to serializeInvocation and turn the string back into a UTC DateTime there. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Merging to
After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here |
🤖 CI report✅ Trunk lane — non-backend laneThis PR is assigned to the non-backend lane. It does not run backend Python tests and may merge in parallel with PRs in other lanes. ✅ Duplication (Python) — cleanNew Python code duplication introduced by this branch. Fails at 70+ tokens in app code, or 150+ tokens when both copies live in test files. Advisory while the gate proves itself: extract a shared helper instead of copying. ✅ Duplication (TypeScript) — cleanNew TypeScript code duplication introduced by this branch. Fails at 70+ tokens in app code, or 150+ tokens when both copies live in test files. Advisory while the gate proves itself: extract a shared helper instead of copying. |
|
Risk: No findings This PR fixes a crash in the CDP Kafka job consumer by reviving the serialized Sentinel reviewed |
Problem
failedrow when the function is disabled or deleted between fetch retries.toJSDate is not a function(error tracking issue).Changes
failedrow, with the scheduled retry time.deserializeInvocationrevivesqueueScheduledAtfrom an ISO string into a UTCDateTimeon Kafka reads.consumeKafkaBatchis mechanical.How did you test this code?
Test rationale: two rows in
job-queue-kafka.test.tsround-trip a set and an unsetqueueScheduledAt, which no existing test covers.failedrow with the retry time.toJSDateerror there and writes nofailedrow.Release status
Docs update
🤖 Agent context
Autonomy: Human-driven (agent-assisted)
Agent: Claude Code, Claude Opus 5.5
Skills:
/writing-tests,/writing-code-comments,/simplify,/code-review,/qa-team,/writing-pr-descriptions, Review Hog lensesMore context for AI agents
DateTime.hog-invocation-results.service.ts.DateTime, but the producer cannot write one. An explicitnullstaysnull.deserializeInvocation, notconsumeKafkaBatch.serializeInvocation, so a newDateTimefield cannot come back as a string without a type error.deserializeInvocationinnodejs/src/cdp/services/job-queue/job-queue-kafka.ts.🤖 Generated with Claude Code