The clinic opens every connection itself; the centre never calls into a clinic. This page shows how the platform is connected today, using an installation with one centre and three clinics, each on its own network, checked against the code.
As of 1 October 2026 · platform revision 08dc2d9d
The centre is a job desk with a model store. It hands out training jobs, keeps their results and hands out model files. It holds no patient data and can run anywhere, inside the hospital too. If one hospital runs both halves, every connection stays inside its own network.
The connections
between sites, opened by the clinic
network connection within one site
shared files or store, no network
The setup with one centre and, on the right, one of its three clinics. Arrows point away from the side that acts: the one that opens a connection, writes a file or reads it. Answers come back on the same connection. The figure can be scrolled sideways.
What crosses the boundary
Leaves the clinic
Only on connections the clinic opens. The egress gate checks each message against a fixed list of allowed messages and first records it in a chained journal.
the request for the next job
progress: which of the four stages is done
the result: aggregated metrics, calibration, feature importances and the model's coefficients, after the check at the node; the centre checks it again
a failure code
Comes into the clinic
As answers on those connections.
a job: its settings and, if given, a dataset
a cancel flag, in the answer to a progress report
a model file, checked against its pinned SHA-256 checksum
Stays in the clinic
There is no allowed message for any of these.
patient data and the dataset catalogue
the list of datasets
risk estimates for single cases
results for the whole clinic
The four flows
Centre
Clinic
across the site boundary
Training a model
1Centre: Submit a jobin ‘Train a model’
2across the site boundary: Worker picks it upthe first node to ask
3Clinic: Trainer computesno network, one snapshot
4across the site boundary: Progress reportedthrough the egress gate
5Centre: Result checked twiceat the node and the centre
6Centre: Result appearsmetrics and coefficients
Assessing a single case
1Clinic: Enter valuesin ‘Assess risk’
2Clinic: Inference service scoreswith its loaded model
3Clinic: Estimate in the browserand nowhere else
Evaluating the whole clinic
1Clinic: Choose a datasetfrom the node's catalogue
2Clinic: Score every casein the inference service
3Clinic: Totals onlywithout small numbers; they stay in the clinic
Getting a model to a clinic
1Centre: Upload the seed modelto the model registry
2across the site boundary: Model sync downloadsthe file from the centre
3Clinic: Checksum verifiedagainst the pinned value
4Clinic: Ready to scorein the clinic's model registry
Operating the platform
Access: Restrict access to both interfaces through the institution's network.
Jobs: The first node to ask takes a training job. Submit it when the node that should run it is ready.
Model: The result's provenance line names the model that computed it. In this version, ‘Assess risk’ still shows the demo's model list and fields when connected, and says so.
Where the platform runs today
Setup
What runs
Good for
Demo
Both interfaces in the built-in demo mode, without the central service and without a node.
The tutorial, the user guide, demonstrations
Multi-site installation
The figure above: one centre and three clinics, each on its own sealed network.
Delegated learning end to end
Test setup
Everything on one network, with credentials and a test proxy between worker and central service.
Automated browser tests
Operations package
The central service with its database, with credentials.
Running the centre
How to start these setups and set up the centre and a clinic is described on the installation page.