Repository navigation
Spec 015 T069: BioPAX in the library service - #755
Merged
Merged
Conversation
The service gains BioPAX3Exporter's library, built from main at 64c716a
(PINS.md, pins.spec.ts, whose ARG pattern now allows a digit): GET
/biopax/{stId} answers one event's BioPAX Level 3 with the release's
per-event xml:base, kept per release on disk as SBML's are. SbmlFiles and
SbmlController become ExportFiles and ExportController, one per export,
and the conversions' cap of two is shared by both, so the heap holds at
most two whatever node sends. The pom holds Kotlin at the library's 2.4.21
(Boot 2.7 would bring 1.6.21); the Dockerfile checks the jar's Kotlin and
Paxtools and compares the library's bytes. check.sh adds a BioPAX stage
over BioPAX3Exporter's fixture graph: five events of each kind and both
species, each contained in its species' expected file by that commit's
contained.py, with the per-event base; and 404 and 400.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s they are The service's conversions are capped across both exports (T069), so node's shares keep one export from taking the other's places in node, not at the service; the comment says so. BioPAX's own 503 messages, the service's 503 with Retry-After 30 and an unreachable service, are tested, and the slashed form joins the forms of the id; a changed message is caught. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…hold check.sh chooses, for each kind, the first fixture event its species' expected file holds (the fixture has events beyond those files), and takes a SERVICE_PORT, so it runs beside a deployment's own service. Run here: both stages pass, and against beta's image, with no BioPAX, it fails. Measured on a private copy of release 98's graph: the largest pathways' BioPAX and SBML, four at once, peak at 1.10 GiB within T064's limits; the shared cap queues the second pair past node's 290 s, recorded in T069. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
adamjohnwright
added a commit
that referenced
this pull request
Oct 29, 2026
Spec 015 T069, from #755's review: check.sh's silent stop, old work, a fair cap
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Spec 015 (specs/015-graph-exports), T069. With #754 (T070, merged), node's
.biopaxendpoint now has a service behind it. Nothing is routed until T071.The service:
GET /biopax/{stId}answers one event's BioPAX Level 3, from BioPAX3Exporter's library (mainat64c716a, built from source). It carries the release's per-eventxml:base.SbmlFilesandSbmlControllerbecameExportFilesandExportController, with oneExportFilesper export.The build:
cmps the library jar and checks the jar'skotlin-stdlibandpaxtools-coreversions.pins.spec.tsfollows. Its ARG pattern now allows a digit: as written it couldn't seeBIOPAX3_EXPORTER.check.sh:contained.pyagainst its species' expected file, with the per-event base, plus a 404 and a 400.SERVICE_PORTsetting, so it can run beside a deployment's own service.Checked here:
check.shpassed: SBML's three files valid and identical to expected, and the five BioPAX events contained and whole.Measured on a private copy of release 98's graph, in a container held to the compose limits (1.5 GiB, 1 GiB heap). The BioPAX and SBML of Signal Transduction and Metabolism were all asked at once:
Unit tests:
ExportFilesTest(11) andExportControllerTest(8).Also, from #754's review:
🤖 Generated with Claude Code