{
  "activation_contract": "preflight validate exact baseline + candidate Caddy/systemd -> backup -> create ops:ops 0700 library -> install source profile/unit/Caddy -> enable ops localhost HTTP service -> bounded localhost readiness proof -> restart Caddy -> SFTP+HTTPS E2E postcheck",
  "baseline_commit": "677394a408ef8f611016434c7d2dd0b53bf25a05",
  "baseline_file_count": 20,
  "baseline_file_sha256": {
    "etc/caddy/Caddyfile": "428532252ec29db89723311beb4d53f0f25082f0acdde3f223cd3aa071767093",
    "etc/router-machine-git-source.conf": "14fccde9c3f62fe098828c1f04a9c5e415114cdaa844974dbab62cd76093d0d4"
  },
  "baseline_tree": "5492ebbe8d65531ce88daee7e6683c4b0859eaca",
  "canonical_zip_required": true,
  "classification": "core",
  "current_latest": "WG_PAID_MGTS_LATEST_20260929-184650.zip",
  "current_latest_sha256": "358be1060ea396ca70e473622abcded9467f869708c39debc0e47defadd61cbb",
  "exact_worker_fixture": "tests/exact-worker.sh",
  "expected_installer_sha256": "06b589dfdf77c1682c5de7b3c7ad2f110eaba664bc30206f339bba43873f5e59",
  "firewall_uci_intended_change": false,
  "functional_stage": "yookassa_review_vm103_sample_library",
  "library": {
    "allowed_remote_ip": [
      "10.253.0.0/16",
      "10.254.0.0/16",
      "10.250.100.0/24",
      "10.250.101.0/24",
      "10.71.100.84/32"
    ],
    "browse": "python3 http.server directory listing behind Caddy reverse_proxy",
    "group": "ops",
    "http_listen": "127.0.0.1:18081",
    "http_service": "secret-studio-sample-library.service",
    "http_service_user": "ops",
    "mode": "0700",
    "owner": "ops",
    "root": "/srv/secret-studio-library",
    "sftp": "existing OpenSSH SFTP via ops",
    "url_path": "/library/"
  },
  "machine_git_change_required": true,
  "mandatory_fixture_count": 5,
  "network_uci_intended_change": false,
  "path_ownership_manifest": "reference/path-ownership.tsv",
  "public_access_routes_intended_change": false,
  "remote_script_transport": "stdin-safe ssh -> sudo -n sh -s -- args; immutable target package via scp",
  "revision": "R03",
  "rollback_contract": "disable/remove library HTTP unit -> restore exact baseline source profile and Caddyfile -> caddy validate/restart; delete only known probe; remove library root only if empty, preserve nonempty user data",
  "runtime_impact": true,
  "same_class_skeleton": "STEP_050M07P28R3_R03_VM103_AWG_REMOTE_ADMIN_ACL",
  "schema": "router-step-release-v1",
  "source_of_truth": "current_latest_vm103_machine_git_plus_P28R3_VM103_Caddy_skeleton_plus_R01_postcheck_and_R02_apply_evidence",
  "step_class": "B",
  "step_id": "STEP_050M07P32D_R03_VM103_SAMPLE_LIBRARY",
  "target_caddy_sha256": "1f066c28afebfc9d384164aa0561aa8b5bd2c9926a19ee1628ab710a59b8fe44",
  "target_environment_matrix": "reference/target-environment.tsv",
  "target_file_sha256": {
    "etc/caddy/Caddyfile": "1f066c28afebfc9d384164aa0561aa8b5bd2c9926a19ee1628ab710a59b8fe44",
    "etc/router-machine-git-source.conf": "67aff2d1d283ba63837284a85b8d797883f3afab197fcdd98b90d34ccea82bfe",
    "etc/systemd/system/secret-studio-sample-library.service": "9738cecc4c45b65fb4d7f14e1d5f086092d3023395aa779afef644e1453e24b8"
  },
  "target_package_path": "payload/vm103-sample-library-target-package.tar.gz",
  "target_package_sha256": "0ce0ec5d19e2eced5234556093bf98a2ac34186211691414ab681871be1726f9",
  "target_tree": "a8a74ab3bbf7399d0356ac41fb3149f975dbbd97",
  "touched_machines": [
    "VM103"
  ],
  "vm130_contract_commit": "fadde79bcc5756d478b8814f94ad16ad48fd25d2",
  "worker_entry": "scripts/worker.sh",
  "workflow_contract_version": 2
}
