{
  "id": "swap",
  "title": "Search-engine build and swap",
  "description": "A release binary built on the build server replaces the one inside the running container. Described from the script; the release path has not run yet.",
  "scope": "Architecture, not live health. Evidence and status belong to inventory records.",
  "nodes": [
    {
      "id": "mac",
      "title": "Mac workstation",
      "kind": "host",
      "inventory_id": "host-mac",
      "status": "observed",
      "evidence": [
        "setup-records",
        "live-inventory"
      ],
      "source_page": "src/content/docs/hosts/mac.md",
      "page": "/hosts/mac/"
    },
    {
      "id": "sn1_1f0ccb",
      "title": "Build server sn1-1f0ccb",
      "kind": "host",
      "inventory_id": "host-sn1-1f0ccb",
      "status": "observed",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/hosts/sn1-1f0ccb.md",
      "page": "/hosts/sn1-1f0ccb/"
    },
    {
      "id": "sn1_1f0ccb.build",
      "title": "Search-engine build",
      "kind": "service",
      "inventory_id": "service-search-engine-build",
      "status": "reported",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/workflows/search-engine-swap.md",
      "page": "/workflows/search-engine-swap/"
    },
    {
      "id": "sn1_1f0ccb.target",
      "title": "Cargo build directory",
      "kind": "resource",
      "inventory_id": "resource-search-engine-target",
      "status": "observed",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/workflows/search-engine-swap.md",
      "page": "/workflows/search-engine-swap/"
    },
    {
      "id": "sn7d_jetnpd",
      "title": "Edge appliance sn7d-jetnpd",
      "kind": "host",
      "inventory_id": "host-sn7d-jetnpd",
      "status": "observed",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/hosts/sn7d-jetnpd.md",
      "page": "/hosts/sn7d-jetnpd/"
    },
    {
      "id": "sn7d_jetnpd.search_engine",
      "title": "search-engine",
      "kind": "service",
      "inventory_id": "service-nvr-search-engine",
      "status": "observed",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/hosts/sn7d-jetnpd.md",
      "page": "/hosts/sn7d-jetnpd/"
    },
    {
      "id": "sn7d_jetnpd.config",
      "title": "Config files",
      "kind": "resource",
      "inventory_id": "resource-nvr-config",
      "status": "observed",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/hosts/sn7d-jetnpd.md",
      "page": "/hosts/sn7d-jetnpd/"
    },
    {
      "id": "sn7d_jetnpd.timescaledb",
      "title": "TimescaleDB",
      "kind": "service",
      "inventory_id": "service-nvr-timescaledb",
      "status": "observed",
      "evidence": [
        "test-bed-discovery",
        "test-bed-runs"
      ],
      "source_page": "src/content/docs/hosts/sn7d-jetnpd.md",
      "page": "/hosts/sn7d-jetnpd/"
    }
  ],
  "edges": [
    {
      "source": "mac",
      "target": "sn1_1f0ccb.build",
      "label": "Build script over SSH",
      "relationships": [
        {
          "source": "mac",
          "target": "sn1_1f0ccb.build",
          "kind": "starts",
          "label": "Build script over SSH"
        }
      ]
    },
    {
      "source": "sn1_1f0ccb.build",
      "target": "sn1_1f0ccb.target",
      "label": "Build cache",
      "relationships": [
        {
          "source": "sn1_1f0ccb.build",
          "target": "sn1_1f0ccb.target",
          "kind": "depends",
          "label": "Build cache"
        }
      ]
    },
    {
      "source": "sn1_1f0ccb.build",
      "target": "sn7d_jetnpd.search_engine",
      "label": "Binary copied into the container (script; not yet run as release)",
      "relationships": [
        {
          "source": "sn1_1f0ccb.build",
          "target": "sn7d_jetnpd.search_engine",
          "kind": "writes",
          "label": "Binary copied into the container (script; not yet run as release)"
        }
      ]
    },
    {
      "source": "sn7d_jetnpd.search_engine",
      "target": "sn7d_jetnpd.config",
      "label": "iot-config.json, ai-config.json",
      "relationships": [
        {
          "source": "sn7d_jetnpd.search_engine",
          "target": "sn7d_jetnpd.config",
          "kind": "reads",
          "label": "iot-config.json, ai-config.json"
        }
      ]
    },
    {
      "source": "sn7d_jetnpd.search_engine",
      "target": "sn7d_jetnpd.timescaledb",
      "label": "Detection rows and fire log",
      "relationships": [
        {
          "source": "sn7d_jetnpd.search_engine",
          "target": "sn7d_jetnpd.timescaledb",
          "kind": "writes",
          "label": "Detection rows and fire log"
        }
      ]
    }
  ]
}
