galaxyproject / galaxyproject/total-perspective-vortex

ValidationError: 1 validation error for TPVConfig

Open
#169 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
18
Forks
19
Avg merge
4d 9h
Merged PRs (30d)
5

Description

Sentry Issue: [GALAXY-TEST-31R](https://sentry.galaxyproject.org/organizations/galaxy/issues/235814/?referrer=github_integration)

```
ValidationError: 1 validation error for TPVConfig
tools.no_qa_codes
Input should be a valid dictionary or instance of Tool [type=model_type, input_value=set(), input_type=set]
For further information visit https://errors.pydantic.dev/2.11/v/model_type
(4 additional frame(s) were not displayed)
...
File "galaxy/jobs/mapper.py", line 225, in __handle_rule
job_destination = self.__invoke_expand_function(
File "galaxy/jobs/mapper.py", line 141, in __invoke_expand_function
return expand_function(**actual_args)

ValidationError: 1 validation error for TPVConfig
tools.no_qa_codes
Input should be a valid dictionary or instance of Tool [type=model_type, input_value=set(), input_type=set]
For further information visit https://errors.pydantic.dev/2.11/v/model_type
(8 additional frame(s) were not displayed)
...
File "galaxy/jobs/mapper.py", line 252, in __determine_job_destination
job_destination = self.__handle_dynamic_job_destination(raw_job_destination)
File "galaxy/jobs/mapper.py", line 215, in __handle_dynamic_job_destination
return self.__handle_rule(expand_function, destination)
File "galaxy/jobs/mapper.py", line 230, in __handle_rule
raise e
File "galaxy/jobs/mapper.py", line 219, in __handle_rule
job_destination = self.__invoke_expand_function(rule_function, destination)
File "galaxy/jobs/mapper.py", line 141, in __invoke_expand_function
return expand_function(**actual_args)

Caught unhandled exception while attempting to cache job destination:
```

Contributor guide

Open the contributing guide

Research direction

Begin with the traceback in galaxy/jobs/mapper.py, especially __invoke_expand_function and __handle_rule, and trace how TPVConfig receives tools.no_qa_codes. Reproduce the Sentry validation failure and identify the source of the set() input. Done means this input no longer causes TPVConfig validation to fail, with coverage for the reported case.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.