Revisit 2026-08-27 (three days from filing).
The Jobs page (/job/#selected=<task_id>) has a VIEW eye icon, but it lands on the job's output folder — the user still has to find the report. The workspace browser now gets a REPORT icon (BV-BRC/BV-BRC-Web#1403, #88); the Jobs page should offer the same shortcut, since that is where users actually watch a job finish.
Why it needs a different mechanism than #88
Investigated against upstream/alpha:
-
The existing icon is shared by every service. ViewFeatureItem in JobManager.js:344 is validTypes: ['*'] and navigates to params.output_path + '/' + params.output_file. Repointing it would change behaviour for all ~40 services — too wide a blast radius, and it would rightly be rejected upstream. A separate action is required.
-
validTypes cannot gate a Jobs-page action. ActionBar.js:40 derives the type from document_type || type; job records carry neither (they have app). That is why all six Jobs actions use ['*']. A validTypes: ["PredictStructure"] action would never appear.
-
shouldShow is the correct hook. ActionBar.js:84-88 supports an options.shouldShow(selection) predicate. Gate on selection[0].app === 'PredictStructure' and status === 'completed' — a failed job has no report (verified: failed jobs carry output_files: []).
Path derivation
The Jobs page has no workspace metadata, only parameters. The report lives in the dot-folder, which the existing action does not use:
<output_path>/.<output_file>/report.html
Verified on a real completed job (matrix_E01_esmfold_20260824_104617).
Open question: StabiliNNator
Its report is <basename>_report.html, derived from the input structure name (real example 1crn_small_report.html), so the Jobs page would have to reconstruct it from parameters.input_file by string surgery — fragile in a way #88's workspace action is not (there we scan the real output_files list). No StabiliNNator AppService job has completed yet, so the naming is unverified end-to-end.
Suggested: ship PredictStructure-only first, add StabiliNNator once a real job confirms the naming, and fall back to the existing folder navigation when no report path can be derived.
Related
Revisit 2026-08-27 (three days from filing).
The Jobs page (
/job/#selected=<task_id>) has a VIEW eye icon, but it lands on the job's output folder — the user still has to find the report. The workspace browser now gets a REPORT icon (BV-BRC/BV-BRC-Web#1403, #88); the Jobs page should offer the same shortcut, since that is where users actually watch a job finish.Why it needs a different mechanism than #88
Investigated against
upstream/alpha:The existing icon is shared by every service.
ViewFeatureIteminJobManager.js:344isvalidTypes: ['*']and navigates toparams.output_path + '/' + params.output_file. Repointing it would change behaviour for all ~40 services — too wide a blast radius, and it would rightly be rejected upstream. A separate action is required.validTypescannot gate a Jobs-page action.ActionBar.js:40derives the type fromdocument_type || type; job records carry neither (they haveapp). That is why all six Jobs actions use['*']. AvalidTypes: ["PredictStructure"]action would never appear.shouldShowis the correct hook.ActionBar.js:84-88supports anoptions.shouldShow(selection)predicate. Gate onselection[0].app === 'PredictStructure'andstatus === 'completed'— a failed job has no report (verified: failed jobs carryoutput_files: []).Path derivation
The Jobs page has no workspace metadata, only
parameters. The report lives in the dot-folder, which the existing action does not use:Verified on a real completed job (
matrix_E01_esmfold_20260824_104617).Open question: StabiliNNator
Its report is
<basename>_report.html, derived from the input structure name (real example1crn_small_report.html), so the Jobs page would have to reconstruct it fromparameters.input_fileby string surgery — fragile in a way #88's workspace action is not (there we scan the realoutput_fileslist). No StabiliNNator AppService job has completed yet, so the naming is unverified end-to-end.Suggested: ship PredictStructure-only first, add StabiliNNator once a real job confirms the naming, and fall back to the existing folder navigation when no report path can be derived.
Related
partition: normal); that blocks verifying the StabiliNNator half.