{
  "scope": "sampled business paths only; all coverage gates remain open",
  "method_resolution": [
    {
      "file": "work/2026-09-28-smart-canteen-dm8-poc/http-cron-coverage-matrix.csv",
      "repo": "ai_api",
      "path": "/api/User/personal",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "kind": "http",
        "repo": "ai_api",
        "method": "*",
        "route_or_command": "/api/User/personal",
        "module": "移动个人资料",
        "risk": "unicode-write-and-cross-db",
        "source": "controller-action-source",
        "db_access_review": "observed-B-C-no-staff-real-http",
        "mysql_http_or_command": "tested-fail-fourbyte-silent-corruption",
        "dm_http_or_command": "tested-pass-no-staff-fourbyte",
        "database_readback": "B-question-mark-corruption-C-exact-B-C-independent-own-user-zero",
        "external_stub": "isolated-worker-no-staff-no-queue",
        "evidence": "work_ai_api/2026-09-30-dm8-interface-acceptance/parallel-ai-user-personal-write-20261008/PERSONAL_FOURBYTE_B_FAIL_C_PASS_20261008.md;no-staff-only;full-staff-branch-not-tested"
      },
      "meaning": "Previously unspecified source candidate; only this HTTP method observed. Other verbs not claimed."
    },
    {
      "file": "work_store/apifox/2026-09-30-dm8-interface-acceptance/derived/interface-contract-matrix.csv",
      "repo": "ai_api",
      "path": "/api/User/personal",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "repo": "ai_api",
        "method": "*",
        "path": "/api/User/personal",
        "source": "controller-action-source",
        "delivery_scope": "current-ai-app-page",
        "terminal": "移动端",
        "module": "移动个人资料",
        "role": "synthetic-owned-no-staff-user",
        "risk": "unicode-write-and-cross-db",
        "reachability": "observed-B-C-real-http-no-staff",
        "db_scope": "ai-user-write-no-staff;staff-branch-cross-db-open",
        "request_types": "POST-json",
        "required_params": "form.nickname",
        "baseline_response_codes": "200",
        "success_case": "partial-evidence-no-staff-C-only",
        "auth_failure": "not-tested",
        "permission_isolation": "not-tested",
        "missing_required": "not-tested",
        "invalid_type": "not-tested",
        "boundary_empty_min_max": "not-tested",
        "duplicate_retry": "not-tested",
        "downstream_failure": "not-tested",
        "mysql_input_and_readback": "tested-fail-fourbyte-silent-corruption",
        "dm_input_and_readback": "tested-pass-fourbyte-exact-no-staff",
        "response_parity": "B-C-response-type-match-but-stored-bytes-diverge",
        "applicable_dialect_cases": "D01;D04;D07;D09;D12;D13",
        "performance": "not-assessed",
        "fixture": "one-owned-no-staff-user-per-lane",
        "cleanup": "B-recovered-exact-ID-C-auto-cleaned-both-independent-zero",
        "coverage_gate": "open",
        "evidence": "work_ai_api/2026-09-30-dm8-interface-acceptance/parallel-ai-user-personal-write-20261008/PERSONAL_FOURBYTE_B_FAIL_C_PASS_20261008.md;full-staff-branch-not-tested"
      },
      "meaning": "Previously unspecified source candidate; only this HTTP method observed. Other verbs not claimed."
    }
  ],
  "ownership_resolution": [
    {
      "file": "work/2026-09-28-smart-canteen-dm8-poc/http-cron-coverage-matrix.csv",
      "old_row": {
        "kind": "http",
        "repo": "unreviewed",
        "method": "POST",
        "route_or_command": "/api/user/sync",
        "module": "外部接口",
        "risk": "unclassified",
        "source": "apifox-2026-05-08",
        "db_access_review": "unreviewed",
        "mysql_http_or_command": "not-tested",
        "dm_http_or_command": "not-tested",
        "database_readback": "not-tested",
        "external_stub": "not-tested",
        "evidence": ""
      },
      "observed_repo": "store",
      "observed_method": "POST",
      "evidence": "work_ai_api/2026-10-12-dm8-hk-course-batch/ROOT_VERIFIED_PERSONAL_SYNC_20261012.md",
      "meaning": "Actual source and private HTTP dispatch verified; same path in another repo remains independent."
    },
    {
      "file": "work_store/apifox/2026-09-30-dm8-interface-acceptance/derived/interface-contract-matrix.csv",
      "old_row": {
        "repo": "unreviewed",
        "method": "POST",
        "path": "/api/user/sync",
        "source": "apifox-2026-05-08",
        "delivery_scope": "candidate-unreviewed",
        "terminal": "外部接口",
        "module": "外部接口",
        "role": "third_party",
        "risk": "unclassified",
        "reachability": "unreviewed",
        "db_scope": "unreviewed",
        "request_types": "multipart/form-data",
        "required_params": "unreviewed",
        "baseline_response_codes": "200",
        "success_case": "not-tested",
        "auth_failure": "not-tested",
        "permission_isolation": "not-tested",
        "missing_required": "not-tested",
        "invalid_type": "not-tested",
        "boundary_empty_min_max": "not-tested",
        "duplicate_retry": "not-tested",
        "downstream_failure": "not-tested",
        "mysql_input_and_readback": "not-tested",
        "dm_input_and_readback": "not-tested",
        "response_parity": "not-compared",
        "applicable_dialect_cases": "D01;D04;D07;D09;D12;D13",
        "performance": "not-assessed",
        "fixture": "not-recorded",
        "cleanup": "not-recorded",
        "coverage_gate": "open",
        "evidence": ""
      },
      "observed_repo": "store",
      "observed_method": "POST",
      "evidence": "work_ai_api/2026-10-12-dm8-hk-course-batch/ROOT_VERIFIED_PERSONAL_SYNC_20261012.md",
      "meaning": "Actual source and private HTTP dispatch verified; same path in another repo remains independent."
    }
  ],
  "case_alias_resolution": [],
  "runtime_key_registration": [],
  "files": {
    "work/2026-09-28-smart-canteen-dm8-poc/http-cron-coverage-matrix.csv": {
      "before_sha256": "deee2c4b845d75dd3f2bd3af43731708253ad65d5c9e9e98b0b587b07dbb3eca",
      "after_sha256": "014bbfee5f31a9f77bc15abfaf034549610e3583ecca4230582ffdf12f14c5e0",
      "rows": 2133,
      "matched_targets": 3
    },
    "work_store/apifox/2026-09-30-dm8-interface-acceptance/derived/interface-contract-matrix.csv": {
      "before_sha256": "8c5a3e25c2a5f43e07fd43c7c41e765ca5bcd560ece8e5d9b2e461219f59a3e8",
      "after_sha256": "55f7e6f94b452218bba83de1970faedf6eed4a7188db11781e0272430db9f95c",
      "rows": 2058,
      "matched_targets": 3
    }
  },
  "target_count": 3
}
