{
  "run_id": "20261107T180211Z-gitguardian-ggmcp",
  "created": "2026-11-07T18:07:02.975510+00:00",
  "note": "Published evidence package of a private lab run, built by analysis/export-package.py. Files listed under 'sanitized' differ from the lab originals as described; their raw SHA-256 values allow a later check against the originals. Files under 'not_published' stay private.",
  "versions": {
    "kernel": "7.0.0-42-generic",
    "virsh_daemon": "Compiled against library: libvirt 12.0.0 Using library: libvirt 12.0.0 Using API: QEMU 12.0.0 Running hypervisor: QEMU 10.2.1 Running against daemon: 12.0.0",
    "base_image": "debian-13-genericcloud-amd64-20261026-2643",
    "mitmproxy": "12.3.1"
  },
  "method_version": "0.1",
  "reach_method": "reach-v0.1",
  "tool": {
    "package": "gg-mcp-server",
    "version": "v0.7.3",
    "commit": "7a75a34bc553a8717c2a119d28f96843ac9d32f6",
    "install": "Installed as the tool user from the pinned source tree: the uv workspace's locked dependencies with their hashes from uv.lock, the workspace packages gg-api-core and gg-mcp-server built from the tree with a hash-pinned hatchling, fetched through the lab proxy."
  },
  "gateway_ruleset_sha256": "746659b749cc2ea5b5db1be7f862aa67b341f6f8f1e5836dd93274a87ff6c625",
  "allowlist": {
    "hosts_run": [
      "target"
    ],
    "hosts_driver": [
      "api.anthropic.com",
      "platform.claude.com"
    ],
    "mode": "names: the lab resolver fills the allow sets when it resolves an allowed name; the proxy checks the name per sender"
  },
  "declared_hosts": [],
  "sensors": {
    "declared": [
      "fs",
      "net",
      "exec",
      "cred",
      "persist",
      "hitl"
    ],
    "built": [
      "fs",
      "net",
      "exec",
      "cred",
      "persist",
      "hitl"
    ],
    "no_evidence": []
  },
  "canaries_seeded": true,
  "dns": {
    "log_present": true,
    "sinkhole": "198.18.0.1"
  },
  "model": {
    "route": "client",
    "client": "claude-code",
    "client_version": "2.1.311",
    "model": "claude-haiku-5-5",
    "scripted_model": null,
    "mcp_server": "gitguardian",
    "mcp_status": "connected",
    "max_turns": 6,
    "budget_cap_usd": 0.5,
    "permission_mode": "dontAsk",
    "cost": {
      "model_route": "client",
      "cost_source": "tool-reported",
      "total_cost_usd": 0.006718130000000001,
      "client_estimate_note": "total_cost_usd ist laut Claude-Code-Doku eine Schätzung des Clients, keine Abrechnung",
      "num_turns": 2,
      "usage": {
        "input_tokens": 4,
        "cache_creation_input_tokens": 31826,
        "cache_read_input_tokens": 31703,
        "output_tokens": 71,
        "output_tokens_details": {
          "thinking_tokens": 0
        },
        "server_tool_use": {
          "web_search_requests": 0,
          "web_fetch_requests": 0
        },
        "service_tier": "standard",
        "cache_creation": {
          "ephemeral_1h_input_tokens": 31826,
          "ephemeral_5m_input_tokens": 0
        },
        "inference_geo": "global",
        "iterations": [],
        "speed": "standard",
        "fallback_credit": null
      },
      "model": "claude-haiku-5-5"
    },
    "tls_decrypted": false,
    "credential_disk": {
      "inventory_before": "raw/cred-inventory-before.csv",
      "inventory_after": "raw/cred-inventory-after.csv"
    }
  },
  "preflight": {
    "mode": "build",
    "failures": 0,
    "host_agent_exception": true,
    "host_agent_note": "a Claude Code session ran on the lab host as the operator's tool; the lab machines cannot open connections to the host"
  },
  "provenance": {
    "golden_images_sha256": {
      "gateway": "1856355a5a2bf6e3080082625526e7b8c54cae90fee2f7548ed53fecd88e2193",
      "driver": "f14881c1cbcb4e762fa9ad0cf605fb978d32074837ae1947ca3f4f967de463dc",
      "runner-min": "277b22bdb43567ff73dcbbee95e4bc7bc2d471b7d4b5407b64b13cb7540462fc",
      "target": "357dd21f57d22547f42a2351554b191cf4ca3ec8733f95e98eae199c6f7a3e2e"
    },
    "source_tree_sha256": "06e6ab7eeae2f3a6b0cb49ab6ba21cc3b37bbd01e2e9d436e7a43e0348b23e5a",
    "lockfile": {
      "used": true,
      "lockfile_sha256": "95823e1b9306a68977888feebaffa692393c6937e30a6b98813f27d23b0281a4",
      "packages_installed": 70,
      "hashes": 650
    }
  },
  "tool_user": "tool (uid 1001), no sudo",
  "files": {
    "blocked.jsonl": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    "cost.json": "a0361ae3b35c37b24461afde0a9fa433d12ccf78846ba2e7940a5f15a0eb5fe4",
    "declared.json": "221b6494b9398b21f4fe0f2018131eec158e65deacc8aec06d50bc2c76068581",
    "dns.jsonl": "5a9d3f9f009d806d27700861080328beb3cdce46e5873e641fa93e1adf19f34f",
    "egress.jsonl": "8218c15b4a32e9ba2650583794eaa03f525a56343fd539ff95cbe3312ad13cea",
    "findings.jsonl": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    "fs-diff.json": "f54e6ba925b8ae925a8446eecd7ce5816d414e4cde8fb1606a9fe91388d2e794",
    "gateway-sets.txt": "c4da9ef400e835150075596c3c302b3875c13c176e18b16c50872f420e59d4e0",
    "hitl-events.jsonl": "571e2748e9ed1609e6da93f382f075a46c5c8baddf66ca742629e96dbf41d632",
    "host-events.jsonl": "d50d1e5d8872eb1ba8f2cf8f4a10ed1284d90b5142a66931f32c7dcdad1dafa9",
    "install-egress.jsonl": "e4d3aa05c1c86750169dfb209c8a9fbc9dd5c15b42000a8628d09065d0977c34",
    "score.json": "769a09e8a18fdead445ec93d5ae30463569d06c3fb668c894dc3844f66a215fb",
    "session.cast": "e9885c887e24706ac2222db2434bc9d44c7995f7aae7d02fa49921307942d20c",
    "session.txt": "ab738f80e998841d4287fc2dd5e7b68cfc4b94b344ccff30f72e0b04d4c7d088",
    "target-access.txt": "cc665947e05de23ad1a46fe150d65e9dea3d52142b3f2c7ac57828b035d0999d",
    "tool-cmd.sh": "2084c491887817a2ca3e61e2b732858537d3256cd70218a8aea28a1cc8510f45"
  },
  "sanitized": {
    "gateway-sets.txt": {
      "from": "sensors/gw-nft.txt",
      "raw_sha256": "5b882542dfc3355288eadf992dc0336ca50ea01655a2f5212659a2273042b1e9",
      "change": "lines 1-11 only: the allow sets run_allow and run_tgt at run time; the rest of the gateway ruleset is not published"
    }
  },
  "not_published": {
    "allowlist-driver.txt": "918f8fb2714050248765622ec1cc07d77eae3416342a6b42d6a1443df0a99cf0",
    "allowlist.txt": "a0ea45890e662e2f4f2825592ca70966415492af243286274be408ca83fb3c86",
    "approver-policy.json": "6e9264f2258636a1403995cef6ff4dad6e92ec4f55ca672431e0bb597da99c82",
    "diff/driver.json": "504794983239b648bed49463c245f73ea7fb7073ec2db2033397a922906e6e6f",
    "diff/gateway.json": "c7f696bf6d7a46fc3ebf2daabba1ec860f01bc94eb73f34e44abdefb2f14bf70",
    "diff/runner.json": "b0e28ea3d27292cba52d7ad03f2aa9b238b60b15aa9a91e474886c5ef63f3026",
    "diff/target.json": "3622ecc24dee1630cecc29bc67299698b1ceeadefc3c7d336aa9475ba7920067",
    "dns-servers.txt": "da79187ecd58ea3e17a7196c53a561e679e041f0dd6df7259cf004e65ae3c5a8",
    "pcap/labctl0.pcap": "b7da0c3701117844042bda592bda75f1ad51c667cb73ced03420a19f3f3bb8d7",
    "pcap/labrun0.pcap": "b30d0865c38c17ceafe35aefb5ebff263554543a098f29d7ceef36bf7434ecf0",
    "pcap/labtgt0.pcap": "c8247bb4775c980d8a67ac7a5ea1902ef9e27ee1552ff1b09507c2597c9962ff",
    "pcap/labwan0.pcap": "ba8bdaa8d925450a665d9f31bcb07f6207976444e3c0ff05fe549a66fb94dd26",
    "preflight.json": "95fb8b967c13682582a1d6854b148175f37ec53b06200c023e7a948941474c46",
    "preflight.log": "32092120d2b2d7fa671bb3a919a277d9a9b280606c6459fcd381ce002a015e09",
    "profile.yaml": "36f3110fec601a65bf133c9839d1266dfd16b3ba857778b615c5d90704e96def",
    "proxy-policy.json": "37954d6c541867a44761e719a456251f7bd302dcef3bdc62864e6787be9c1d01",
    "raw/allowlist-all.txt": "24c40b39890f0684a0a76b506ccb855eefe0cfe20dde70e96bfaf770d8e628fa",
    "raw/canaries.txt": "e3ab231df6cc7fe024207707b56261b091c77be9848b8324d2b9fd54d72d01cb",
    "raw/cred-inventory-after.csv": "dcb82e13af6782f30fc9fbcf056e0083ca991e54703db2893853b2763bb73e06",
    "raw/cred-inventory-before.csv": "dbc062234515649ffab8992c80e73d849d5bf08e4e0e91b00048e06d9210b734",
    "raw/driver.xml": "edcf8a26963a22959c7fe33f3e3f8661beed0cfbea5f27a6f55a356a98dba29a",
    "raw/fs-diff-raw.csv": "8addc155c5ab34be68d78fc28b7c3dd9f80620e331eefbf0bce77b299da20f99",
    "raw/install-lock.json": "a937efd20403dc71801ff5aa5e2da433b0e82e7c277ffd49af561b13e71bac84",
    "raw/install-pip-freeze.txt": "70e949bdbc76842b946984e5f752e8844f156729e975df3e2715febabb82349c",
    "raw/install-source-tree.json": "96df33acb8d9b07764cdea3995d0d17e42a88375bc93ef0ad14dcce142843b7c",
    "raw/mcp_ed25519": "acd313f0f43575d7718443ad782b0abf5c287bf8a274bfefaebe64139d1d1a4a",
    "raw/mcp_ed25519.pub": "59e698d8c54998c096108a38f75b0332f7ae175b23e31ce451ca9d0cead22779",
    "raw/model-drive.log": "c483f1e06d491b0914e83d9febd161f44893d49c5808fb4725ce3a3f83a5dff4",
    "raw/model-in/budget_usd": "d927324996eb46bf56a6c05c066a8d867e7fbe35921ab148ad357630fffcf281",
    "raw/model-in/max_turns": "06e9d52c1720fca412803e3b07c4b228ff113e303f4c7ab94665319d832bbfb7",
    "raw/model-in/mcp.json": "7d8cd3ff0c09ad4eabc63896f111b71dfea4dd3f8725d2c6dcff62e3f1d9b8e4",
    "raw/model-in/model": "baa7db840fd080787203df0c7a2be8b4ee742d136fdb778708840f1a65e53c52",
    "raw/model-in/route": "0c98ae374b72eaf38c61ec07f3b731b50d0b595689a44d1b6750659b47b74421",
    "raw/model-in/task.txt": "501e9c64bd0f312ee0f34b5aed46416e52cb745680cb085dd1807ef04957cff5",
    "raw/model-in/timebox": "f60260e656ad57721144aa337d701695322e53d2973b6ff8b384cd0d331bc382",
    "raw/model/claude-version.txt": "0896bb2b0f0c7741c8ab6df43385b83f8fc18620da007e784d0dba2f4b75580b",
    "raw/model/end": "98607fc8907384287f3a63b9bb13a6e3d5f2dbed62745a5ff5e07e3108bf883a",
    "raw/model/end_epoch": "49813fc4caf9dc00a47d9efac7a191713861d21b5f0ecbcdb6a240f7d503ce05",
    "raw/model/rc": "9a271f2a916b0b6ee6cecb2426f0b3206ef074578be55d9bc94f6f3fe3ab86aa",
    "raw/model/start": "9beafd846b97c2f52b3964c95fed94e63fef4c6b38685dbdb314d81a7634877c",
    "raw/model/start_epoch": "e0ee92ab1f66b52fa35ac0f74ab9ff5376d9ba80fd782817591041659b3b67c5",
    "raw/model/stderr.txt": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    "raw/model/stream.tsjsonl": "9b1dc74df598fd65fc20ea6837bb840a673baa7752f9ae3aa3474b3a5673b7e9",
    "raw/phase-times.txt": "099c56b83b783cb32a65c6f0b2fa75d754a9f64deecb01230a58c32cf53eea05",
    "raw/runner-audit.log": "1746ed63bac130462a1ae799ff61ac7f8ea7f067d023a638832900299f002c5c",
    "raw/runner-tmp-fstype.txt": "f23f0177ae6d4b7017fcaacd265360c0a7aa662f35571247acd86b32f6675ba7",
    "raw/seed/aws-credentials": "e97986ac2a0103fdc060d9139f52b0185b88224a1729c59eab15bbfdfd389dd1",
    "raw/seed/netrc": "c3ff6293e9ae1f8ee195c1f12954acccaef0ffe7e0b864e67b70c3d2a8804a46",
    "raw/seed/npmrc": "507c75a6b9375abcb2e6e075d05088f4276ecedb2c501c16003ec9406db93bef",
    "raw/session.jsonl": "a11eeb92ea0b3b3f820cce2916a8eaa6eaafc86479ca60a3806f95b48f79c60e",
    "raw/tool-status.json": "8372a816aee5bcbd9b6e0811505981ead505fd4042c4ea68384e66f028cac20a",
    "sensors/dns.log": "1d2775469612d92b39c7dbf176d7a01db4fb71475b377a8c702d2e0e85a3b024",
    "sensors/egress.flows": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    "sensors/gw-sets.txt": "48a8fce412603b2b64e894bc5e0054fb2d7de74de6c1e0890345dd7e4bbe4d2c",
    "sensors/install-dns.log": "6ca623a53c47a0dc2a072666372bca8f49c3438d722f7667be35772cebfb07db",
    "sensors/install-fs-diff.json": "14c894ead2bc23c8c8b1b22681ebfb741a07518e57946b699855f6e06b2b248f",
    "target-url.txt": "3bf1d8d9d94e1359311f4c1f38caaa5d97a1be2d87386db843789772f846291e",
    "task.txt": "501e9c64bd0f312ee0f34b5aed46416e52cb745680cb085dd1807ef04957cff5"
  },
  "generated_empty": {
    "files": [
      "findings.jsonl",
      "score.json"
    ],
    "note": "this run produced no such file; written empty (or with the reason) so every artifact named in the observation exists"
  }
}
