{
  "identities": {
    "admin": {
      "id": 20,
      "status": "active",
      "roles": [
        {
          "id": 2,
          "name": "admin",
          "label": "管理员"
        }
      ],
      "title": null
    },
    "finance": {
      "id": 19,
      "status": "active",
      "roles": [
        {
          "id": 5,
          "name": "finance",
          "label": "财务"
        }
      ],
      "title": "NDB-QA-payment-6380-20261023"
    },
    "pm": {
      "id": 16,
      "status": "active",
      "roles": [
        {
          "id": 3,
          "name": "pm",
          "label": "项目经理"
        }
      ],
      "title": null
    }
  },
  "finance": [
    {
      "phase": "admin-finance-70",
      "annual": {
        "total_income": 2000,
        "expense": 600,
        "expense_expert": 600,
        "expense_recommend": 0,
        "expense_translation": 0,
        "expense_others": 0,
        "gross_margin": 70,
        "gross_margin_basis": {
          "income_rmb": "2000.0",
          "cost_rmb": "600.0",
          "excluded_task_count": 0,
          "applicable": true
        }
      },
      "month10Income": 2000,
      "month10Cost": 600,
      "month10Hours": 2,
      "runtimeSeriesEqualResponse": true
    },
    {
      "phase": "admin-finance-restored40",
      "annual": {
        "total_income": 2000,
        "expense": 600,
        "expense_expert": 600,
        "expense_recommend": 0,
        "expense_translation": 0,
        "expense_others": 0,
        "gross_margin": 40,
        "gross_margin_basis": {
          "income_rmb": "1000.0",
          "cost_rmb": "600.0",
          "excluded_task_count": 1,
          "applicable": true
        }
      },
      "month10Income": 2000,
      "month10Cost": 600,
      "month10Hours": 2,
      "runtimeSeriesEqualResponse": true
    },
    {
      "phase": "admin-finance-all-excluded",
      "annual": {
        "total_income": 2000,
        "expense": 600,
        "expense_expert": 600,
        "expense_recommend": 0,
        "expense_translation": 0,
        "expense_others": 0,
        "gross_margin": 0,
        "gross_margin_basis": {
          "income_rmb": "0.0",
          "cost_rmb": "0.0",
          "excluded_task_count": 2,
          "applicable": false
        }
      },
      "month10Income": 2000,
      "month10Cost": 600,
      "month10Hours": 2,
      "runtimeSeriesEqualResponse": true
    }
  ],
  "pmSamePeriod": {
    "query": "?user=all&start_at=2026-05-01&end_at=2026-11-01",
    "phases": [
      {
        "basis": {
          "income_rmb": "2106.0",
          "cost_rmb": "600.0",
          "excluded_task_count": 0,
          "applicable": true
        },
        "income": 2106,
        "cost": 600,
        "percentage": 71.51
      },
      {
        "basis": {
          "income_rmb": "1106.0",
          "cost_rmb": "600.0",
          "excluded_task_count": 1,
          "applicable": true
        },
        "income": 2106,
        "cost": 600,
        "percentage": 45.75
      }
    ],
    "screenshotNote": "final screenshot specifically October same PM result; raw differential uses identical May-Nov query"
  },
  "sales": [
    {
      "phase": "70",
      "company15": {
        "company_id": 15,
        "company_name": "QA106-STAGING-20261031-R1 company",
        "income": 2000,
        "cost": 600,
        "gross_margin": 70,
        "gross_margin_basis": {
          "income_rmb": "2000.00",
          "cost_rmb": "600",
          "excluded_task_count": 0,
          "applicable": true
        }
      },
      "runtimeSeriesEqualResponse": true,
      "monthlyOctober": {
        "month": "2026-10",
        "income": 4106,
        "cost": 600,
        "gross_margin": 85.39,
        "gross_margin_basis": {
          "income_rmb": "4106.00",
          "cost_rmb": "600",
          "excluded_task_count": 0,
          "applicable": true
        }
      }
    },
    {
      "phase": "restored40",
      "company15": {
        "company_id": 15,
        "company_name": "QA106-STAGING-20261031-R1 company",
        "income": 2000,
        "cost": 600,
        "gross_margin": 40,
        "gross_margin_basis": {
          "income_rmb": "1000.00",
          "cost_rmb": "600",
          "excluded_task_count": 2,
          "applicable": true
        }
      },
      "runtimeSeriesEqualResponse": true,
      "monthlyOctober": {
        "month": "2026-10",
        "income": 4106,
        "cost": 600,
        "gross_margin": 80.68,
        "gross_margin_basis": {
          "income_rmb": "3106.00",
          "cost_rmb": "600",
          "excluded_task_count": 2,
          "applicable": true
        }
      }
    }
  ],
  "defect": {
    "id": "DEF106-HOME-COUNT-01",
    "expectedExcludedTasks": 1,
    "actualSalesExcludedTasks": 2,
    "financeExcludedTasks": 1,
    "moneyAndRateCorrect": true,
    "owner": "NDB Backend Agent",
    "fixNotAuthorized": true
  },
  "fixtureRestoration": {
    "fourSingleFlagPUTs": 4,
    "costWrites": 0,
    "sameAdminDTOStable": true,
    "finalPMReadFlags": {
      "148": false,
      "149": true
    },
    "roleContextNote": "PM final allowed_payment_transitions=[] vs admin processing/paid is expected capability, not stored cost drift"
  },
  "home": {
    "financeOverdue": 0,
    "financeBilling": 0,
    "pmOwn149Reminder": true,
    "pmReminderCount": 4,
    "pmScopedQueryUser": 16,
    "pmAndFinanceAdminTabsDenied": true,
    "adminAndPMExpert7to30DaysResponse": true
  },
  "customer": {
    "octoberCallHours": 6,
    "company15Hours": 2,
    "novemberData": [],
    "runtimeEqualResponse": true,
    "screenshotMissing": false,
    "companyFilterNotAsserted": false,
    "company15FilteredRows": 1
  },
  "recruitment": {
    "month10": {
      "month": "2026-10",
      "start_at": "2026-10-01 00:00:00",
      "end_at": "2026-10-31 23:59:59",
      "new_candidate_count": 39,
      "first_interview_candidate_count": 4
    },
    "month11": {
      "month": "2026-11",
      "start_at": "2026-11-01 00:00:00",
      "end_at": "2026-11-30 23:59:59",
      "new_candidate_count": 0,
      "first_interview_candidate_count": 0
    },
    "tableValuesAndScreenshotChecked": true
  },
  "limitations": [
    "PA/sales/SU/guest/TL credentials absent",
    "TL nonempty low/loss dataset absent",
    "average price/Seat positive data absent; utilities scope partial, not full Pass"
  ],
  "rawSha256": {
    "phase70-b-include-after.json": "daff06f8ce4b653a56cbc0ba90c39ba29e421e20bc078334e03bec77eba589b9",
    "admin-capture-only-login.json": "842cde0af4088322a2f3a66e3d7a9207bab27bf8c95ffc57503f72f02492f240",
    "admin-finance-restored40.json": "7c92c8cd2b8f1ae364859b9b3388f052399c87eabcd8649855c2b0759f7efe3b",
    "admin-member-october.json": "cf4f315bbe01659aba315ae32cf5c62ab62df045423046965e9b2b9393ee1b87",
    "admin-finance-70-charts.json": "4b0a6a2876f29f2fa36ba774a8e9e977f4af5afd076c6844e908f5a9ffc83305",
    "phase-empty-a-exclude-intent.json": "c8aca10cd2736c54391f202a7e271bea4ec9042bbcca2fa49eb9d44778eaf3df",
    "admin-customer-charts.json": "e8abdb55619c560101d01f94039b89bcd09978587d36ddaabc6fa474e3b60988",
    "admin-pm-70.json": "8a5910f6c923022d763fbdf6506eed03cf56fca7a228d73e1cf0d6b2cf4e2e89",
    "pm-home-loaded.json": "c55363e64701f70d8b51ed1cec06b9465c934837c1f54d2663d97e207dc2f762",
    "admin-login.json": "9d5d7ef39d614e91f3bbaca08fbfc64f293f3268c8809540f292aa5b732264b3",
    "independent-review.json": "387e0e1d3468b7017d74d2ce3d79d5ced5395f1e6022d3112533e14e2ba17af4",
    "admin-member-october-loaded.json": "f0c27f87e06d552342e1a583816da8191bad65ff10694b6495e188f4e2f3cd7f",
    "admin-customer-october.json": "df13ab69706b6c092d25c7af57d9b4112456fc16d93e4fc58747385034a4f9a1",
    "phase70-b-include-intent.json": "7bc0807641c6b366845728886545b644fedd5052e4219d977573bc3f868010d2",
    "pm-home-switches.json": "e12f2f074f0680c12f94d07eb958ecadf95da7d946467a62ccd145f74b6a672e",
    "finance-home.json": "b4d79c9d1aa13732250cee9f59b01157bd354dfd90056ea57d2528294c50c2a8",
    "admin-customer-complete.json": "9fd3ec8e44c4328acc6c5d7b2275b47638aec708f9f345e67b21cd83de0b4442",
    "three-role-browser-boundary.json": "a2672b2539e6dd9a1ee1fbcca9c487e4800fbbc55ed7dd61ec869c731f9629bc",
    "admin-pm-restored40.json": "a171833d2365ff2d1e8778a3bfffac569009845678fc166e30423a11c68f571e",
    "admin-customer-october-runtime.json": "0b3d183afb07de83319b870a5b5e3c9ae9a3c80598b16c89ca7355fd4d6ab06c",
    "admin-utilities-nov-runtime.json": "592603fbc8aaeb58daeb76f7987ab319b32c77af2c0c40d0e6fec15f40ffc9d8",
    "admin-finance-70.json": "61bf1c060c7978e1ba9a6ce95541547d9f255b6de613ec4e46e2b3332c6ff9c1",
    "phase70-b-include-response.json": "fa8b28a4050b9dc7546ecf4495566ac46dbe238a31367af99b8f5cc29ea1caa8",
    "finance-home-loaded.json": "26b085e565dfd1bb81b6b4732d4bb247985e440699d8e8f8fb2279c183b24ebe",
    "phase40-b-exclude-response.json": "fa8b28a4050b9dc7546ecf4495566ac46dbe238a31367af99b8f5cc29ea1caa8",
    "phase40-b-exclude-intent.json": "a69a6dedf152f7b7a03717a52c175d8ea1a04616fa192945a968dc6bc2cbc262",
    "admin-recruitment-complete.json": "e75a48480180cb00d2af872a0bbb0ef88078522e851e5f1d4b91e0b71a13aa66",
    "final-fixture-readback.json": "850310a6f6023a90edcf39ef5ce523bf2139cdb63d19661db4c8101d3bab4383",
    "admin-finance-all-excluded-runtime.json": "4b0a6a2876f29f2fa36ba774a8e9e977f4af5afd076c6844e908f5a9ffc83305",
    "admin-customer-complete-runtime.json": "646ce5ff094b9b192b9d6c7e2282c10a539f53cdae5315268f996ebbb1a504d2",
    "phase-empty-a-exclude-response.json": "fa8b28a4050b9dc7546ecf4495566ac46dbe238a31367af99b8f5cc29ea1caa8",
    "phase-restore-a-include-intent.json": "56fd395a3f9ed39cd35cffada414dda75d4296a6beaeead8d693001d21684d51",
    "phase-empty-a-exclude-after.json": "5ab279c596bcdb8386bc88687517e907fe441edcdf087ea456cc719c7ba7d6a3",
    "admin-home-baseline.json": "ea7e849abe26438dd767458793a37648a3ffc2c58e976d9b2f1eadf1ef06ecdd",
    "admin-customer-runtime.json": "4b0a6a2876f29f2fa36ba774a8e9e977f4af5afd076c6844e908f5a9ffc83305",
    "admin-finance-all-excluded.json": "922212f66a4859043d3495bd70ed3ebce2a4a9fd6d5c72264daebea8485cb20b",
    "admin-finance-restored40-runtime.json": "4b0a6a2876f29f2fa36ba774a8e9e977f4af5afd076c6844e908f5a9ffc83305",
    "admin-finance-baseline-company15.json": "b8850737f84aae1cda965ac6e675c620b1d1a58092737cc697bee9535e6c9a26",
    "admin-pm-final-exact-october.json": "800f4fa725f5a27cb66c738091cf4f81c77e4c472c71dc969f31351bb265f16f",
    "phase-restore-a-include-after.json": "a7f98ad54b3d2b2cd3f04dca15c1ff5ae8de559e22d7148bb81ec61b343c3c7b",
    "admin-finance-final40.json": "aec65adf3487dcb373b83e532da5e52b77d6e3e942f437178c667231f0c24919",
    "finance-admin-direct.json": "b8fd87827eabfbc300dd455ccc3f9b8c96b58e77695384fa27d8381726f9347b",
    "pm-home-baseline.json": "a01e80b40aeda8ec7d53fa8600efad857a8e587bc9574a656905dc23f2892db9",
    "admin-recruitment.json": "9f93c12b156c07e26cbd8046c5c80e4993108358b9325d4206615343977c131d",
    "pm-admin-direct.json": "0fe39dd52dd192e903f618a4dd94ea4b0af1fca670ae629c83b23bb87d4fdd68",
    "admin-sales-restored40-runtime.json": "be99c0e6e94e6f7b3567b0fd5c25cfdba1b81e4a796948cc19faea23d2665d25",
    "admin-sales-70.json": "ff4590f4804a0c6efcbe67e32995e1ad7f928ee4762cea719c875569c8fb9b5a",
    "admin-utilities-november.json": "fc8261bbafbceb1dc3cdad597d9c647e7f0f9b8c95606e8cc4198f5dbb7ed058",
    "admin-charts-november-runtime.json": "592603fbc8aaeb58daeb76f7987ab319b32c77af2c0c40d0e6fec15f40ffc9d8",
    "finance-login.json": "ebfbe6840691eb3f5ad9bfed833596a6dac3f5fa9af302ba1d43d0b3fb20d420",
    "phase40-b-exclude-after.json": "17d2b17a417d6498183661ebe350dae88ab775253f406dadd734f957e0ab7e93",
    "admin-sales-restored40.json": "9540398de79a9c6d4e86ccfda672128902e6adf64fb2c33875d3c401917106a2",
    "admin-home-30day.json": "7f098bb887e40a1f00070271d6ca800aef274edd89b7ee9db22c02aa0de8f285",
    "phase-restore-a-include-response.json": "fa8b28a4050b9dc7546ecf4495566ac46dbe238a31367af99b8f5cc29ea1caa8",
    "fixture-baseline.json": "1f0a7203c91d3b40fd2f76b73ed5a87d45843190dd45266b9db09177fe4ffb1f",
    "admin-sales-70-runtime.json": "2038a9d9f1390764f49f8262bdc914d8bc2f921711fc9879aced252d67eb4635",
    "pm-login.json": "6cae731b39851d03d33f0e443286750a3d909e9714e81d93638d36739674365b"
  },
  "scopeDecision": "existing admin/finance/PM only; remaining identities and TL fixture not tested by explicit user decision"
}
