{
  "measuredAt": "2026-10-16T08:21:43.543770+00:00",
  "scope": "Offline Python service function only; fixture provider, no HTTP server or exchange latency",
  "sourceCommit": "915fd9232efbea6ac97f90f2ff61c90bee41c1fd",
  "sourceCheck": {
    "expectedCommit": "915fd9232efbea6ac97f90f2ff61c90bee41c1fd",
    "cleanBackend": true,
    "remoteVerification": {
      "repository": "https://github.com/rlatkd/up-quant.git",
      "ref": "refs/heads/main",
      "head": "915fd9232efbea6ac97f90f2ff61c90bee41c1fd",
      "checkedAt": "2026-10-16T08:21:41.310045+00:00"
    }
  },
  "sourceHashes": {
    "backend/app/core/cache.py": "7aba19103a3b804ddf55b7844c8377f20082b5e17451cdc2f03c137bd7a748ae",
    "backend/app/services/candle_service.py": "e8e9342fade1946922a521448416d6927196169ea3a8204594463b78ab1b1ea5",
    "backend/app/services/analysis_service.py": "3ee0b9b9a6aac04fce6d91cf06cd6f67b469beb08cb8d04a36f45d569aa3e209"
  },
  "dependencies": {
    "pydantic": "2.13.4",
    "pydantic-settings": "2.14.0",
    "httpx": "0.28.1"
  },
  "hashSeed": "0",
  "environment": {
    "os": "Darwin",
    "osRelease": "24.6.0",
    "architecture": "arm64",
    "python": "3.13.3"
  },
  "conditions": {
    "markets": 260,
    "candlesPerMarket": 200,
    "correlationWindow": 60,
    "concurrency": 1,
    "network": "disabled",
    "coldState": "cache cleared before each sample",
    "warmState": "reuse candle cache after final cold sample",
    "fixedFormula": "100 + marketIndex + day * 0.02 + sin(day * 0.17 + marketIndex * 0.1)"
  },
  "cold": {
    "samples": 10,
    "p50Ms": 112.222,
    "p95Ms": 139.302,
    "rawMs": [
      135.524,
      99.015,
      114.533,
      108.147,
      105.935,
      125.209,
      94.805,
      126.646,
      139.302,
      109.911
    ]
  },
  "warm": {
    "samples": 100,
    "p50Ms": 5.501,
    "p95Ms": 6.073,
    "rawMs": [
      5.955,
      5.764,
      5.827,
      5.412,
      5.709,
      5.435,
      5.51,
      5.54,
      5.431,
      5.311,
      5.48,
      5.279,
      5.307,
      5.915,
      5.677,
      5.982,
      5.922,
      5.431,
      5.334,
      5.324,
      5.298,
      5.236,
      5.618,
      6.073,
      6.007,
      6.3,
      5.675,
      5.508,
      5.587,
      5.365,
      5.523,
      5.604,
      5.46,
      5.309,
      5.462,
      5.266,
      5.439,
      5.307,
      5.627,
      5.332,
      5.428,
      5.277,
      5.394,
      5.48,
      5.53,
      6.001,
      6.73,
      5.931,
      5.513,
      5.819,
      5.456,
      5.601,
      6.113,
      5.859,
      5.843,
      5.506,
      5.626,
      5.573,
      5.476,
      5.377,
      5.994,
      5.67,
      5.385,
      5.432,
      5.343,
      5.635,
      5.672,
      5.454,
      5.484,
      6.248,
      5.52,
      5.291,
      5.351,
      5.321,
      5.335,
      5.565,
      5.97,
      5.471,
      5.765,
      5.42,
      5.324,
      5.481,
      5.589,
      5.409,
      5.396,
      5.363,
      5.334,
      5.496,
      5.527,
      5.362,
      5.33,
      5.283,
      5.243,
      5.449,
      6.635,
      5.641,
      5.53,
      6.01,
      5.557,
      6.066
    ]
  },
  "providerCalls": {
    "coldTotal": 2600,
    "warmTotal": 0
  },
  "resultConsistency": true,
  "limitations": "Does not reproduce the historical 1.8s to 5ms claim or measure production HTTP latency. Fixture data is synthetic and provider has no network delay."
}
