{
  "generated_at": "2026-08-09T16:03:39.180158+00:00",
  "proof": "nginx package, enabled service, active service, TCP/80, HTTP 200, and version before and after reboot",
  "schema_version": 1,
  "summary": {
    "failed": 0,
    "passed": 1,
    "total": 1
  },
  "targets": [
    {
      "after_reboot": {
        "boot_id": "abebb757-47e0-45d0-8474-f6017b65bbbc",
        "exit_code": 0,
        "stderr": "",
        "stdout": "OPENFACTORY_NGINX_PROOF distro_id=proofnginxdebiantrixie20260809r2 version_id=13 package_manager=dpkg http_status=200 boot_id=abebb757-47e0-45d0-8474-f6017b65bbbc nginx_version=nginx/1.26.3",
        "success": true
      },
      "before_reboot": {
        "boot_id": "d244a09e-9f09-4b42-83db-2aef510fff34",
        "exit_code": 0,
        "stderr": "",
        "stdout": "OPENFACTORY_NGINX_PROOF distro_id=proofnginxdebiantrixie20260809r2 version_id=13 package_manager=dpkg http_status=200 boot_id=d244a09e-9f09-4b42-83db-2aef510fff34 nginx_version=nginx/1.26.3",
        "success": true
      },
      "boot_id_changed": true,
      "build": {
        "artifact_filename": "91470573-07c5-4eaf-b527-b7c018ebf259_20260809T1538-amd64.hybrid.iso",
        "certification_status": null,
        "id": "91470573-07c5-4eaf-b527-b7c018ebf259",
        "iso_sha256": "5b1b33254fc07fb72ebd7e53d6c6507248e52b2d3e9e0ed95d7c424292b193c4",
        "iso_size": null,
        "name": "proof-nginx-debian-trixie-20260809-r2",
        "status": "queued"
      },
      "cleanup": {
        "cleaned_networks": 0,
        "cleaned_runs": 1,
        "cleaned_vms": 1,
        "errors": null,
        "success": true
      },
      "distribution": "debian-trixie",
      "initial_boot_test": {
        "assertions": [
          {
            "actual": "Exit code: 0",
            "description": "System booted successfully",
            "expected": "exit code 0",
            "status": "passed",
            "test_name": "boot",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "Package manager works",
            "expected": "exit code 0",
            "status": "passed",
            "test_name": "packages",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "Can reach internet over HTTPS",
            "expected": "exit code 0",
            "status": "passed",
            "test_name": "network",
            "type": "command_succeeds"
          },
          {
            "actual": "Package nginx is installed",
            "description": "nginx is installed",
            "expected": "package installed",
            "status": "passed",
            "type": "package_installed"
          },
          {
            "actual": "enabled",
            "description": "nginx is enabled for future boots",
            "expected": "enabled",
            "status": "passed",
            "type": "service_enabled"
          },
          {
            "actual": "active",
            "description": "nginx is active on the first boot",
            "expected": "active",
            "status": "passed",
            "type": "service_running"
          },
          {
            "actual": "tcp   LISTEN 0      511          0.0.0.0:80        0.0.0.0:*   \ntcp   LISTEN 0      511             [::]:80           [::]:*",
            "description": "nginx listens on TCP port 80",
            "expected": "port 80/tcp listening",
            "status": "passed",
            "type": "port_listening"
          },
          {
            "actual": 200,
            "description": "nginx returns HTTP 200 locally",
            "expected": 200,
            "status": "passed",
            "type": "http_responds"
          },
          {
            "actual": "nginx version: nginx/1.26.3",
            "description": "nginx reports its installed version",
            "expected": "output matches 'nginx version: nginx/[0-9]+'",
            "status": "passed",
            "type": "command_output"
          },
          {
            "actual": "Path exists: /etc/openfactory/branding.json",
            "description": "Branding manifest is installed",
            "expected": "path exists",
            "status": "passed",
            "type": "file_exists"
          },
          {
            "actual": "Exit code: 0",
            "description": "Branded identity surfaces agree with the recipe",
            "expected": "exit code 0",
            "status": "passed",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "Debian Trixie systemd and apt/dpkg runtime are present",
            "expected": "exit code 0",
            "status": "passed",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "NetworkManager and its Debian runtime package set are installed",
            "expected": "exit code 0",
            "status": "passed",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "NetworkManager is enabled with network-online readiness",
            "expected": "exit code 0",
            "status": "passed",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "The default wired DHCP keyfile is private and autoconnecting",
            "expected": "exit code 0",
            "status": "passed",
            "type": "command_succeeds"
          },
          {
            "actual": "Exit code: 0",
            "description": "NetworkManager owns devices and live-config networking is suppressed",
            "expected": "exit code 0",
            "status": "passed",
            "type": "command_succeeds"
          },
          {
            "actual": "Pattern found in /etc/os-release",
            "description": "Requested OS branding is installed",
            "expected": "pattern 'ProofNginxDebianTrixie20260809R2' in file",
            "status": "passed",
            "type": "file_contains"
          },
          {
            "actual": "uid=1000(debian) gid=1000(debian) groups=1000(debian),27(sudo)",
            "description": "Requested user debian exists",
            "expected": "user debian exists",
            "status": "passed",
            "type": "user_exists"
          },
          {
            "actual": "Package nginx is installed",
            "description": "Feature nginx package nginx is installed",
            "expected": "package installed",
            "status": "passed",
            "type": "package_installed"
          },
          {
            "actual": "Package nginx-extras is installed",
            "description": "Feature nginx package nginx-extras is installed",
            "expected": "package installed",
            "status": "passed",
            "type": "package_installed"
          },
          {
            "actual": "Package nginx is installed",
            "description": "Feature nginx package nginx is installed",
            "expected": "package installed",
            "status": "passed",
            "type": "package_installed"
          },
          {
            "actual": "Package nginx-extras is installed",
            "description": "Feature nginx package nginx-extras is installed",
            "expected": "package installed",
            "status": "passed",
            "type": "package_installed"
          },
          {
            "actual": "Package curl is installed",
            "description": "Requested package curl is installed",
            "expected": "package installed",
            "status": "passed",
            "type": "package_installed"
          }
        ],
        "completed_at": "2026-08-09T15:52:57.521665",
        "failed_assertions": 0,
        "passed_assertions": 23,
        "run_id": "0455e1e7-73f6-4e54-bc71-bc94a7f3c582",
        "skipped_assertions": 0,
        "started_at": "2026-08-09T15:45:21.232611",
        "status": "passed",
        "total_assertions": 23
      },
      "reboot": {
        "message": "Retained VM reboot requested",
        "success": true
      },
      "recipe": {
        "base_image": "debian-trixie",
        "features": [
          "headless",
          "nginx"
        ],
        "path": "recipes/debian-trixie.json",
        "sha256": "bb5d4fff473852244642a4a1929af3a144d8686f98d76b23c876ad25d7c85f93"
      },
      "result": "passed"
    }
  ]
}
