Ontology-Physiology Lab: five questions

Links to files point to the public repository (branch hackathon/experiment-agent).

Five questions

Synthetic research model. Nothing here is clinically validated, patient-specific or medical advice. Not for diagnosis, treatment selection or patient-specific prediction.

1. What problem does it solve?

It lets a researcher turn a plain-language "what if" about a small cardiovascular model into a documented, repeatable engine run, without hand-editing parameters or trusting an unchecked report.

Evidence: README, Phase 1 model, four-chamber M1 model, agent documentation.

Limits: All parameters are synthetic and exploratory, not fitted to measured data. The Phase 1 baseline is elevated-pressure and is not a healthy reference. The models omit, among other things, reflexes, renal regulation, respiration and pharmacology, and valves are ideal diodes.

2. Why is an ontology needed?

A variable name alone does not say what a number means; the ontology attaches a physical property, an anatomical location and a unit to each quantity, so that mismatches can be caught by machine and the model's choice of parameter is grounded in stated concepts.

Evidence: ontology documentation, ontology tests, ontology source.

Limits: Source evidence verifies identifiers and labels, not that the project's variable mappings or equations are authoritative ontology entailments. There is no reasoner. The validator checks direct variable equivalence, not biological causation.

3. What does Meta Muse Spark actually do?

Muse Spark (muse-spark-1.3, Meta Model API) fills two roles, scope classifier and tool-calling experiment planner; it does not compute any number and it does not write the report.

Evidence: README, "How Meta models are used", LLM client and presets, Muse Spark evaluation table and summary.

Limits: The evaluation has 27 author-written cases (13 in-scope experiments, 14 out-of-scope requests), one run per provider, on commit 5c7d171. Meta, OpenAI gpt-6.1-terra and Anthropic claude-sonnet-5-5 each passed 27/27, so this evaluation does not rank them. Through the agent path, the deterministic rule table (layer 1) stopped all 14 out-of-scope requests for every provider before any agent model call (0 steps, 0 agent tokens), so the LLM classifier's refusal performance was not evaluated through that path. The evaluation harness also calls the classifier on its own for every case: it refused 14/14 out-of-scope and accepted 13/13 in-scope requests for each provider, but these are the same 14 requests the rule table already catches; no case tests a request that evades the rule table. The suite is small and author-designed, not a generalization benchmark. Mapping a hypothesis to parameters still needs researcher review.

4. How are the results verified?

Reported numbers are checked against the engine's own receipts, recorded sessions are re-run in the browser, and the engine is covered by automated tests; this establishes consistency, not physiological truth.

Evidence: verifier, report schema, evaluation results, independent verification, verification protocol, public /lab/ page.

Limits: A passing check means the report agrees with what the engine computed. It does not check that the hypothesis was mapped to the right parameter, or that the biology is right. Periodicity checks are numerical diagnostics, not convergence proofs. The 27-case evaluation is small.

5. How is this different from plain LLM report generation?

In plain generation the model writes both the numbers and the prose; here the model only chooses which runs and metrics to report, the engine computes the numbers, and code writes and verifies every sentence.

Plain LLM reportThis project
NumbersWritten by the modelComputed by the engine, returned as tool receipts
Report sentencesWritten by the modelWritten by code from receipts; free model text is discarded
CheckNone unless a person reads itReceipts compared with the report; exact equality for the summary
Repeating itDepends on the prompt and the modelRecorded sessions re-run in the browser; the engine is deterministic
Scope controlPrompt instructionsRule table, LLM classifier, structured-only output
ProvenanceUsually nonePROV-O record per session
Physiological accuracyNot verifiedNot verified

Evidence: README, "Report schema v2.1", agent documentation, verifier, provenance writer.

Limits: No head-to-head experiment against plain LLM generation was run. The table describes design differences, not a measured accuracy gain. The last row is the point: this design makes a report consistent with the engine, not correct about physiology.

Three kinds of checking, kept separate

Passing the first two checks does not imply the third.