webinterface.pages.base_pages.utils.validation_ui module#

Streamlit glue for the submission-validation layer.

This module bridges the framework-agnostic core validator (proteobench.validation) and the Streamlit submission flow. It:

  • re-derives the standardized result DataFrame from the already-parsed input DataFrame by reusing the existing parser (no duplicated tool logic);

  • downloads and caches the module reference FASTA;

  • runs proteobench.validation.validate_submission();

  • renders the resulting report in a curator- and user-friendly way.

All network access and Streamlit calls live here, keeping the core validation library free of UI and I/O dependencies.

webinterface.pages.base_pages.utils.validation_ui.render_validation_report(report: ValidationReport) None[source]#

Render a full validation report in the Streamlit UI.

The checks never block submission; the report is shown so the submitter can review the findings, which are also included in the pull-request description.

Parameters:

report (ValidationReport) – The report to display.

webinterface.pages.base_pages.utils.validation_ui.run_submission_validation(variables, ionmodule, user_input, params) ValidationReport[source]#

Validate a submission and return the structured report.

Designed to be fault-tolerant: any infrastructure problem (missing input, parser failure, FASTA download failure) is converted into a warning so that validation never crashes the submission flow. Only genuine consistency problems produce errors.

Parameters:
  • variables (Any) – The module’s Variables dataclass instance (session-state keys).

  • ionmodule (Any) – The benchmarking module instance.

  • user_input (dict) – The submission’s user input (provides "input_format").

  • params (Any) – The parsed/edited ProteoBenchParameters to be submitted.

Returns:

The aggregated validation report.

Return type:

ValidationReport