hermes - 💡(How to fix) Fix Cron delivery origin should not seed live gateway sender identity for tool access-control [2 pull requests]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Cron jobs can store an origin or delivery target from a messaging platform. That origin is routing metadata, not a live inbound user identity. If the scheduler seeds gateway session identity from the stored origin before building an agent, access-control can incorrectly strip restricted toolsets from internal cron jobs.

Error Message

A cron job with explicit enabled_toolsets including web/file/terminal was created from a WhatsApp group origin. During execution, its saved tool schemas lacked expected tools such as web_search, terminal, and read_file, because access-control treated the job as a live message from the group.

Root Cause

Observed behavior

A cron job with explicit enabled_toolsets including web/file/terminal was created from a WhatsApp group origin. During execution, its saved tool schemas lacked expected tools such as web_search, terminal, and read_file, because access-control treated the job as a live message from the group.

Fix Action

Fixed

RAW_BUFFERClick to expand / collapse

Title: Cron delivery origin should not seed live gateway sender identity for tool access-control

Summary

Cron jobs can store an origin or delivery target from a messaging platform. That origin is routing metadata, not a live inbound user identity. If the scheduler seeds gateway session identity from the stored origin before building an agent, access-control can incorrectly strip restricted toolsets from internal cron jobs.

Observed behavior

A cron job with explicit enabled_toolsets including web/file/terminal was created from a WhatsApp group origin. During execution, its saved tool schemas lacked expected tools such as web_search, terminal, and read_file, because access-control treated the job as a live message from the group.

Expected behavior

Cron execution should run as an internal scheduler context. Delivery routing should still use the stored destination, but the stored delivery origin should not be used as the live sender identity for tool-schema authorization.

Suggested fix

In cron/scheduler.py, set empty gateway session identity for cron execution and keep delivery routing in the existing HERMES_CRON_AUTO_DELIVER_* environment variables.

Regression tests

Add cron/tool-schema tests that verify a job's configured toolsets are not stripped just because its delivery origin is a group or non-owner gateway identity.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Cron execution should run as an internal scheduler context. Delivery routing should still use the stored destination, but the stored delivery origin should not be used as the live sender identity for tool-schema authorization.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix Cron delivery origin should not seed live gateway sender identity for tool access-control [2 pull requests]