Repository navigation
[Feature]: Thread-bound scheduled tasks should optionally use the thread’s current agent/model #18030
Replies: 5 comments
|
Note Grok responding on behalf of Julius. TriageThanks @rohitgirdhar for the clear write-up and repro steps. It made the behavior easy to trace. What I found
Likely fix areaOptions a maintainer could weigh:
A maintainer will decide on the direction. |
|
Additional empirical evidence for this existing report. The same behavior caused two unexpected Codex-to-Claude reversions on The thread was switched explicitly from Claude Opus to Recorded sequenceAll times below are 2026-10-08 in Asia/Jerusalem, UTC+03:00. Exported fields are limited to times, event sequence, run ordinal/status and model selection. Private prompts, identifiers, home paths and credentials are omitted. The two explicit switch command IDs matched the Telegram bridge's deterministic Source checkReviewed upstream
Deterministic reproduction and focused checks
For a backend regression test, use a fake provider and a deferred completion to keep B active, enqueue the existing task, release B, then drain the orchestration effect worker. Check both the promoted run's selection and the persisted thread selection, not just the scheduler's dispatch arguments. No sleeps are needed. Once the intended follow-thread behavior is agreed, also cover a task queued before a subsequent manual model change, same-provider model/options changes, and the explicit fixed-model mode described in this proposal. Validation performed: read-only DB/event inspection of both occurrences, verification of both bridge command IDs, and a deterministic offline assertion over the redacted event sequences. The offline assertion passed for both occurrences. Source was inspected at the pinned current-main revision; a new isolated runtime reproduction or upstream test run on that revision was not performed. This supports the existing proposal; it does not establish approval for changing default behavior. I am adding evidence here rather than opening a duplicate issue or proposing an unapproved behavior-changing PR. Related #16833 matters for recovery: the MCP Prepared with gpt-6.1-sol through the Codex harness in T3 Code. |
|
We hit exactly this in a fork we run daily on Windows (two Codex and two Claude accounts, several recurring tasks posting into long threads), and the back-and-forth @CoreInfusion recorded is what we saw too. For us it was worse than a model flip: the saved selection carries the provider instance, so a bound task also moved the thread back to the other account. We tried the smallest version of the "follow thread" option from the triage and it has been enough so far:
What we measured, on 11 Oct in a dev build of the fork: an interval task with a saved model different from the thread's, bound to a thread. The task fired, the run completed, the run's recorded What we did not check: a scheduled run that steers a turn already in progress ( @rohitgirdhar would "always follow the thread, no option" cover your case, or do you have schedules where you want a fixed model on a shared thread on purpose? That would decide whether this needs a setting at all. Posted by Claude (Opus 5.5, Claude Code via T3 Code) on behalf of @AdEx-Partners-DE. |
|
I think it should always follow the model being used for the thread, can't think of usecases where I would want the model to switch back and forth |
|
Thanks @rohitgirdhar, that settles the question from my side: no option needed. In case you have not seen it: #18467 (by @otavio, still open) makes exactly this change, thread-bound runs no longer send the task's saved selection. Its test covers a switch to another provider and a switch to another account of the same provider, and both cases pass against our independent version of the change on Windows. Posted by Claude (Opus 5.5, Claude Code via T3 Code) on behalf of @AdEx-Partners-DE. |
Uh oh!
There was an error while loading. Please reload this page.
Problem or use case
I use recurring scheduled tasks attached to existing threads. A schedule
has its own saved agent/model selection, which can differ from the
thread's current selection.
When the schedule fires, it uses its saved selection. If I have switched
the thread to another agent/model, scheduled and manual turns keep
switching between them. I want the schedule to continue work with
whichever agent is currently selected for that thread.
Steps to reproduce
Proposed behavior
Add a "Use thread's current agent/model" option for schedules targeting
an existing thread, ideally as the default for new thread-bound schedules.
Resolve the provider instance, model, and associated model settings when
each scheduled run starts, rather than copying them when the schedule
is created. The scheduled run should not override the thread's selection.
Keep an explicit fixed-agent/model option for users who want it.
Schedules that create new threads can continue requiring their own selection.
Expected result
After switching a thread from A to B, subsequent scheduled runs use B
without requiring me to edit every schedule attached to that thread.
Environment
Orchestrator v2, branch t3code/codex-turn-mapping.
Observed on revision 402205e, updated on 2026-09-27.
Local macOS desktop app connected to a Linux VM server.
All reactions