execution registry.yaml
The execution registry is the factual record for one Job, not an object catalogue. The execution lane creates /data/output/<job-id>/registry.yaml and owns subsequent writes. Its schema version is 1.0, its document source is the fixed official BioLine AI index, and Skill fallback cannot be enabled.
Complete template
This is the approved JSON-compatible YAML template. Keep the field names and empty values; do not insert the other lane's authoring object.
{
"schema_version": "1.0",
"knowledge": {
"source": "https://www.bioline.cloud/ai/commandLineAndFkit/",
"language": "ch",
"document_ids": [],
"retrieved_at": "",
"skill_fallback_allowed": false
},
"workflow": {
"lane": "execution",
"objective": "",
"phase": "initialize",
"status": "active"
},
"execution": {
"bioline": {
"input_path": "",
"project_id": "",
"flow": {"id": "", "version_id": "", "keyword": ""},
"job": {"id": "", "output_dir": ""}
},
"bindings": [],
"defaults_used": [],
"selected_artifacts": [],
"downstream": {
"tool": {"reference": "", "name": "", "version": 1, "summary_sha256": ""},
"pull_ledger": {"preexisting": false, "pre_image_id": null, "post_image_id": null, "pulled_at": ""},
"image_tag": "",
"generated_scripts": [],
"outputs": [],
"logs": []
}
},
"document_gap": {
"detected": false,
"topic": "",
"attempted_document_ids": [],
"missing_information": [],
"blocking_reason": ""
}
}Fields and phases
knowledge records document IDs and retrieval time. workflow records lane, objective, phase, and status. execution.bioline records the real input, project, Flow, and Job identifiers. bindings, defaults_used, and selected_artifacts preserve planning evidence. After finalization, downstream records the exact Tool reference and name/version, summary hash, pre/post pull image identities, derived image tag, generated scripts, outputs, and logs. Tools are discovered on demand by NAME:VERSION; registry/images.yaml is not a runtime allowlist.
After planned, the registry must enter awaiting_plan_confirmation. Without user confirmation it cannot enter submitted; the Job ID returned by creation is written back unchanged. When document_gap.detected is true, the phase is document_gap and blocking_reason is required.
Persistence boundary
An execution registry cannot contain authoring fields. Input, output, and spec paths are absolute execution paths and cannot be under /data/authoring/. Targets use an exact positive integer version, and the local image tag is derived as name.lower():version. Downstream network is fixed to none. The local OpenClaw contract defines the closed schema and template fields.
