galaxyproject / galaxyproject/total-perspective-vortex
ValidationError: 1 validation error for TPVConfig
- 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
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