Harmony OneShot

Deploys

Latest deployment and exhaustive UI inspection signal for the rebuilt application.

UI Inspection Runs

Defects Found

Generated May 11, 2026, 3:08 PM EDT

main @ 3e9e5b7Raw JSONGitHub Run
Defects
35
Routes Affected
16
Passed
309
Failed
34
Timed Out
1

Defects

Grouped by route so broken interactions can be swept route by route.

/

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 14

- Array []
+ Array [
+   "/ link \"Agent Dashboard\" #1: Expected link named Agent Dashboard to have item at role index 0 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 0
+ Received:   0",
+   "/ link \"Deploys Dashboard\" #1: Expected link named Deploys Dashboard to have item at role index 2 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 2
+ Received:   0",
+ ]

/agent/applicants/applicant-maria-garcia

2 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /agent/applicants/applicant-maria-garcia

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /agent/applicants/applicant-maria-garcia must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 32

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "All",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Pending",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "In Progress",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Approved",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Rejected",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Needs Action",
+     "ordinal": 0,
+   },
+ ]
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/applicants/applicant-maria-garcia

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 24

- Array []
+ Array [
+   "/agent/applicants/applicant-maria-garcia initial state: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia link \"Back to applicant list\" #1: Expected link named Back to applicant list to have item at role index 0 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 0
+ Received:   0",
+   "/agent/applicants/applicant-maria-garcia link \"Open concierge\" #1: visible enabled link cannot receive click",
+   "/agent/applicants/applicant-maria-garcia button \"Send Onboarding\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Quick Actions\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Expand\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Expand\" #1 after filling visible fields -> link \"Message\" #1: Expected button named Expand to have item at role index 4 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 4
+ Received:   1",
+   "/agent/applicants/applicant-maria-garcia button \"Note\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Expand\" #1 after filling visible fields -> button \"Send Onboarding\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Expand\" #1 after filling visible fields -> button \"Quick Actions\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Expand\" #1 after filling visible fields -> button \"Collapse\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+   "/agent/applicants/applicant-maria-garcia button \"Expand\" #1 after filling visible fields -> button \"Note\" #1 after filling visible fields: unhandled visible interactive element div \"ALL PENDING IN PROGRESS APPROVED REJECTED NEEDS ACTION\" (role=tablist, tabindex=0)",
+ ]

/agent/applicants/applicant-maria-garcia/documents/doc-maria-income

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/applicants/applicant-maria-garcia/documents/doc-maria-income

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 3

- Array []
+ Array [
+   "/agent/applicants/applicant-maria-garcia/documents/doc-maria-income link \"Back to applicant\" #1: visible enabled link cannot receive click",
+ ]

/agent/applicants/applicant-maria-garcia/forms

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/applicants/applicant-maria-garcia/forms

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 16

- Array []
+ Array [
+   "/agent/applicants/applicant-maria-garcia/forms link \"Back to applicant\" #1: visible enabled link cannot receive click",
+   "/agent/applicants/applicant-maria-garcia/forms link \"Send Packet\" #1: Expected link named Send Packet to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   0",
+   "/agent/applicants/applicant-maria-garcia/forms link \"Preview Applicant\" #1: visible enabled link cannot receive click",
+   "/agent/applicants/applicant-maria-garcia/forms button \"Generate\" #2 after filling visible fields: Expected button named Generate to have item at role index 3 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 3
+ Received:   1",
+ ]

/agent/dashboard

2 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /agent/dashboard

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /agent/dashboard must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 17

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "All",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "In Progress",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Closed",
+     "ordinal": 0,
+   },
+ ]
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/dashboard

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 6

- Array []
+ Array [
+   "/agent/dashboard initial state: unhandled visible interactive element div \"All In Progress Closed\" (role=tablist, tabindex=0)",
+   "/agent/dashboard link \"Project\" #1: visible enabled link cannot receive click",
+   "/agent/dashboard link \"Open The Danby\" #1: visible enabled link cannot receive click",
+   "/agent/dashboard button \"Project\" #1 after filling visible fields: unhandled visible interactive element div \"All In Progress Closed\" (role=tablist, tabindex=0)",
+ ]

/agent/messages

5 defects
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /agent/messages wires buttonText Open thread with James Wilson

e2e/full-ui-verification.spec.ts:92
Error: Expected exactly one button named Open thread with James Wilson

expect(locator).toHaveCount(expected) failed

Locator:  getByRole('button', { name: 'Open thread with James Wilson', exact: true })
Expected: 1
Received: 0
Timeout:  5000ms

Call log:
  - Expected exactly one button named Open thread with James Wilson with timeout 5000ms
  - waiting for getByRole('button', { name: 'Open thread with James Wilson', exact: true })
    9 × locator resolved to 0 elements
      - unexpected value "0"
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /agent/messages wires buttonText Open thread with James Wilson with keyboard

e2e/full-ui-verification.spec.ts:96
Error: Expected exactly one button named Open thread with James Wilson

expect(locator).toHaveCount(expected) failed

Locator:  getByRole('button', { name: 'Open thread with James Wilson', exact: true })
Expected: 1
Received: 0
Timeout:  5000ms

Call log:
  - Expected exactly one button named Open thread with James Wilson with timeout 5000ms
  - waiting for getByRole('button', { name: 'Open thread with James Wilson', exact: true })
    9 × locator resolved to 0 elements
      - unexpected value "0"
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /agent/messages wires buttonText Open thread with Robert Chen

e2e/full-ui-verification.spec.ts:92
Error: Expected exactly one button named Open thread with Robert Chen

expect(locator).toHaveCount(expected) failed

Locator:  getByRole('button', { name: 'Open thread with Robert Chen', exact: true })
Expected: 1
Received: 0
Timeout:  5000ms

Call log:
  - Expected exactly one button named Open thread with Robert Chen with timeout 5000ms
  - waiting for getByRole('button', { name: 'Open thread with Robert Chen', exact: true })
    9 × locator resolved to 0 elements
      - unexpected value "0"
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /agent/messages wires buttonText Open thread with Robert Chen with keyboard

e2e/full-ui-verification.spec.ts:96
Error: Expected exactly one button named Open thread with Robert Chen

expect(locator).toHaveCount(expected) failed

Locator:  getByRole('button', { name: 'Open thread with Robert Chen', exact: true })
Expected: 1
Received: 0
Timeout:  5000ms

Call log:
  - Expected exactly one button named Open thread with Robert Chen with timeout 5000ms
  - waiting for getByRole('button', { name: 'Open thread with Robert Chen', exact: true })
    9 × locator resolved to 0 elements
      - unexpected value "0"
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/messages

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 4

- Array []
+ Array [
+   "/agent/messages link \"Open thread with Maria Garcia\" #1: visible enabled link cannot receive click",
+   "/agent/messages link \"Open Applicant\" #1: visible enabled link cannot receive click",
+ ]

/agent/projects

2 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /agent/projects

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /agent/projects must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 22

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "All",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "In Progress",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Documents Due",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Closed",
+     "ordinal": 0,
+   },
+ ]
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/projects

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 11

- Array []
+ Array [
+   "/agent/projects initial state: unhandled visible interactive element div \"All In Progress Documents Due Closed\" (role=tablist, tabindex=0)",
+   "/agent/projects link \"Douglass Port Apartments19 applicant actions · 167 days leftIn Progress\" #1: visible enabled link cannot receive click",
+   "/agent/projects button \"Project\" #1 after filling visible fields: Expected button named Project to have item at role index 2 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 2
+ Received:   1",
+   "/agent/projects button \"Status\" #1 after filling visible fields: unhandled visible interactive element div \"All In Progress Documents Due Closed\" (role=tablist, tabindex=0)",
+ ]

/agent/projects/glenmore/applicants

2 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /agent/projects/glenmore/applicants

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /agent/projects/glenmore/applicants must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 32

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Batched 3",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Needs Action 13",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Eligible 0",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Occupant 0",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Rejected 75",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "All 30,000",
+     "ordinal": 0,
+   },
+ ]
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/projects/glenmore/applicants

e2e/full-ui-verification.spec.ts:107
Test timeout of 120000ms exceeded.

/agent/projects/glenmore/documents

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/projects/glenmore/documents

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 16

- Array []
+ Array [
+   "/agent/projects/glenmore/documents link \"Back to project\" #1: visible enabled link cannot receive click",
+   "/agent/projects/glenmore/documents link \"Documents\" #1: Expected link named Documents to have item at role index 4 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 4
+ Received:   0",
+   "/agent/projects/glenmore/documents link \"Affordable Housing Regulatory Agreement.pdf\" #1: Expected link named Affordable Housing Regulatory Agreement.pdf to have item at role index 5 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 5
+ Received:   0",
+   "/agent/projects/glenmore/documents link \"Maria Garcia Income Verification.pdf\" #1: visible enabled link cannot receive click",
+ ]

/agent/settings/admins

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /agent/settings/admins

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 3

- Array []
+ Array [
+   "/agent/settings/admins link \"Open concierge\" #1: visible enabled link cannot receive click",
+ ]

/applicant/dashboard

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /applicant/dashboard

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 5

- Array []
+ Array [
+   "/applicant/dashboard link \"Home\" #1: visible enabled link cannot receive click",
+   "/applicant/dashboard link \"View All\" #1: visible enabled link cannot receive click",
+   "/applicant/dashboard link \"Rent HistoryUpload proof of rent payment or housing history.Not Started\" #1: visible enabled link cannot receive click",
+ ]

/applicant/documents

5 defects
interaction-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible interactive element /applicant/documents

e2e/full-ui-verification.spec.ts:87
Error: Every visible enabled interactive element on /applicant/documents must be covered by the route, button/link, or field crawlers

expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 7

- Array []
+ Array [
+   Object {
+     "label": "Drag and drop or click to upload",
+     "reason": "role=presentation, tabindex=0",
+     "tagName": "section",
+   },
+ ]
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /applicant/documents wires buttonText Browse Files

e2e/full-ui-verification.spec.ts:92
Error: Expected result text for /applicant/documents wires buttonText Browse Files after action

expect(locator).toBeVisible() failed

Locator: getByText('This checklist item is not ready for upload.').first()
Expected: visible
Timeout: 10000ms
Error: element(s) not found

Call log:
  - Expected result text for /applicant/documents wires buttonText Browse Files after action with timeout 10000ms
  - waiting for getByText('This checklist item is not ready for upload.').first()
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /applicant/documents wires buttonText Browse Files with keyboard

e2e/full-ui-verification.spec.ts:96
Error: Expected result text for /applicant/documents wires buttonText Browse Files after Enter key activation

expect(locator).toBeVisible() failed

Locator: getByText('This checklist item is not ready for upload.').first()
Expected: visible
Timeout: 10000ms
Error: element(s) not found

Call log:
  - Expected result text for /applicant/documents wires buttonText Browse Files after Enter key activation with timeout 10000ms
  - waiting for getByText('This checklist item is not ready for upload.').first()
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /applicant/documents

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 78

- Array []
+ Array [
+   "/applicant/documents initial state: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents link \"Harmony home\" #1: Expected link named Harmony home to have item at role index 0 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 0
+ Received:   0",
+   "/applicant/documents link \"Open Chat\" #1: visible enabled link cannot receive click",
+   "/applicant/documents button \"Upload Document\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> upload file \"(unnamed input file)\" #1: unnamed field",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Upload Document\" #1 after filling visible fields: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Open checklist item Employment Income\" #1 after filling visible fields: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> link \"Harmony home\" #1: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> link \"Documents\" #1: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> link \"Settings\" #1: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Browse Files\" #1 after filling visible fields: Expected button named Browse Files to have item at role index 7 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 7
+ Received:   1",
+   "/applicant/documents button \"Yes\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"No\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Not sure\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Yes\" #2 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"No\" #2 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Not sure\" #2 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Yes\" #3 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"No\" #3 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Not sure\" #3 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Browse Files\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Yes\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"No\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Not sure\" #1 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Yes\" #2 after filling visible fields: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"No\" #2 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Not sure\" #2 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Yes\" #3 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"No\" #3 after filling visible fields: Expected button named Open checklist item Photo ID to have item at role index 1 in the active interaction surface
+
+ expect(received).toBeGreaterThan(expected)
+
+ Expected: > 1
+ Received:   1",
+   "/applicant/documents button \"Open checklist item Photo ID\" #1 after filling visible fields -> button \"Not sure\" #3 after filling visible fields: unhandled visible interactive element section \"Drag and drop or click to upload\" (role=presentation, tabindex=0)",
+ ]
field-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route field interaction graph /applicant/documents

e2e/full-ui-verification.spec.ts:115
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 3

- Array []
+ Array [
+   "/applicant/documents upload file \"(unnamed input file)\" #1: unnamed field",
+ ]

/applicant/messages

1 defect
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /applicant/messages

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 22

- Array []
+ Array [
+   "/applicant/messages link \"Home\" #1: visible enabled link cannot receive click",
+   "/applicant/messages link \"Back Home\" #1: visible enabled link cannot receive click",
+   "/applicant/messages button \"Send\" #1 after filling visible fields -> link \"Documents\" #1: locator.click: Timeout 1000ms exceeded.
+ Call log:
+   - waiting for locator('body').getByRole('button', { name: 'Send', exact: true }).first()
+     - locator resolved to <button disabled type=\"submit\" class=\"group inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 bg-primary text-primary-foreground hover:bg-charcoal-500 active:bg-charcoal-500 h-11 md:h-8 px-3 text-sm rounded-md\">…</button>
+   - attempting click action
+     2 × waiting for element to be visible, enabled and stable
+       - element is not enabled
+     - retrying click action
+     - waiting 20ms
+     2 × waiting for element to be visible, enabled and stable
+       - element is not enabled
+     - retrying click action
+       - waiting 100ms
+     2 × waiting for element to be visible, enabled and stable
+       - element is not enabled
+     - retrying click action
+       - waiting 500ms
+ ",
+ ]

/applicant/onboarding

2 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /applicant/onboarding

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /applicant/onboarding must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 22

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 1,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 2,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 3,
+   },
+ ]
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /applicant/onboarding

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 4

- Array []
+ Array [
+   "/applicant/onboarding link \"Documents\" #1: visible enabled link cannot receive click",
+   "/applicant/onboarding button \"Save and continue\" #1 after filling visible fields -> link \"Documents\" #1: visible enabled link cannot receive click",
+ ]

/applicant/settings

3 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /applicant/settings

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /applicant/settings must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  -  1
+ Received  + 27

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 0,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 1,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 2,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 3,
+   },
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "(unnamed button)",
+     "ordinal": 4,
+   },
+ ]
interaction-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route reachable interaction graph /applicant/settings

e2e/full-ui-verification.spec.ts:107
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 7

- Array []
+ Array [
+   "/applicant/settings initial state: unhandled visible interactive element div \"English Spanish\" (role=radiogroup, tabindex=0)",
+   "/applicant/settings initial state: unhandled visible interactive element div \"Email SMS Both\" (role=radiogroup, tabindex=0)",
+   "/applicant/settings link \"Messages\" #1: visible enabled link cannot receive click",
+   "/applicant/settings button \"Save Preferences\" #1 after filling visible fields: unhandled visible interactive element div \"English Spanish\" (role=radiogroup, tabindex=0)",
+   "/applicant/settings button \"Save Preferences\" #1 after filling visible fields: unhandled visible interactive element div \"Email SMS Both\" (role=radiogroup, tabindex=0)",
+ ]
field-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route field interaction graph /applicant/settings

e2e/full-ui-verification.spec.ts:115
Error: expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 7

- Array []
+ Array [
+   "/applicant/settings uncheck radio \"(unnamed input radio)\" #1: unnamed field",
+   "/applicant/settings check radio \"(unnamed input radio)\" #2: unnamed field",
+   "/applicant/settings check radio \"(unnamed input radio)\" #3: unnamed field",
+   "/applicant/settings check radio \"(unnamed input radio)\" #4: unnamed field",
+   "/applicant/settings uncheck radio \"(unnamed input radio)\" #5: unnamed field",
+ ]

/applicant/sign-in

4 defects
button-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route accounts for every visible button /applicant/sign-in

e2e/full-ui-verification.spec.ts:79
Error: Every visible enabled button on /applicant/sign-in must have a deterministic interaction contract

expect(received).toEqual(expected) // deep equality

- Expected  - 1
+ Received  + 7

- Array []
+ Array [
+   Object {
+     "hiddenFromAccessibility": false,
+     "name": "Paste a token instead",
+     "ordinal": 0,
+   },
+ ]
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /applicant/sign-in wires form Continue

e2e/full-ui-verification.spec.ts:92
Error: Expected field Sign-in token on /applicant/sign-in

expect(locator).toBeVisible() failed

Locator: getByLabel('Sign-in token').first()
Expected: visible
Timeout: 5000ms
Error: element(s) not found

Call log:
  - Expected field Sign-in token on /applicant/sign-in with timeout 5000ms
  - waiting for getByLabel('Sign-in token').first()
control-wiring

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /applicant/sign-in wires form Continue with keyboard

e2e/full-ui-verification.spec.ts:96
Error: Expected field Sign-in token on /applicant/sign-in

expect(locator).toBeVisible() failed

Locator: getByLabel('Sign-in token').first()
Expected: visible
Timeout: 5000ms
Error: element(s) not found

Call log:
  - Expected field Sign-in token on /applicant/sign-in with timeout 5000ms
  - waiting for getByLabel('Sign-in token').first()
field-crawler

chromium > full-ui-verification.spec.ts > full deterministic UI verification > /applicant/sign-in wires form Continue with field Enter

e2e/full-ui-verification.spec.ts:101
Error: Expected field Sign-in token on /applicant/sign-in

expect(locator).toBeVisible() failed

Locator: getByLabel('Sign-in token').first()
Expected: visible
Timeout: 5000ms
Error: element(s) not found

Call log:
  - Expected field Sign-in token on /applicant/sign-in with timeout 5000ms
  - waiting for getByLabel('Sign-in token').first()

Global

1 defect
route-contract

chromium > full-ui-verification.spec.ts > full deterministic UI verification > route contract covers every app page

e2e/full-ui-verification.spec.ts:122
Error: No UI verification fixture for dynamic segment [id]