mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-01 15:37:32 +08:00
aadd2c7010
The custom tool authoring agent (galaxy.agents.custom_tool) gains container resolution and producer-output safeguards. It consumes the mulled recommender (galaxy.tool_util.deps.mulled.recommend): - Container resolution: a dedicated container critic infers the conda packages from the tool's shell_command/configfiles, the recommender resolves a verified quay.io image, and a deterministic gate applies it -- overriding an exact-version match, a verifiably-absent biocontainer tag, or a non-biocontainer image, while leaving a present pinned biocontainer alone. Runs independently of the quality critic. - Producer reliability: inputs/outputs are required in the LLM authoring view so grammar-constrained models can't drop them; UserToolSource stays lenient for the API and stored tools. - The quality critic supplies deterministic field edits (labels/help/...) applied in place, falling back to a full re-roll only for structural changes. - Reject a shell_command that runs a script by name with no configfile to create it, driving a producer retry. - Render saved tool YAML with exclude_defaults so it carries only authored fields. Admin config docs (config_schema.yml / galaxy.yml.sample) describe the quality_critic_enabled and container_recommendation_enabled flags. Tests cover the authoring-view required fields, container override paths, deterministic critic edits, and the script check.