Scientific provenance

The chain does not stop at the measurement. A result is cited in a figure, a figure goes into an article, and it must be possible to start from the article and find the sampling, the digestion protocol and the exact row of the instrument export. This page describes the three node natures, what they change about the shape of the graph, and the tools the AI assistant receives.

Three node natures

NatureWhat it isBehaviour
AliquotMaterial.Is transformed and consumed.
ResultA measured value.Is no longer transformed, but is cited.
OutputA figure, a table, an article.Cites results.

That distinction governs the shape of the graph. Upstream of a result it is a lineage: material does not duplicate. Downstream it is a network: the same delta appears in three figures, and the same figure cites forty. The two meet exactly at the result node, which rules out any cycle.

The value of a result

{ "grandeur": "d53Cr", "valeur": -0.12, "incertitude": 0.05, "unite": "permil" }

The value is structured, not written as a string. A value written "δ53Cr = -0.12 ± 0.05 ‰" cannot be compared or converted, and has to be parsed again before anything can be done with it.

Output and reference

An output carries a reference: a local identifier, plus a title, a DOI and a year that survive the sharing of the folder. A publication identifier is local to one database; the title and the DOI stay readable for the recipient.

An output is cited and is not manufactured from material. Without that guard, a figure mistakenly attached to a digest would appear in its lineage as though it had come out of it.

There is no single rule

A figure may point straight at the deltas, or be produced from a synthesis workbook. Both practices exist and the model can express both: in the first case these are edges from result nodes, in the second it is a file attached to the figure node. Both go back to the weighing, the second through the workbook's own attachments, which already carry their locators.

A complete example

BCR-482 Digestion Purification MC-ICP-MS measurement δ53Cr Figure 4 Publication

From the article, walking up reaches the raw material and picks up the digestion protocol five steps higher, along with the measurement export and its exact row. From the sample, the symmetric question returns the outputs that cite it, and only those.

The assistant's tools

Three read-only tasks are declared, and are therefore available even in conversation mode.

TaskRole
core.provenance_resoudreTranslates a spoken name, "BCR-723", into concrete nodes, across the known campaigns.
core.provenance_recitReturns the lineage of a node in working order, from sampling towards the result.
core.provenance_comparerReturns what differs between two nodes, and nothing else.
Graph reasoning happens in code, and the model writes the answer. A tool returning the whole descriptor would have three compounding faults: eighty-seven kilobytes fill the context window and push the instruction out by truncation; a model handed a graph to walk proposes plausible rather than exact paths; and an answer built by code carries the real paths, rows and hashes.

What the comparison does

PointBehaviour
AlignmentOn the step, not on the rank. Otherwise a digestion would be compared to a purification as soon as one chain has an extra step.
FilesCompared by path, not by locator: two samples from the same export normally differ by the row.
Identical stepsStated. Without them, a model concludes that everything differs.
Value gapRefused between two different quantities or units. Returned in combined standard deviations, with a compatibility verdict at 2σ.
No differenceThat is an answer, not a failure: it says the cause lies elsewhere.

Every output is bounded, forty nodes, thirty steps, twenty-five files, and truncation is announced. A model receiving a cut list without knowing it concludes that the chain starts there.

Links in answers

Files and nodes cited in an assistant answer become clickable. Only what appears word for word in the result of a tool actually called during that message becomes a link. Scanning the prose for anything that looks like a file name would catch more mentions and produce dead links, which are worth less than no link at all in traceability software.

The rule has a useful side effect that costs nothing: a file invented by the model stays as plain text, next to clickable files. The difference shows without checking anything.

A link is marked by a dotted underline rather than by colour alone. A tool call that errored attests nothing and produces no link; a node whose campaign is unknown is not clickable, a link to the wrong campaign being worse than no link.

What the model is not asked to do

Detecting inconsistencies, for instance between a dilution factor and an injected concentration, is not handed to the model. It is arithmetic: a rule does it, explains its verdict by showing both numbers and where they came from, and returns the same result tomorrow. The cost of a false positive is decisive, since after three wrong alerts on thesis data every alert is ignored, including the right one.

What is missing first is therefore not assistance but the model of quantities: masses, volumes and dilutions with their units. Once those rules are written, the model has its role: explaining an alert in plain language.

Related pages