{
  "date": "2026-10-28",
  "scope": "M5 浏览器SSO与真实双应用退出本地工程验收",
  "schemaVersion": 26,
  "backendCommit": "e0bc02b4e4dd918ff51ae956e48457b8d75ddae2",
  "frontendCommit": "885dc9e2ba2969c4d4f45f428f6679408917b046",
  "realBrowser": {
    "twoDistinctApplications": true,
    "IdP": "ZITADEL v4.20.0",
    "ASWebDevModeForLoopbackHTTP": true,
    "database": "mysql",
    "realAPIAndVbenNoMocks": true,
    "upstreamAuthentication": "client_secret_basic",
    "idpRunId": "fb69e924b33649389e48fe4b4f60235d",
    "runId": "d13a39ecd0d14e8dbe4f0116e49013af",
    "readback": {
      "browserChecks": {
        "accessRefresh": true,
        "firstLogin": true,
        "reloadRecovery": true,
        "rpReturn": true,
        "rpUnavailableLocalRevoked": true,
        "secondApplicationRejected": true,
        "secondApplicationSSO": true
      },
      "refreshCounts": {
        "/api/admin/v1/auth/sso/refresh": 7
      },
      "revokedAndCleared": 2,
      "sessions": 2,
      "signedLogoutEvents": 2
    }
  },
  "testComposition": "真实Gin handlers/services/GORM/Redis与两个实际Vben；真实IdP成功场景使用测试装配入口，未声称是cmd/api二进制",
  "publishedEntrySmoke": {
    "results": [
      {
        "driver": "mysql",
        "publishedAPISSOEnabled": true,
        "publishedWorkerSSOCleanupStarted": true,
        "actualJSONUnknownProviderRejected": 401002,
        "actualMissingOriginRejected": 403004,
        "readyWithDedicatedSQLAndRedis": true,
        "sigtermExitCodes": [
          0,
          0
        ]
      },
      {
        "driver": "postgres",
        "publishedAPISSOEnabled": true,
        "publishedWorkerSSOCleanupStarted": true,
        "actualJSONUnknownProviderRejected": 401002,
        "actualMissingOriginRejected": 403004,
        "readyWithDedicatedSQLAndRedis": true,
        "sigtermExitCodes": [
          0,
          0
        ]
      }
    ],
    "cleanup": "owned databases/Redis/processes/private material files removed",
    "actualMatureIdPSuccessInPublishedBinary": false
  },
  "frontend": {
    "appTestsPassed": 161,
    "testFiles": 17,
    "typecheck": "passed",
    "productionBuild": "passed"
  },
  "workspaceRaceVet": 23,
  "freshIndependentModules": 23,
  "moduleBoundaries": 24,
  "cleanup": {
    "runId": "d13a39ecd0d14e8dbe4f0116e49013af",
    "ownedDatabaseRedisProcessesRemoved": true,
    "externalClientSecretFilesRemoved": true
  },
  "idpCleanup": {
    "runId": "fb69e924b33649389e48fe4b4f60235d",
    "ownedContainersRemoved": 2,
    "networkRemoved": true,
    "privateCredentialsRemoved": true,
    "failures": []
  },
  "newExternalDependencies": [],
  "limitations": [
    "真实双Web应用场景为显式开发loopback HTTP、client_secret_basic与外部0600秘密文件；不等于生产HTTPS或任意IdP认证",
    "原生真实系统浏览器另见m5-native-sso-progress.json；Linux/Windows桌面未认证",
    "同origin多路径独立应用同时保留不同身份未验证；使用不同origin"
  ],
  "proofImages": [
    "m5-sso-idp-outage.png",
    "m5-sso-rp-return.png",
    "m5-sso-second-app-rejected.png"
  ],
  "logSHA256": {
    "real-report.json": "d0e725e2503822d1a2958eaa358d02cc4b5dd838f8b7c5fd547385d2235290bc",
    "real-browser-event-scope.log": "7af9f433e6c52317f4b327c5f0c05c06724110e537a2a3aab054fb0c1822a16a",
    "published-sso-smoke.json": "79da26620a423cc88d75c8fdc54d73fcd1f38c6acb9a8e8f97e922ecb623032d",
    "root-web-final-tests.log": "4d0d0c636003b716c39a6c5356b88ae8c7cd2d5924fc3eee3a44a1a8156a234f",
    "root-web-final-typecheck.log": "229cafb55da34c69e6822313d887b9e5a9985f9994af30bb51ee09ec32378a7d",
    "root-web-final-build.log": "6b5073e59bc1d6dda3c9487a5045bd61528e7f31d2e0eda1cf8b4712accc87a3",
    "root-workspace-race-vet.log": "d91dfb63e22bc9cc5026fdd0ef41ffdb6e42b6e2e52aa664aa7042359906b158",
    "root-independent.log": "46c356317e71b599dd7530d33f89227f2e121cb8aa166c5f22aea664886ff0e8"
  }
}
