mirror of
https://github.com/storytold/craft-ai-integrations.git
synced 2026-11-02 18:06:49 +00:00
7428cb8c75
* refactor(ai-core): move the connection presets into their own file draft.rs was 519 lines. The built-in presets and their static model lists are data that changes on a different schedule from the save rules, so they move to draft/presets.rs unchanged. Three mutation cases follow the code. * fix(ai-core,ai-egui): match the upstream contract fixes for required inputs and test-result addresses A model now has to accept every input a tool sends and require no input the tool cannot supply; the picker, binding, app status and planning agree, and a refusal happens before a key is read or anyone is asked to consent. A connection test result is recorded with the address the test started with (ConnectionDraft::set_models(address, models)), so a late answer for an old address is refused and loaded, preset and tested models keep their address through repeated edits. The shared connection panel passes the captured address. docs/CORE-SYNC.md says what this local copy still adds beyond craft-libs, and the mutation group 'ca' covers the ten safety rules. Two mutation anchors that matched twice are fixed. * docs: document the functions this change adds CodeRabbit's docstring check was below its 80% bar. Test functions get a one-line sentence from their name; helpers and session methods get a real description.