[NGS Portal] Pipeline run's report documents
- Dominant language
- Java
- Stars
- 163
- Forks
- 65
- Avg merge
- 11h 46m
- Merged PRs (30d)
- 29
Description
**Background**
During pipeline execution, many different auxiliary output documents may be generated.
Once pipeline is completed, user might want to view/preview such documents or download them to work with later.
As these documents can be located in different places of the pipeline working/output directory and it can be hard to find files of interest manually, it would be useful to implement a separate previewer for pipeline output documents.
**Approach**
On the Run logs page of the pipeline, a new tab shall be added - **Reports**.
This tab shall have a view like:

Tab shall contain a list of documents from the pipeline's output directory:
- list shall include only documents loaded via `PipelineResult` storage rules (for more details see #3906)
- documents shall be grouped by storage rules by which they were loaded
List shall have a table view with the following columns:
- _Name_ - name of the `PipelineResult` storage rule by which documents were loaded
- _Path_ - list of full paths of documents loaded via the corresponding `PipelineResult` storage rule
- each path shall be presented as hyperlink - by click it, a corresponding document shall be opened in a preview pop-up (see below)
- if the list of documents is too large (more then `N` documents for a rule, where `N` is defined from preferences) then only several documents shall be shown, other documents shall hidden and a control with the count of hidden paths shall be shown. By click such control, list of hidden document shall be shown in a tooltip, e.g.:


Table shall support sorting by the _Name_ column.
By click any document path, the pop-up with document preview shall be opened.
This pop-up shall look like:

Pop-up shall include:
- details section:
- labels with the document name (name of the `PipelineResult` storage rule by which that document was loaded) and path
- button to open current document in a new tab
- button to download a raw file of the current document to the user workstation
- preview section - main section with the document preview. At least the following types and viewer shall be supported:
- `TSV`, `CSV` - shall be shown as a formatted table. Sorting by columns shall be supported. Pagination shall be supported for large tables
- `PDF` - shall be shown in a web PDF-viewer inside a frame
- `PNG` - shall be shown as image inside a frame
- `HTML` - shall be shown as formatted HTML-page inside a frame
- for unsupported documents types:
- notification shall be shown about the impossibility of previewing and a suggestion to download the document
- button to open a document in a new tab shall be disabled
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the pipeline Run logs page and trace how PipelineResult storage rules expose output files; review issue #3906 and the preferences controlling path limits. Done means a Reports tab groups and sorts eligible documents, supports path limits and previews for the listed formats, and provides the specified download and open actions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- full-stack
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100