Files
galaxy/doc
mvdbeek aadd2c7010 Add container resolution and authoring safeguards to the custom tool agent
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.
2026-07-07 16:39:17 +02:00
..
2026-01-20 10:25:45 +00:00