{
  "assessment": {
    "all_ok": false,
    "blockers": [],
    "decision": "STOP_STEP_044A2_DB_SCHEMA_INVENTORY_FIX_READONLY",
    "expected_absence": {
      "manual_agent_service_start_used": false,
      "private_material_published": false,
      "vm100_changed": false,
      "vm101_changed": false,
      "vm121_changed": false
    },
    "success_checks": {
      "allocator_schema_insertion_point_identified": true,
      "backend_model_peer_seen": true,
      "backend_model_provisioning_job_seen": true,
      "backend_model_tunnel_ip_seen": true,
      "db_identity_query_ok": true,
      "enabled_peer_count_five": true,
      "jobs_action_column_seen": true,
      "jobs_payload_column_seen": false,
      "jobs_status_column_seen": true,
      "jobs_summary_query_ok": true,
      "peers_enabled_column_seen": true,
      "peers_id_column_seen": true,
      "peers_node_id_column_seen": true,
      "peers_table_seen": true,
      "peers_tunnel_ip_column_seen": true,
      "pending_jobs_zero": true,
      "postgres_container_found": true,
      "provisioning_jobs_table_seen": true,
      "public_columns_query_ok": true,
      "public_report_created": true,
      "public_tables_query_ok": true,
      "safe_counts_query_ok": true,
      "safe_peer_inventory_no_keys_collected": false,
      "subscriptions_table_seen": true,
      "users_table_seen": true,
      "vm121_db_schema_inventory_collected": true
    },
    "warnings": [
      "No existing lease/egress/assignment table or columns found; likely need a new runtime egress lease table."
    ]
  },
  "changes": {
    "manual_agent_service_start_used": "NO",
    "private_material_published": "NO",
    "vm100_changed": "NO",
    "vm101_changed": "NO",
    "vm121_changed": "NO"
  },
  "db_summary": {
    "enabled_peers": 5,
    "lease_columns_raw": "",
    "lease_tables_raw": "",
    "pending_jobs": 0
  },
  "design_findings": {
    "activity_metric": "VM100 inner useful forwarded traffic from wg_paid, preferably transit_vpn-bound, not WireGuard handshake/keepalive",
    "job_application_path": "provisioning_jobs action/status/payload consumed by agent",
    "lease_model_currently_exists": false,
    "recommended_fields": [
      "id",
      "peer_id",
      "tunnel_ip",
      "egress_class",
      "assigned_at",
      "last_activity_at",
      "last_rx_packets",
      "last_tx_packets",
      "last_rx_bytes",
      "last_tx_bytes",
      "state",
      "reason",
      "cooldown_until"
    ],
    "recommended_new_table": "public.egress_leases or public.peer_egress_assignments",
    "source_of_truth_current": "public.peers + public.provisioning_jobs",
    "stable_identity_columns": [
      "peers.id",
      "peers.user_id",
      "peers.subscription_id",
      "peers.node_id",
      "peers.tunnel_ip",
      "peers.enabled"
    ],
    "tunable_constants": {
      "ROUTER_EGRESS_ACTIVE_MIN_BYTES": 16384,
      "ROUTER_EGRESS_ACTIVE_MIN_PACKETS": 10,
      "ROUTER_EGRESS_IDLE_SECONDS": 900,
      "ROUTER_EGRESS_REASSIGN_COOLDOWN_SECONDS": 900,
      "ROUTER_EGRESS_SAMPLE_SECONDS": 120
    }
  },
  "mode": "READONLY_DB_SCHEMA_INVENTORY_REPAIR_FOR_RUNTIME_EGRESS_LEASE_ALLOCATOR",
  "publish": {
    "local_report": "http://127.0.0.1:8099/r/e94a0859747d7b96f29c7fdafc2d0351ba603bb0a7e9e5a4/20260709-122240_step044a2_db_schema_inventory_fix_readonly/",
    "trycf_report": "https://helena-background-beam-harry.trycloudflare.com/r/e94a0859747d7b96f29c7fdafc2d0351ba603bb0a7e9e5a4/20260709-122240_step044a2_db_schema_inventory_fix_readonly/"
  },
  "raw_artifacts": {
    "columns_all": "columns_all.txt",
    "columns_focus": "columns_focus.txt",
    "indexes": "indexes.txt",
    "jobs_summary": "jobs_summary.txt",
    "safe_counts": "safe_counts.txt",
    "safe_peer_inventory_no_keys": "safe_peer_inventory_no_keys.txt",
    "tables": "tables.txt",
    "vm121_db_schema": "vm121_db_schema.json"
  },
  "schema": "router-step-facts-v1",
  "step": "STEP_044A2_DB_SCHEMA_INVENTORY_FIX_READONLY"
}
