{
  "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/UserMotion/movementMpWxSteps",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "kind": "http",
        "repo": "ai_api",
        "method": "*",
        "route_or_command": "/api/UserMotion/movementMpWxSteps",
        "module": "api-源码候选",
        "risk": "unclassified",
        "source": "controller-action-source",
        "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": "zhctproject/ai_api/app/api/controller/UserMotion.php:23;unverified-default-dispatch"
      },
      "meaning": "Previously unspecified source candidate; only this HTTP method observed. Other verbs not claimed."
    },
    {
      "file": "work/2026-09-28-smart-canteen-dm8-poc/http-cron-coverage-matrix.csv",
      "repo": "ai_api",
      "path": "/api/UserMotion/userWeekSteps",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "kind": "http",
        "repo": "ai_api",
        "method": "*",
        "route_or_command": "/api/UserMotion/userWeekSteps",
        "module": "运动展示",
        "risk": "read",
        "source": "controller-action-source",
        "db_access_review": "reviewed-ai-primary-user-motion",
        "mysql_http_or_command": "tested-pass",
        "dm_http_or_command": "tested-pass",
        "database_readback": "tested-pass-A-B-C-synthetic-nonempty-original-rows-and-exact-cleanup",
        "external_stub": "isolated-http-no-device-upload-or-third-party-outbound",
        "evidence": "zhctproject/ai_api/app/api/controller/UserMotion.php:43;unverified-default-dispatch;work_ai_api/2026-09-30-dm8-interface-acceptance/parallel-ai-sport-batch/SPORT_DISPLAY_ABC_EVIDENCE.md"
      },
      "meaning": "Previously unspecified source candidate; only this HTTP method observed. Other verbs not claimed."
    },
    {
      "file": "work/2026-09-28-smart-canteen-dm8-poc/http-cron-coverage-matrix.csv",
      "repo": "ai_api",
      "path": "/api/UserMotion/userDaySteps",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "kind": "http",
        "repo": "ai_api",
        "method": "*",
        "route_or_command": "/api/UserMotion/userDaySteps",
        "module": "运动展示",
        "risk": "read",
        "source": "controller-action-source",
        "db_access_review": "reviewed-ai-primary-user-motion",
        "mysql_http_or_command": "tested-pass",
        "dm_http_or_command": "tested-pass",
        "database_readback": "tested-pass-A-B-C-synthetic-nonempty-original-rows-and-exact-cleanup",
        "external_stub": "isolated-http-no-device-upload-or-third-party-outbound",
        "evidence": "zhctproject/ai_api/app/api/controller/UserMotion.php:51;unverified-default-dispatch;work_ai_api/2026-09-30-dm8-interface-acceptance/parallel-ai-sport-batch/SPORT_DISPLAY_ABC_EVIDENCE.md"
      },
      "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/UserMotion/movementMpWxSteps",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "repo": "ai_api",
        "method": "*",
        "path": "/api/UserMotion/movementMpWxSteps",
        "source": "controller-action-source",
        "delivery_scope": "candidate-unreviewed",
        "terminal": "移动端",
        "module": "api-源码候选",
        "role": "unknown",
        "risk": "unclassified",
        "reachability": "unreviewed",
        "db_scope": "unreviewed",
        "request_types": "unreviewed",
        "required_params": "unreviewed",
        "baseline_response_codes": "unreviewed",
        "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": "zhctproject/ai_api/app/api/controller/UserMotion.php:23;unverified-default-dispatch"
      },
      "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/UserMotion/userWeekSteps",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "repo": "ai_api",
        "method": "*",
        "path": "/api/UserMotion/userWeekSteps",
        "source": "controller-action-source",
        "delivery_scope": "client-source-referenced",
        "terminal": "移动端",
        "module": "运动展示",
        "role": "synthetic-authenticated-ai-user",
        "risk": "read",
        "reachability": "observed",
        "db_scope": "ai-primary-user-motion",
        "request_types": "POST-real-http-client-shaped-params",
        "required_params": "unreviewed",
        "baseline_response_codes": "unreviewed",
        "success_case": "partial-evidence",
        "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-pass-A-and-B-nonempty-synthetic-motion-or-session-original-rows",
        "dm_input_and_readback": "tested-pass-C-nonempty-synthetic-motion-or-session-original-rows",
        "response_parity": "A-B-C-nonempty-business-and-key-types",
        "applicable_dialect_cases": "D01;D04;D07;D09;D12;D13",
        "performance": "under-ai-app-15s;historical-A-readonly-preflight-mysql2006-unattributed",
        "fixture": "new-CDXPARSPORT-user-staff-two-day-motion-and-three-store-metrics",
        "cleanup": "A-B-C-exact-five-fixture-groups-zero;independent-three-marker-tables-zero",
        "coverage_gate": "open",
        "evidence": "zhctproject/ai_api/app/api/controller/UserMotion.php:43;unverified-default-dispatch;work_ai_api/2026-09-30-dm8-interface-acceptance/parallel-ai-sport-batch/SPORT_DISPLAY_ABC_EVIDENCE.md"
      },
      "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/UserMotion/userDaySteps",
      "old_method": "*",
      "observed_method": "POST",
      "old_row": {
        "repo": "ai_api",
        "method": "*",
        "path": "/api/UserMotion/userDaySteps",
        "source": "controller-action-source",
        "delivery_scope": "client-source-referenced",
        "terminal": "移动端",
        "module": "运动展示",
        "role": "synthetic-authenticated-ai-user",
        "risk": "read",
        "reachability": "observed",
        "db_scope": "ai-primary-user-motion",
        "request_types": "POST-real-http-client-shaped-params",
        "required_params": "unreviewed",
        "baseline_response_codes": "unreviewed",
        "success_case": "partial-evidence",
        "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-pass-A-and-B-nonempty-synthetic-motion-or-session-original-rows",
        "dm_input_and_readback": "tested-pass-C-nonempty-synthetic-motion-or-session-original-rows",
        "response_parity": "A-B-C-nonempty-business-and-key-types",
        "applicable_dialect_cases": "D01;D04;D07;D09;D12;D13",
        "performance": "under-ai-app-15s;historical-A-readonly-preflight-mysql2006-unattributed",
        "fixture": "new-CDXPARSPORT-user-staff-two-day-motion-and-three-store-metrics",
        "cleanup": "A-B-C-exact-five-fixture-groups-zero;independent-three-marker-tables-zero",
        "coverage_gate": "open",
        "evidence": "zhctproject/ai_api/app/api/controller/UserMotion.php:51;unverified-default-dispatch;work_ai_api/2026-09-30-dm8-interface-acceptance/parallel-ai-sport-batch/SPORT_DISPLAY_ABC_EVIDENCE.md"
      },
      "meaning": "Previously unspecified source candidate; only this HTTP method observed. Other verbs not claimed."
    }
  ],
  "ownership_resolution": [],
  "case_alias_resolution": [],
  "runtime_key_registration": [],
  "files": {
    "work/2026-09-28-smart-canteen-dm8-poc/http-cron-coverage-matrix.csv": {
      "before_sha256": "44577527624f2a1e17a83bff9fefef7845dbc0bf4e487767736a848817f9920f",
      "after_sha256": "71a2015636a3a9f1ddb4cd6cf4fd1909bbe0aef06adbe422c9ffbfc4ce4b99aa",
      "rows": 2133,
      "matched_targets": 3
    },
    "work_store/apifox/2026-09-30-dm8-interface-acceptance/derived/interface-contract-matrix.csv": {
      "before_sha256": "5e9a838319422e3acb121c9d0efce3663a3d9710ecea043be24cba2c82742313",
      "after_sha256": "c6a471f4a7a3a7835de844293096840a82b0d545b3dfa354d55e3643714f03a5",
      "rows": 2058,
      "matched_targets": 3
    }
  },
  "target_count": 3
}
