Cron: route reminders by session namespace#18637
Conversation
|
Addressed blocker regression in targeted wake coalescing. Changes:
Validation:
|
|
The formal models extracted constants ( This check is informational (not blocking merges yet). If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there. |
|
you might want to add "sessionKey" to the JOB_KEYS allowlist for when reconstructing params.job and add a regression test for where will test it! |
|
Landed via temp rebase onto main.
Thanks @vignesh07! |
|
The formal models extracted constants ( This check is informational (not blocking merges yet). If this change is intentional, follow up by updating the formal models repo or regenerating the extracted artifacts there. |
(cherry picked from commit c20ef58) # Conflicts: # CHANGELOG.md # src/agents/tools/cron-tool.ts # src/gateway/server-cron.ts
(cherry picked from commit c20ef58) # Conflicts: # CHANGELOG.md # src/agents/tools/cron-tool.ts # src/gateway/server-cron.ts
Summary
sessionKeysupport to cron job types/schemas/normalization/store migrationsessionKey(without overriding explicit values)sessionKeythrough cron main-session execution (enqueueSystemEvent,runHeartbeatOnce,requestHeartbeatNow)agentId,sessionKey) through heartbeat wake queue/retries and targeted heartbeat runner executionsessionKeyadditionsValidation
pnpm protocol:checkpnpm checkpnpm exec vitest run --config vitest.e2e.config.ts src/agents/tools/cron-tool.e2e.test.ts src/gateway/server.cron.e2e.test.tsGreptile Summary
This PR adds
sessionKeysupport to the cron system to enable session-specific routing of reminders and wake events. The implementation threadssessionKeythrough the entire cron execution pipeline: from job creation (via tool calls), through storage and normalization, to heartbeat execution and wake event targeting.Key changes:
sessionKeyfield toCronJobtype and protocol schemassessionKeywhen not explicitly providedsessionKeythroughenqueueSystemEvent,runHeartbeatOnce, andrequestHeartbeatNowagentId+sessionKeyacross retriesTesting:
The PR includes comprehensive test coverage for the new functionality including e2e tests for sessionKey stamping, wake target routing, and retry preservation.
Confidence Score: 5/5
Last reviewed commit: a42b2a2