Artifacts
culsma run writes staged JSON artifacts into the output directory.
| File | Producer | Meaning |
|---|---|---|
summary.json | CLI summary | Counts and run status. |
ast.json | parser/frontend | Parsed source program. |
ir.json | compiler | Canonical IR. |
validate.json | semantic validator | Semantic diagnostics. |
typecheck.json | typechecker | Type and unit diagnostics. |
plan.json | plan lowering | Executable plan. |
run.json | runtime | Runtime state, events, diagnostics, and user result. |
output.json | CLI run output | Machine-readable returns plus derived report. |
result.json | report projection | Derived lab_report_v1 report summary. |
The exact content of these files is intended for inspection and reproducibility. Source language authoring uses .culs files, not generated IR or plan JSON.
output.json uses culsma_run_output_v1. Its top-level returns field is the protocol return value surface; its report field is the derived lab_report_v1 execution report.
Minimal Run Output
For examples/minimal/public_minimal.culs, the verified run reports:
| Field | Value |
|---|---|
| headline | Experiment completed successfully with no runtime errors. |
| completed steps | 5 |
| mutation steps | 1 |
| final product | Target |
| final product volume | 5.0uL |
| primary component | BUF01 |
| touched containers | Source, Target |
The terminal and output.json return the protocol output separately:
text
return:
Target (tube)
volume: 5 uL
mass: 5 mg
components:
BUF01: 5The result.json report is a derived projection over runtime state and events. It is not a replacement for the source protocol, the protocol return, or the execution plan.
