{
 "schema": "madoo.example/v1",
 "id": "lab-building-json",
 "title": "Lab — a hotel offer: JSON and text from other steps",
 "summary": "A model's answer about a weekend offer, prose around a JSON block, is read with Parse JSON and checked against a schema. Text Expression writes the headline from its fields; three photos of the hotel become the keyframe map of a teaser with Generate JSON's object shape, checked against madoo.keyframe-map/v1; Compose JSON writes the listing for the booking site: the price stays a number, the title keeps its quotes, the map goes in whole. No AI step, no credits.",
 "credits": "0",
 "workflow": {
  "file": "workflow.json",
  "name": "Lab — a hotel offer: JSON and text from other steps"
 },
 "files": [
  { "file": "source-hotel-terrace.jpg", "placeholder": "__TERRACE__" },
  { "file": "source-hotel-pool.jpg", "placeholder": "__POOL__" },
  { "file": "source-hotel-room.jpg", "placeholder": "__ROOM__" }
 ],
 "guide": "https://testing-docs.madoo.ai/data/building-json/",
 "preview": "diagram.svg",
 "run_inputs": "run-inputs.json"
}
