Something a model could not do, and so wrote a note about instead
Asked to remind somebody every Monday, a model looked down its tool list, found notes_create described as "something worth having in a later conversation" and memory_add beginning with the word Remember, wrote a note, and reported that it had scheduled something. Every screen agreed with it. There was no scheduling tool at all -- the near-misses were the only thing there was to reach for, and nothing anywhere said the thing it was being asked for existed. The seam had been left open on purpose: Schedule.origin has defined ORIGIN_MODEL, with no writer, since scheduling shipped, and services/schedules.py says in its first line that it holds what the routes *and the tools* both need. This is the tool that was meant to go through it. Four of them, and a thin layer: rule.validate is still the one total normaliser the form and the compile share, schedules.create still writes the row and the task chat together, and rule.describe still says what came out. A second dialect for models would mean two definitions of "every other Tuesday" and one of them going quietly wrong. The result is that description, never "done". A schedule is invisible until it fires, which may be days away, so the sentence in the reply is the only moment anybody can check that Monday was read as Monday -- and the tool says so, in the text the model reads back. The list badges the ones nobody typed. Gated on schedule.use rather than a permission of its own: somebody who may set one up by hand may say so to a model instead, and a second checkbox beside the first would only ever be answered "the same as that one". Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -407,14 +407,20 @@ seen working.
|
||||
container on the network
|
||||
|
||||
### Phase 1 — the scheduling tools (`0.9.0`)
|
||||
- [ ] **A model can schedule.** There was no tool for it — the seam was left
|
||||
- [x] **A model can schedule.** There was no tool for it — the seam was left
|
||||
(`Schedule.origin` has defined `ORIGIN_MODEL` with no writer since
|
||||
scheduling landed) and the tool was never built, so a model asked to
|
||||
"remind me every Monday" wrote a note and said it had. `schedule_create`,
|
||||
`schedule_list`, `schedule_update` and `schedule_cancel` over the same
|
||||
`rule.validate` the form and the compile already share
|
||||
- [ ] Guidance saying which target a run should reach, and that anything which
|
||||
happens later or repeatedly is a schedule rather than a note
|
||||
- [x] **The reply says the timing back in words.** A schedule is invisible until
|
||||
it fires, so `rule.describe` in the answer is the only moment anybody can
|
||||
check that Monday was read as Monday
|
||||
- [x] The Scheduled list badges the ones nobody typed
|
||||
- [x] Guidance saying which target a run should reach, and that anything which
|
||||
happens later or repeatedly is a schedule rather than a note — said in
|
||||
`tool.notes` and `tool.memory` as well, because those are what the model
|
||||
actually reached for
|
||||
|
||||
### Phase 2 — image generation admin (`0.9.1`)
|
||||
- [ ] **Defaults an administrator can set** — steps, cfg, size, sampler,
|
||||
|
||||
Reference in New Issue
Block a user