{
  "task_id": "ZHCTPROMPT-20260928-SMART-CANTEEN-DUAL-DB-COMPAT-PLAN",
  "phase": "plain-scalar-source-proposal",
  "approval_status": "SOURCE_ONLY_NOT_AUTHORIZED_TO_EXECUTE",
  "actual_execution": {"SQL": 0, "PDO_initialization": 0, "HTTP": 0, "DML": 0, "DDL": 0, "Auth": 0, "workers": 0},
  "marker": "CDXNF11F5",
  "harness_base": "../parallel-store-nutrition-plain-float-weight-20261011/candidate-phase",
  "source_lock": {"application_files": 959, "mapping_sha256": "49b1a564de5a93dcd0385659a3d79f2e92256970b7fd7cc0a1adb8d482ccdd57", "canonical_sha256": "a6c3604ca13eddf6dce5c9d3e7c8ed61e56406164ccbff23971fc9d764f069c5", "plain_helper_sha256": "4365553757a84ecc1fe0a79fe7360a2e5624b0360b350ad1f5b096adbf37f121", "m_logic_sha256": "85c978ac82a22c101798f2af9da0976840e25749b17edd5e820db7b54689a712", "validator_sha256": "22de2940e511560336dfde6e377aaf17a330508b96ed75884be4f744d1e377f7"},
  "target": {
    "B": {"id": 178, "uuid": "B8247519-0EDA-6239-9A8A-FEA2D6C86F4B", "actor_id": 97260, "baseline": "../parallel-store-nutrition-plain-float-weight-20261011/candidate-phase/private/final/B/baseline-final.json", "baseline_sha256": "019de00bc8890900dbf1a701ce15d45bf682833e6bc3328dfadafa70cfdcad83"},
    "C": {"id": 7, "uuid": "FCEECEFB-C32E-4977-8A65-EE2210A42095", "actor_id": 2791, "baseline": "../parallel-store-nutrition-plain-float-weight-20261011/candidate-phase/private/final/C/baseline-final.json", "baseline_sha256": "2a8a1b443aba1efb08758cffcb83aa16a1785ef7eba4db5dae58b15d0fafd86c"}
  },
  "cases": [
    {"label": "plain-scalar-prefix-12349tail", "value": "12.349tail", "php_type": "string", "validator_source": "reject-number", "expected_update_envelope": {"code": 1, "message": "每次服用重量不能为空", "data": []}, "target_DML_attempt_max": 0, "C_weight_shape": "unreachable"},
    {"label": "plain-scalar-overflow-string-1e999", "value": "1e999", "php_type": "string", "validator_source": "numeric-string-accepted", "target_DML_attempt_max": 1, "C_weight_shape": "original-bound-PARAM_INT", "B_storage_or_error": "NOT_TESTED", "C_storage_or_error": "NOT_TESTED"},
    {"label": "plain-scalar-finite-over-cap-35e37", "value": "3.5e38", "php_type": "string", "validator_source": "numeric-string-accepted", "target_DML_attempt_max": 1, "C_weight_shape": "generated-REAL", "C_generated_expression": "CAST(3.4028234663852886e+38 AS REAL)", "capacity": "binary32 FLT_MAX, not FLOAT(8,2) 999999.99", "B_storage_or_error": "NOT_TESTED", "C_storage_or_error": "NOT_TESTED"},
    {"label": "plain-scalar-positive-finish-12347", "value": "12.347", "php_type": "string", "validator_source": "numeric-string-accepted", "target_DML_attempt_max": 1, "C_weight_shape": "generated-REAL", "C_generated_expression": "CAST(12.347000122070312 AS REAL)", "expected_info_weight": 12.347, "purpose": "new legal positive final value; do not replay 76"}
  ],
  "request_expansion": {"method": "POST", "content_type": "application/json", "per_case_order": ["/m/nutrition/update", "/m/nutrition/info"], "parameters": "PHP typed exact current own row fields in SET_fields order, replace only use_weight with case string, uuid first; is_own computed by unchanged original supplier; info only uuid", "JSON_flags": ["JSON_UNESCAPED_UNICODE", "JSON_PRESERVE_ZERO_FRACTION"], "zero_business_retries": true},
  "SET_fields": ["name", "set_uuid", "use_weight", "use_number", "use_weight_unit", "use_number_unit", "use_time", "use_method", "employ", "is_nutrition_station", "supplier", "nutrition_category_uuid", "is_own"],
  "omitted": ["power", "carbohydrate", "protein", "fat", "sodium", "img", "img_path", "source_img_path"],
  "budget_if_separately_approved": {"HTTP_per_side_max": 8, "HTTP_total_max": 16, "UPDATE_attempt_per_side_hard_max": 4, "planned_UPDATE_attempt_per_side_max": 3, "UPDATE_attempt_per_request_max": 1, "validator_rejection_target_DML": 0, "preparation_DML": 0, "other_DML": 0, "DDL": 0, "SDK": 0, "warning_reads_per_side_max": 3, "business_native_execute_cap": {"B": 43, "C": 75}, "readiness_SELECT_per_side": 13, "fetch_initial_SELECT_per_side": 13, "server_observer_SELECT_per_HTTP_max": 28, "final_observer_SELECT_per_side_max": 14, "observer_SELECT_per_side_cap": 264},
  "native_budget_basis": "8 requests max; prior update B5/C9 and info B4/C8 executions; conservative 4*(5+4)+3 warning =39 B and 4*(9+8)+3=71 C, four spare execution slots per lane; observer 13 readiness+13 fetch+8*28+14 final=264. Metadata uses actual original shapes, no retry/additional preflight SQL unless separately approved.",
  "resources": {"ports": "Root must allocate fresh unused pair before execution; no old 18921/22 reuse assumption", "cache_prefix": "Root must allocate new exclusive prefix", "runtime": "fresh byte-only capsule, exact full regular-fileset pinned, no xattrs/AppleDouble extras"},
  "pre_PDO_assertions": ["explicit Root execution approval absent means stop", "exact nonmissing marker CDXNF11F5", "exact lane/config/actor/own UUID and baseline SHA", "whole source and actualfileset equality; no extras", "fresh PHP typed lease preserves 1.0 and bits; no Node JSON rewrite", "all own resource clearance and exclusive ports"],
  "evidence": ["immutable raw client status headers body and raw request before observer", "full original server body/native SQL binds PHP types warnings", "all eleven own rows actor config identity and five-MD native bits", "physical use_weight direct/computed native values metadata bits64 separately", "complete info DTO types key order shape and row-derived environment mapping", "every included-file SHA; no guessed include count"],
  "no_op_policy": "rowCount0 is not automatic failure or success; accept only successful native execution + full exact row unchanged + intended physical value already present + metadata excludes unobserved automatic/default/trigger effects. Unknown column/trigger/auto-update scope stops. A rejected validator is not a DML no-op.",
  "continuation": "record diagnosed failure without replay; only continue reserved legal finish if exact own/protected state and complete native outcome prove bounded single-row action. Unknown write/partial commit stops and Root handles recovery. Successful commit never resent.",
  "not_proven": ["actual scalar HTTP behavior", "all bool/blank/null/zero variants", "negative capacity", "other writers/projections", "historical data", "global P0"]
}
