Demo helper GRI Engine · Native results and factor library wireframes (spec iii) Page 9 of 12 · Compute and run states Invented data · Bluefin Foods Group (fictional tenant)
Reporting Cycles / FY2025 GRI report / Compute runs

Compute and runs

When the figures were computed, and how to compute them again
AnnotationSpec iii 6.6 defines this run surface; 6.1 the compute trigger; 5.4 the crash-safe run mechanics the drawings below rely on
FY2025 GRI report·Jan 2025 to Dec 2025Active These figures were computed on 4 Mar 2026 at 10:12 and reflect every entry as of that moment.
Current computed figures
Everything the dashboard and the computed figures table show comes from this run
Up to dateRecompute
Run 000318
Finished 4 Mar 2026 at 10:12
Figures published 46
Refusals 0
Computing is manual: run Recompute after activity data, instruments, the revenue figure, or the lock changes. A finished run replaces the published figures all at once.
Run history
Run Finished Result Figures published Refusals
000318 4 Mar 2026 at 10:12 Up to date 46 0
000317 20 Feb 2026 at 14:34 Replaced by run 000318
An older run kept for comparison. Following the run link highlights run 000318's row.
46 0
000316 20 Feb 2026 at 14:20 Failed
One factor read did not answer in time, so the computation stopped. No figures were published and nothing partial was kept. Recovery at the time: the Recompute button above; run 000317 was that retry. RUN_FAILED
0 0
Help hidden (2)
Annotation · not proposed UIThe collapsed help holds plain-language notes on what a run is and when to recompute.
Drawing · the confirmation opened by Recompute and by Retry the computation
Run the calculation?
FY2025 GRI report · every figure is computed from the current entries and the methodology lock

When the run finishes it replaces the published figures all at once. Until then, the figures from run 000318 stay published and readable. One calculation runs at a time.

CancelRun the calculationStarts the run the next drawing shows
Second drawing · while a computation is running
Current computed figures
Run 000319 · started 6 Mar 2026 at 09:58
ComputingRecompute
Computing your figures

A computation is already running, so Recompute is unavailable until it finishes. The figures from run 000318 stay published and readable while this runs, and this surface keeps its layout.

Third drawing · a computation that ran too long
Current computed figures
Run 000319 · started 6 Mar 2026 at 09:58
Timed out (needs a retry)Retry the computation
This computation ran too long and was stopped. No partial figures were published: every page still shows the figures from run 000318, finished 4 Mar 2026 at 10:12. Use Retry the computation to run it again.
Annotation · not proposed UISpec iii 5.4 · crash-safe run mechanics, in one sentence: a run either publishes its complete set of figures or publishes nothing at all, so a failure, a crash, or a timeout can never leave the tenant looking at a half-updated dashboard. The timeout state maps the spec's "swept" run state to the user-facing words "Timed out (needs a retry)"; running maps to "Computing", complete to "Up to date".
Annotation · not proposed UISpec iii 6.6 · the run surface. Run ids, finish times, figure counts, and refusal counts are the tenant-visible record. Each run also carries internal metadata (this cycle's current run is generation 4; internal engine and formula versions 1.0.0 and 1) which stays out of primary UI copy: the engine is never user-facing, and internal identifiers appear only in annotations like this one.
Annotation · not proposed UIOne live run per cycle. The disabled Recompute in the second drawing is the one-live-run rule: a second computation cannot start while one is running, and the server refuses the attempt with ENGINE_BUSY. The button's reason sentence and the timeout sentence are served under content IDs engine.run.busy and engine.run.timedOut; content IDs are cited in annotations only, by design position for this set.
Annotation · not proposed UIWhere staleness lives. The run drawn as running and timed out here follows an activity row edited 6 Mar 2026 08:55, the same event the out-of-date entry on the results that need attention page uses ("Data changed since this was computed"). The out-of-date marker and per-figure refusals are drawn there; this page draws only the trigger and the run states.