What happens
A run completes on Tapis and writes its outputs, but the Results step shows
— No results available — for ever. The Fetch results button does nothing.
Measured at TACC on 2026-08-09 while resolving #92. Thread jx8ibyilmsmg1pvt, model
SUBSIDE Allocation Specification. Two runs went to Tapis: one succeeded, one failed on bad
input data. The successful job wrote a full output set to its archive:
✓ All processing complete!
Output directory: /scratch/.../d0b7b4c0-...-007/output/
execution_result in Hasura holds 0 rows for both executions.
Two independent causes
1. ui-react never asks. MintResults guards on an optional prop that no parent passes:
// MintResults.tsx:122
if (!onPublishResults) return;
MintThread.tsx:349 renders <MintResults> with threadData, executions, canWrite,
ingestionApiAvailable, onContinue and onFetchRuns — and no onPublishResults. So
handlePublish returns on its first line. The click makes no network request at all.
2. The server route it should call also fails. Called by hand with the same bearer token
the app holds:
| Call |
Result |
POST .../subtasks/{id}/outputs |
400 No executions found to publish |
POST .../executions/{success-id}/outputs |
500 Request failed with status code 403 |
POST .../executions/{failed-id}/outputs |
400 Execution is not successful — correct |
registerOutputs reaches Tapis Files or CKAN and gets a 403, which surfaces as a 500. The
subtask-level route catches every per-execution error and reports the same
No executions found to publish regardless, so the 403 is invisible from the API. Same opacity
class as #108.
Why it matters
Fixing only cause 1 is not enough — the button would then call a route that returns 500. Both
need a fix before a user can see a run's outputs.
Scope
Blocks #77. A user who runs a model cannot reach its results.
Cause 1 is ui-react. Cause 2 is mint-ensemble-manager, and the 403 needs a look at which
credential registerExecutionOutputs uses.
What happens
A run completes on Tapis and writes its outputs, but the Results step shows
— No results available —for ever. The Fetch results button does nothing.Measured at TACC on 2026-08-09 while resolving #92. Thread
jx8ibyilmsmg1pvt, modelSUBSIDE Allocation Specification. Two runs went to Tapis: one succeeded, one failed on badinput data. The successful job wrote a full output set to its archive:
execution_resultin Hasura holds 0 rows for both executions.Two independent causes
1.
ui-reactnever asks.MintResultsguards on an optional prop that no parent passes:MintThread.tsx:349renders<MintResults>withthreadData,executions,canWrite,ingestionApiAvailable,onContinueandonFetchRuns— and noonPublishResults. SohandlePublishreturns on its first line. The click makes no network request at all.2. The server route it should call also fails. Called by hand with the same bearer token
the app holds:
POST .../subtasks/{id}/outputsNo executions found to publishPOST .../executions/{success-id}/outputsRequest failed with status code 403POST .../executions/{failed-id}/outputsExecution is not successful— correctregisterOutputsreaches Tapis Files or CKAN and gets a 403, which surfaces as a 500. Thesubtask-level route catches every per-execution error and reports the same
No executions found to publishregardless, so the 403 is invisible from the API. Same opacityclass as #108.
Why it matters
Fixing only cause 1 is not enough — the button would then call a route that returns 500. Both
need a fix before a user can see a run's outputs.
Scope
Blocks #77. A user who runs a model cannot reach its results.
Cause 1 is
ui-react. Cause 2 ismint-ensemble-manager, and the 403 needs a look at whichcredential
registerExecutionOutputsuses.