Repository navigation
Adding queue edit support - #11
Conversation
To align with earlier decisions
|
Thanks for this! I tried it in opencode 2.2.5 (Docker, with a fake model). Text edits work well: numbered and last-entry edits, turning an entry into a shell command, keeping inherited files, the error messages, and replay sends the edited text. Unit tests, typecheck and the integration suite all pass. One thing fails from the TUI: editing with a new attachment. opencode gives the command handler only the text after the command name, but it still counts the attachment's position from the start of the full line. This is what {"name":"queue:edit","prompt":{"text":"2 summarize @notes.txt ","files":[{"uri":"file:///workspace/notes.txt","name":"notes.txt","mention":{"start":24,"end":34,"text":"@notes.txt"}}]}}
This doesn't come from your change: plain The fix probably belongs in the command handler in I tested with an |
|
Oh, good that it was caught then. I'll be looking to fix this either later or tomorrow then. |
I was a bit paranoid, but I think it's worth it
|
Should be good now. I don't know how to test it in opencode, so I tried to be thorough with the tests. |
opencode keeps shell output in the session inbox until the next model turn, so a shell-only queue never emits session.synthetic. Queue a prompt after the edited shell entry and check that turn instead. Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
Thanks a lot for this, and for turning the mention fix around so quickly! It's merged and released in v2.1.0. Before merging I pushed one small commit to your branch (89f3df5). The new test that turns an edit into a shell timed out every time. opencode keeps shell output in the session inbox until the next model turn, so a queue that holds only a shell never emits I also tried your fix in the TUI with opencode 2.2.5. |
|
Thanks to you! |
As mentioned in issue #10
For usage, I settled on the simplest alternative to avoid touching too much of the project and make the review simpler. It should also keep it in line with the style of the rest of the plugin.
I chose to drop attachments when the entry kind changes to match earlier code (in engine, a comment says "shell and compaction entries never carry attachments").