🤖 Solers: Add provider controls and editable chat rewind - #2
Conversation
…chat-workflow # Conflicts: # modules/solers_ai/core/solers_agent_session.cpp # modules/solers_ai/core/solers_settings_service.cpp # modules/solers_ai/core/solers_tool_registry.cpp # modules/solers_ai/editor/solers_chat_cells.cpp # modules/solers_ai/editor/solers_editor_plugin.cpp # modules/solers_ai/tests/test_solers_provider_gateway.h
brandlll-lee
left a comment
There was a problem hiding this comment.
Thanks for putting this together. The provider controls and the edit/retry workflow are useful directions, and I would like to keep those ideas. I don't think the current implementation is safe to merge yet, though.
The main blocker is project rewind. It restores multiple Godot UndoRedo actions and file checkpoints one at a time, so a failure halfway through can leave the project partially rewound. The preflight also does not validate every checkpoint and UndoRedo history involved. In Solers, project state has to remain authoritative through Godot's native UndoRedo state and validated file state. I think conversation branching should only branch the journal for now, while project reversal remains an explicit single-step operation.
There are also two data-loss cases. The new branch drops checkpoint events while retaining the messages and tool history that depended on them, and retry/edit restores the prompt but does not resubmit its mentions and attachments. Both paths can therefore appear successful while silently losing part of the original state.
The provider changes need to stay protocol-driven as well. session-id should not become a default header for every protocol, and unknown image capability should not be treated as supported. These need to come from the selected provider profile or an explicit user setting.
I would also keep the existing fixed Solers left-side host. Moving it back into a generic Godot dock changes an intentional product layout. The inline editor should reuse the existing composer and native container layout instead of adding another manually positioned editor.
This is a fairly large change across 23 files without behavior tests. Please split the unrelated design document out, narrow this PR to the provider and conversation workflow changes, and add coverage for rewind failure, branch restoration, attachments/mentions on retry, provider headers, and image capability handling.
The feature direction makes sense, but these state and lifecycle issues need to be resolved before merging. Happy to take another look once the scope is reduced🤗
|
Okay, I will reconsider this logic and safety. |
What problem(s) does this PR solve?
This PR groups the Solers provider and chat workflow improvements developed since the per-provider session ID configuration change.
Changes
Testing
No new automated tests are included in this PR. The changes were compiled and exercised locally during development.