{
  "baseline_commit": "b9ce78b9bbc51c5f00218b70e76af54ce03c9329",
  "baseline_file_count": 20,
  "baseline_file_sha256": {
    "etc/caddy/Caddyfile": "93314a32be29109b4b18b3b54f28b53c0310fcf7a735fb1b72b414031c46ad04"
  },
  "baseline_tree": "caf7fb668caacc248a52be4febc5cbc4ee26759d",
  "caddy_intended_change": false,
  "canonical_zip_required": true,
  "classification": "core",
  "current_latest": "WG_PAID_MGTS_LATEST_20260924-174530.zip",
  "current_latest_sha256": "ce3ba49ed9a8ab81a30db8f055dd28f0fa1eeabd2113008a98f77b1483bdf0ab",
  "database_schema_intended_change": false,
  "dist_file_count": 7,
  "dist_package_sha256": "e78609540ae8ba43419d096f754d25ed5a2bfee1240d1623ea4c71f68e0b4aa9",
  "exact_worker_fixture": "tests/exact-worker.sh",
  "expected_installer_sha256": "a098127a70726ca509c3f31d1e2467086fbb6d97c012ef9ce2ab5804758ca3ba",
  "expected_target_file_count": 20,
  "expected_target_tree": "b0c8c63dbfe7f4eb1b38389d2703ba9cc386e97d",
  "functional_stage": "p30d_vm103_bulk_invite_frontend_deploy",
  "machine_git_change_required": true,
  "mandatory_fixture_count": 4,
  "node_version": "24.20.0",
  "npm_version": "11.19.0",
  "openapi_canonical_sha256": "997792c985c35c02f9bbe4b45adfa26870e1dfedefec64b501a70b36e7426005",
  "path_ownership_manifest": "reference/path-ownership.tsv",
  "payment_create_during_step": false,
  "provider_write_during_step": false,
  "public_api_ingress_intended_change": false,
  "revision": "R01",
  "revision_note": "R01 deploys accepted P30 bulk-invite frontend from canonical web source 793226b: Admin campaign create/list/revoke + invite origin filters + one-time local QR, and public #campaign= registration; preserves P30B Caddy/public ingress and all unrelated surfaces",
  "rollback_contract": "restore exact pre-step access-web + admin-web from verified VM103 backup; preserve exact post-P30B Caddy SHA and bulk/magic public ingress routes; validate Caddy and ingress health",
  "runtime_impact": true,
  "same_class_skeleton": "STEP_050M07P29E15_R01_VM103_UI_FIXES",
  "same_class_skeleton_sha256": "bd7eeebc8959deb52c49e633420685f9d00c83ea6bae4fab578110474fe11099",
  "schema": "router-step-release-v1",
  "source_of_truth": "current_post_P30B_latest_vm103_machine_git_plus_exact_P29E15_R01_web_deploy_skeleton_plus_exact_reproducible_P30D_web_dist",
  "step_class": "B",
  "step_id": "STEP_050M07P30D_R01_VM103_BULK_INVITE_UI",
  "target_caddy_sha256": "93314a32be29109b4b18b3b54f28b53c0310fcf7a735fb1b72b414031c46ad04",
  "target_environment_matrix": "reference/target-environment.tsv",
  "target_package_path": "payload/web-dist.tar.gz",
  "target_package_sha256": "e78609540ae8ba43419d096f754d25ed5a2bfee1240d1623ea4c71f68e0b4aa9",
  "touched_machines": [
    "VM103"
  ],
  "vm130_contract_commit": "fadde79bcc5756d478b8814f94ad16ad48fd25d2",
  "web_source_commit": "793226b559f5eacb334d50c45c1c8c7598b31e96",
  "web_source_tree": "8b2f65493dff575b289182fa6a1a583b26804859",
  "worker_entry": "scripts/worker.sh",
  "workflow_contract_version": 2,
  "yookassa_provider_mode_intended_change": false
}
