Skip to content

Spec 001 T007: a single event's PDF, stage by stage, cold; SC-005 decided - #102

Merged
adamjohnwright merged 5 commits into
mainfrom
t007/measure-5
Nov 2, 2026
Merged

adamjohnwright merged 5 commits into
mainfrom
t007/measure-5

Conversation

@adamjohnwright

Copy link
Copy Markdown
Contributor

Spec 001, T007 (with T005's (c)). Replaces #96, #97, #99 and #101, with their reviews' findings fixed.

Measured each event of the event-pdf baseline's sample at depth 1 on this host. Each ran in a render service of its own:

  • at the website settings, two at once;
  • with a fresh cache key; the service's hit count over each run was 0, and is recorded;
  • reading the release's files locally through RENDER_FILES (WebsiteAngular #777);
  • with the browser warmed on a reaction no sampled event draws, the warm-up's 200 checked.
Event Figures (s) Total (s) event-pdf (s)
Five reactions 2.3–3.0 3.9–4.9 0.5–1.7
Pathways, 1–34 reactions beneath 5.1–18.6 7.4–21.5 1.3–3.8
Pathways, 143–1,150 beneath 10.6–20.7 14.2–25.3 4.4–9.5
Signal Transduction 26.7 33.2 46
  • Figures alone exceed event-pdf's whole time in every group but Signal Transduction.
  • One figure with an analysis token: 4.6 s alone, 18.7 s for the last of eight at once.
  • An earlier run had an unchecked, refused warm-up. Its totals were within 2.2 s of these; it's kept as events-unwarmed.jsonl.

SC-005 decided (the user left it to us):

  • Without an analysis, for an event the figures' folder holds (human): the PDF reads its figures from the release's figures' folder, and must keep event-pdf's times. T023 measures this.
  • With an analysis, or for another species: figures are drawn on request, within 8 s plus 3 s per figure.
  • The folder is used only when it passes book's checks against the graph's current release; otherwise the service draws on request and /health says why.
  • Tasks: T022 ships drawing everything on request; a new T047 wires in the folder after T024; T023 follows T046 and T047 and adds non-human events.

Also:

From #99's review: run-to-run variation is up to 2.2 s, and the tightest event by margin is R-HSA-68881 (5.7 s to spare). T047 is split out of T022, removing the last ordering knot. "Cold" and the stale-folder case are in SC-005, and the full folder checks run only when the folder or release changes.

🤖 Generated with Claude Code

adamjohnwright and others added 5 commits November 2, 2026 21:15
Each event of the baseline's sample, at depth 1, in a render service of its
own at the website settings with a fresh cache key and the release's files
read locally (RENDER_FILES). Figures alone exceed event-pdf's whole time for
every reaction (2.6 s against 0.5-1.7 s) and every pathway but Signal
Transduction (32.9 s against 46 s); one figure with an analysis token takes
4.5 s, and 19.6 s for the last of eight at once. SC-005 is raised with the
user. Script ci/measure/single.ts, outputs in ci/measure/results/.

Also: `figures` requires a render service reading the release's files locally
(WebsiteAngular #777) and refuses one that does not; R7 records that T005's
pathway timings included fetches from the public download site; T005 and T006
carry their PR number, #95.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From the review: a pathway's figures take about 1.8 s each at two at once, not
1.5; the warm-up figure was a pathway whose figure no sampled event draws, not
an unrelated reaction; R7 says how the outputs were assembled and commits the
one-process run behind the layout figure; the script's header says what made
the runs cold, counts pages with pdf.js and keeps figure times in request
order; cli.md and the folder contract name the files: local refusal and that
the render service's folder is tied to no release.

SC-005, left to us by the user: a single-event PDF without an analysis reads
its figures from the release's figures' folder and keeps event-pdf's times;
one with an analysis draws them on request within 6 s plus 2 s per figure.
serve takes --figures; T022 and T023 follow.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… SC-005 widened

The first run's warm-up asked for a pathway as a reaction and was refused
unchecked. Re-run with a reaction no sampled event draws, its 200 checked, and
each output recording the warm-up and the service's hit count (0): totals
within 1.3 s of the first run, which is kept as events-unwarmed.jsonl. The
6 s + 2 s per figure budget was fitted to one run and two events now exceed it;
it is 8 s + 3 s per figure, with room for run-to-run variation and a token's
slower figure (4.6 s against 3.4 s alone).

Also from the review: SC-005's no-analysis clause covers the events the
figures' folder holds (human); other species and token PDFs draw on request.
A folder of another release, or incomplete, is not used (the service keeps
running, /health says why); the graph's release is read again at most once a
minute. T022 ships drawing everything until T024's checks exist, T023 follows
T046 and has its failure clause back, with "cold" defined. Three merged list
items are split.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…t right, T047 split out

- The two runs differ by up to 2.2 s (R-HSA-68875), not 1.3; by margin the
  tightest event is R-HSA-68881 (5.7 s to spare), by share R-HSA-73857.
- The folder's use in the service is its own task, T047 after T024, so T022
  ships drawing on request and can be ticked; T023 follows T046 and T047, adds a
  non-human reaction and pathway, and measures a plain diagram's overlay now.
- SC-005 covers a human PDF while the folder is missing or stale, and says what
  "cold" is. The service runs the folder's full checks only at start and when
  the fingerprint or release changes. The token's cost against T005 is called
  not like for like; the small pathways' remainder overlaps event-pdf's range;
  routing waits for T023; the runs' wrapper is said to be outside the repo.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drawing on request is several times slower than event-pdf for all but the
largest events (reactions about 2-10 times, small pathways about 2-16), not
"2-5 times". T023 also runs the human sample with the folder taken away, for
SC-005's missing-folder clause.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@adamjohnwright
adamjohnwright merged commit 216b466 into main Nov 2, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant