{
  "id": "appliance",
  "title": "Search-engine task",
  "description": "Shared build cache; independent executable, runtime services and test services.",
  "scope": "Architecture, not live health. Evidence and status belong to inventory records.",
  "nodes": [
    {
      "id": "shipyard.appliance_task",
      "title": "Search-engine task",
      "kind": "workspace",
      "inventory_id": "workspace-appliance",
      "status": "observed",
      "evidence": [
        "setup-records",
        "live-inventory"
      ],
      "source_page": "src/content/docs/workflows/appliance.md",
      "page": "/workflows/appliance/"
    },
    {
      "id": "shipyard.appliance_task.lifecycle",
      "title": "Build and task lifecycle",
      "kind": "service",
      "inventory_id": "service-appliance-lifecycle",
      "status": "observed",
      "evidence": [
        "setup-records"
      ],
      "source_page": "src/content/docs/workflows/appliance.md",
      "page": "/workflows/appliance/"
    },
    {
      "id": "shipyard.appliance_task.search",
      "title": "Search engine",
      "kind": "service",
      "inventory_id": "service-search",
      "status": "observed",
      "evidence": [
        "setup-records",
        "live-inventory"
      ],
      "source_page": "src/content/docs/workflows/appliance.md",
      "page": "/workflows/appliance/"
    },
    {
      "id": "shipyard.cargo",
      "title": "Shared Cargo cache",
      "kind": "resource",
      "inventory_id": "resource-cargo-cache",
      "status": "observed",
      "evidence": [
        "setup-records",
        "live-inventory"
      ],
      "source_page": "src/content/docs/workflows/appliance.md",
      "page": "/workflows/appliance/"
    },
    {
      "id": "shipyard.appliance_task.dependencies",
      "title": "Separate runtime and test stacks",
      "kind": "service",
      "inventory_id": "service-search-dependencies",
      "status": "observed",
      "evidence": [
        "setup-records",
        "live-inventory"
      ],
      "source_page": "src/content/docs/workflows/appliance.md",
      "page": "/workflows/appliance/"
    }
  ],
  "edges": [
    {
      "source": "shipyard.appliance_task.lifecycle",
      "target": "shipyard.appliance_task.search",
      "label": "Build and replace executable",
      "relationships": [
        {
          "source": "shipyard.appliance_task.lifecycle",
          "target": "shipyard.appliance_task.search",
          "kind": "starts",
          "label": "Build and replace executable"
        }
      ]
    },
    {
      "source": "shipyard.appliance_task.lifecycle",
      "target": "shipyard.appliance_task.dependencies",
      "label": "Manage separate stacks",
      "relationships": [
        {
          "source": "shipyard.appliance_task.lifecycle",
          "target": "shipyard.appliance_task.dependencies",
          "kind": "starts",
          "label": "Manage separate stacks"
        }
      ]
    },
    {
      "source": "shipyard.appliance_task.search",
      "target": "shipyard.appliance_task.dependencies",
      "label": "Task-local connections",
      "relationships": [
        {
          "source": "shipyard.appliance_task.search",
          "target": "shipyard.appliance_task.dependencies",
          "kind": "depends",
          "label": "Task-local connections"
        }
      ]
    },
    {
      "source": "shipyard.appliance_task.lifecycle",
      "target": "shipyard.cargo",
      "label": "Serialized build cache",
      "relationships": [
        {
          "source": "shipyard.appliance_task.lifecycle",
          "target": "shipyard.cargo",
          "kind": "depends",
          "label": "Serialized build cache"
        }
      ]
    }
  ]
}
