{
  "generatedAt": "2026-07-16T11:54:59.189Z",
  "baseUrl": "http://127.0.0.1:8000",
  "headed": false,
  "hiddenMs": 125000,
  "observeMs": 30000,
  "executionMode": "Chromium headless (Playwright)",
  "manualSignOffRequired": [
    "Headed Chrome DevTools HAR with Preserve log",
    "Android Chrome physical device",
    "chrome://discards tab discard",
    "Optional Edge desktop"
  ],
  "tests": {
    "test1_valid_session": {
      "processed_payments": {
        "finalUrl": "http://127.0.0.1:8000/loan/payments/processed",
        "statusLog": [
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T11:59:12.578Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:02:32.468Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:05:28.126Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:08:26.976Z"
          },
          {
            "status": 401,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:11:17.793Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:14:30.354Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:17:23.392Z"
          }
        ],
        "after": {
          "href": "http://127.0.0.1:8000/loan/payments/processed",
          "hasLoanAppShell": true,
          "stylesheetCount": 4,
          "topLevelFrame": false,
          "loginForm": false,
          "sessionResume": {
            "hiddenAt": null,
            "lastValidatedAt": 1784203152570,
            "validationPending": false,
            "redirectPending": false,
            "lastNetworkFailureAt": null,
            "online": true,
            "hasAuthenticatedShell": true
          },
          "workspaceIdle": {
            "href": "/loan/payments/processed",
            "title": "Jirani Hodari Ltd",
            "hasLoanAppShell": true,
            "hasSuperadminShell": false,
            "isOrphanFragment": false,
            "stylesheetCount": 7,
            "scriptCount": 8,
            "turboFrameCount": 1,
            "bodyChildCount": 22,
            "normalizedShellUrl": "/loan/payments/processed",
            "documentRecoveryPending": false,
            "frameBootstrapPending": false
          },
          "resumeEvents": [
            {
              "at": "2026-07-16T11:57:02.699Z",
              "type": "session_resume_guard_bound"
            },
            {
              "at": "2026-07-16T11:57:02.904Z",
              "type": "document_visible",
              "reason": "pageshow",
              "resumedAt": 1784203022904,
              "hiddenDuration": 0
            },
            {
              "at": "2026-07-16T11:57:06.011Z",
              "type": "document_hidden",
              "hiddenAt": 1784203026011
            },
            {
              "at": "2026-07-16T11:59:11.021Z",
              "type": "document_visible",
              "reason": "visibilitychange",
              "resumedAt": 1784203151021,
              "hiddenDuration": 125010
            },
            {
              "at": "2026-07-16T11:59:11.022Z",
              "type": "validation_started",
              "reason": "visibilitychange",
              "validationURL": "http://127.0.0.1:8000/session/status",
              "hiddenDuration": null
            },
            {
              "at": "2026-07-16T11:59:12.570Z",
              "type": "validation_status",
              "reason": "visibilitychange",
              "validationStatus": 204
            }
          ]
        },
        "screenshot": "storage\\cert-lifecycle-cert03-screenshots\\t1_processed_payments.png",
        "pass": true
      },
      "clients_register": {
        "finalUrl": "http://127.0.0.1:8000/loan/clients",
        "statusLog": [
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:02:32.468Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:05:28.126Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:08:26.976Z"
          },
          {
            "status": 401,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:11:17.793Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:14:30.354Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:17:23.392Z"
          }
        ],
        "after": {
          "href": "http://127.0.0.1:8000/loan/clients",
          "hasLoanAppShell": true,
          "stylesheetCount": 4,
          "topLevelFrame": false,
          "loginForm": false,
          "sessionResume": {
            "hiddenAt": null,
            "lastValidatedAt": 1784203352472,
            "validationPending": false,
            "redirectPending": false,
            "lastNetworkFailureAt": null,
            "online": true,
            "hasAuthenticatedShell": true
          },
          "workspaceIdle": {
            "href": "/loan/clients",
            "title": "Jirani Hodari Ltd",
            "hasLoanAppShell": true,
            "hasSuperadminShell": false,
            "isOrphanFragment": false,
            "stylesheetCount": 7,
            "scriptCount": 8,
            "turboFrameCount": 1,
            "bodyChildCount": 22,
            "normalizedShellUrl": "/loan/clients",
            "documentRecoveryPending": false,
            "frameBootstrapPending": false
          },
          "resumeEvents": [
            {
              "at": "2026-07-16T12:00:00.429Z",
              "type": "session_resume_guard_bound"
            },
            {
              "at": "2026-07-16T12:00:00.726Z",
              "type": "document_visible",
              "reason": "pageshow",
              "resumedAt": 1784203200726,
              "hiddenDuration": 0
            },
            {
              "at": "2026-07-16T12:00:03.639Z",
              "type": "document_hidden",
              "hiddenAt": 1784203203639
            },
            {
              "at": "2026-07-16T12:02:08.649Z",
              "type": "document_visible",
              "reason": "visibilitychange",
              "resumedAt": 1784203328649,
              "hiddenDuration": 125010
            },
            {
              "at": "2026-07-16T12:02:08.650Z",
              "type": "validation_started",
              "reason": "visibilitychange",
              "validationURL": "http://127.0.0.1:8000/session/status",
              "hiddenDuration": null
            },
            {
              "at": "2026-07-16T12:02:32.472Z",
              "type": "validation_status",
              "reason": "visibilitychange",
              "validationStatus": 204
            }
          ]
        },
        "screenshot": "storage\\cert-lifecycle-cert03-screenshots\\t1_clients_register.png",
        "pass": true
      },
      "loans_register": {
        "finalUrl": "http://127.0.0.1:8000/loan/book/loans",
        "statusLog": [
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:05:28.126Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:08:26.976Z"
          },
          {
            "status": 401,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:11:17.793Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:14:30.354Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:17:23.392Z"
          }
        ],
        "after": {
          "href": "http://127.0.0.1:8000/loan/book/loans",
          "hasLoanAppShell": true,
          "stylesheetCount": 4,
          "topLevelFrame": false,
          "loginForm": false,
          "sessionResume": {
            "hiddenAt": null,
            "lastValidatedAt": 1784203528131,
            "validationPending": false,
            "redirectPending": false,
            "lastNetworkFailureAt": null,
            "online": true,
            "hasAuthenticatedShell": true
          },
          "workspaceIdle": {
            "href": "/loan/book/loans",
            "title": "Jirani Hodari Ltd",
            "hasLoanAppShell": true,
            "hasSuperadminShell": false,
            "isOrphanFragment": false,
            "stylesheetCount": 7,
            "scriptCount": 8,
            "turboFrameCount": 1,
            "bodyChildCount": 22,
            "normalizedShellUrl": "/loan/book/loans",
            "documentRecoveryPending": false,
            "frameBootstrapPending": false
          },
          "resumeEvents": [
            {
              "at": "2026-07-16T12:02:59.127Z",
              "type": "session_resume_guard_bound"
            },
            {
              "at": "2026-07-16T12:02:59.250Z",
              "type": "document_visible",
              "reason": "pageshow",
              "resumedAt": 1784203379250,
              "hiddenDuration": 0
            },
            {
              "at": "2026-07-16T12:03:02.203Z",
              "type": "document_hidden",
              "hiddenAt": 1784203382203
            },
            {
              "at": "2026-07-16T12:05:07.207Z",
              "type": "document_visible",
              "reason": "visibilitychange",
              "resumedAt": 1784203507207,
              "hiddenDuration": 125004
            },
            {
              "at": "2026-07-16T12:05:07.207Z",
              "type": "validation_started",
              "reason": "visibilitychange",
              "validationURL": "http://127.0.0.1:8000/session/status",
              "hiddenDuration": null
            },
            {
              "at": "2026-07-16T12:05:28.131Z",
              "type": "validation_status",
              "reason": "visibilitychange",
              "validationStatus": 204
            }
          ]
        },
        "screenshot": "storage\\cert-lifecycle-cert03-screenshots\\t1_loans_register.png",
        "pass": true
      },
      "accounting_journal": {
        "finalUrl": "http://127.0.0.1:8000/loan/accounting/journal-entries?embedded=1",
        "statusLog": [
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:08:26.976Z"
          },
          {
            "status": 401,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:11:17.793Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:14:30.354Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:17:23.392Z"
          }
        ],
        "after": {
          "href": "http://127.0.0.1:8000/loan/accounting/journal-entries?embedded=1",
          "hasLoanAppShell": true,
          "stylesheetCount": 4,
          "topLevelFrame": false,
          "loginForm": false,
          "sessionResume": {
            "hiddenAt": null,
            "lastValidatedAt": 1784203706981,
            "validationPending": false,
            "redirectPending": false,
            "lastNetworkFailureAt": null,
            "online": true,
            "hasAuthenticatedShell": true
          },
          "workspaceIdle": {
            "href": "/loan/accounting/journal-entries?embedded=1",
            "title": "Jirani Hodari Ltd",
            "hasLoanAppShell": true,
            "hasSuperadminShell": false,
            "isOrphanFragment": false,
            "stylesheetCount": 7,
            "scriptCount": 9,
            "turboFrameCount": 2,
            "bodyChildCount": 24,
            "normalizedShellUrl": "/loan/accounting/journal-entries",
            "documentRecoveryPending": false,
            "frameBootstrapPending": false
          },
          "resumeEvents": [
            {
              "at": "2026-07-16T12:05:54.349Z",
              "type": "session_resume_guard_bound"
            },
            {
              "at": "2026-07-16T12:05:54.550Z",
              "type": "document_visible",
              "reason": "pageshow",
              "resumedAt": 1784203554550,
              "hiddenDuration": 0
            },
            {
              "at": "2026-07-16T12:05:57.440Z",
              "type": "document_hidden",
              "hiddenAt": 1784203557440
            },
            {
              "at": "2026-07-16T12:08:02.445Z",
              "type": "document_visible",
              "reason": "visibilitychange",
              "resumedAt": 1784203682445,
              "hiddenDuration": 125005
            },
            {
              "at": "2026-07-16T12:08:02.445Z",
              "type": "validation_started",
              "reason": "visibilitychange",
              "validationURL": "http://127.0.0.1:8000/session/status",
              "hiddenDuration": null
            },
            {
              "at": "2026-07-16T12:08:26.981Z",
              "type": "validation_status",
              "reason": "visibilitychange",
              "validationStatus": 204
            }
          ]
        },
        "screenshot": "storage\\cert-lifecycle-cert03-screenshots\\t1_accounting_journal.png",
        "pass": true
      }
    },
    "test2_expired_session": {
      "processed_payments": {
        "finalUrl": "http://127.0.0.1:8000/login?redirect=http%3A%2F%2F127.0.0.1%3A8000%2Floan%2Fpayments%2Fprocessed",
        "statusLog": [
          {
            "status": 401,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:11:17.793Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:14:30.354Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:17:23.392Z"
          }
        ],
        "after": {
          "href": "http://127.0.0.1:8000/login?redirect=http%3A%2F%2F127.0.0.1%3A8000%2Floan%2Fpayments%2Fprocessed",
          "hasLoanAppShell": false,
          "stylesheetCount": 4,
          "topLevelFrame": false,
          "loginForm": true,
          "sessionResume": null,
          "workspaceIdle": null,
          "resumeEvents": []
        },
        "screenshot": "storage\\cert-lifecycle-cert03-screenshots\\t2_processed_payments.png",
        "pass": true
      },
      "clients_register": {
        "finalUrl": "http://127.0.0.1:8000/loan/clients",
        "statusLog": [
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:14:30.354Z"
          },
          {
            "status": 204,
            "url": "http://127.0.0.1:8000/session/status",
            "at": "2026-07-16T12:17:23.392Z"
          }
        ],
        "after": {
          "href": "http://127.0.0.1:8000/loan/clients",
          "hasLoanAppShell": true,
          "stylesheetCount": 4,
          "topLevelFrame": false,
          "loginForm": false,
          "sessionResume": {
            "hiddenAt": null,
            "lastValidatedAt": 1784204070308,
            "validationPending": false,
            "redirectPending": false,
            "lastNetworkFailureAt": null,
            "online": true,
            "hasAuthenticatedShell": true
          },
          "workspaceIdle": {
            "href": "/loan/clients",
            "title": "Jirani Hodari Ltd",
            "hasLoanAppShell": true,
            "hasSuperadminShell": false,
            "isOrphanFragment": false,
            "stylesheetCount": 7,
            "scriptCount": 9,
            "turboFrameCount": 1,
            "bodyChildCount": 23,
            "normalizedShellUrl": "/loan/clients",
            "documentRecoveryPending": false,
            "frameBootstrapPending": false
          },
          "resumeEvents": [
            {
              "at": "2026-07-16T12:11:58.905Z",
              "type": "session_resume_guard_bound"
            },
            {
              "at": "2026-07-16T12:11:59.043Z",
              "type": "document_visible",
              "reason": "pageshow",
              "resumedAt": 1784203919043,
              "hiddenDuration": 0
            },
            {
              "at": "2026-07-16T12:12:01.014Z",
              "type": "document_hidden",
              "hiddenAt": 1784203921014
            },
            {
              "at": "2026-07-16T12:14:06.028Z",
              "type": "document_visible",
              "reason": "visibilitychange",
              "resumedAt": 1784204046028,
              "hiddenDuration": 125014
            },
            {
              "at": "2026-07-16T12:14:06.029Z",
              "type": "validation_started",
              "reason": "visibilitychange",
              "validationURL": "http://127.0.0.1:8000/session/status",
              "hiddenDuration": null
            },
            {
              "at": "2026-07-16T12:14:30.308Z",
              "type": "validation_status",
              "reason": "visibilitychange",
              "validationStatus": 204
            }
          ]
        },
        "screenshot": "storage\\cert-lifecycle-cert03-screenshots\\t2_clients_register.png",
        "pass": false
      }
    }
  },
  "browserVersion": "149.0.7827.55",
  "prep": {
    "diagnostics": {
      "sessionResume": true,
      "workspaceIdle": true
    }
  },
  "error": "page.evaluate: Execution context was destroyed, most likely because of a navigation.",
  "automationVerdict": "AUTOMATION_PARTIAL",
  "finalVerdict": "CONDITIONAL_GO",
  "finalVerdictReason": "Android, headed DevTools HAR, and tab-discard require human manual execution"
}