feat: Steering support for CLI channel#241
Conversation
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
bub | 01a2c07 | Commit Preview URL Branch Preview URL |
Jun 18 2026, 12:51 AM |
…ramework and channel manager Signed-off-by: Frost Ming <me@frostming.com>
…es for steering logic Signed-off-by: Frost Ming <me@frostming.com>
…ents Signed-off-by: Frost Ming <me@frostming.com>
… for steering handling Signed-off-by: Frost Ming <me@frostming.com>
e7756ad to
01a2c07
Compare
|
@Gezi-lzq I made some changes to the steering control. I removed the steering buffer and expose a new hook This PR also implements a simple steering support for CLI channel, it's single-threaded. Run |
|
Sorry for the late reply. I only just saw this PR. Thanks for explaining the motivation. I understand the direction here: removing the framework-level One concern I have is that So if a plugin replaces The direction makes sense to me. I just wonder whether this contract should be made explicit, e.g. custom model runtimes that support steering should also own |
|
Thinking about this a bit more, I wonder whether the framework should still provide a small abstraction for the queue/mailbox semantics, even if the concrete runtime decides how to consume steering messages. My original I’m not fully convinced yet how much freedom is needed in the stored data structure, since the channel-side input is still an Maybe there is a middle ground: keep steering pluggable, but expose a small framework-level mailbox/buffer abstraction so acknowledgement, fallback, draining, and ownership are explicit. |
Signed-off-by: Frost Ming me@frostming.com