FlowProof logoFlowProofPre-production UI QA for fragile flows.
Back to runs

Self-healed: Sample account settings QA run

Change the account email to test@example.com and reach the confirmation screen.

Sample flow

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Test cases

6

Pass rate

100%

Persona fail rate

0%

Avg duration

7.6s

Persona results

Each result shows where the flow stopped and why that persona struggled.

Adversarial User

PASSn/a

Enters weird inputs, tries invalid values, navigates back, changes choices mid-flow.

8.7s

Flow completed and the configured success criteria were observed.

Impatient User

PASSn/a

Max 5 steps, no retries, clicks the first plausible control, gives up quickly.

7.1s

Flow completed and the configured success criteria were observed.

Mobile-First User

PASSn/a

Uses a 390x844 viewport and only obvious visible touch targets.

7.4s

Flow completed and the configured success criteria were observed.

ESL User

PASSn/a

Prefers simple labels and may confuse billing email with account email.

7.8s

Flow completed and the configured success criteria were observed.

Power User

PASSn/a

Uses search, shortcuts, and completes efficiently.

7.3s

Flow completed and the configured success criteria were observed.

Privacy-Sensitive User

PASSn/a

Refuses newsletter, tracking, permissions, and unnecessary personal data.

7.3s

Flow completed and the configured success criteria were observed.

Fix Attempts

No fix attempts yet.

Action traces

Adversarial User

PASS

Step 1: Use the repaired single Account email field

Self-heal gives a specific validation message and a direct recovery path after invalid input.

FAIL

Page text did not contain "Email updated successfully".

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Adversarial User step 1

Step 2: Click explicit "Update account email" button

Self-heal made the primary action explicit, visible on mobile, and specific to the task.

PASS

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Adversarial User step 2

Impatient User

PASS

Step 1: Use the repaired single Account email field

Self-heal removed competing email fields, so the first plausible email field is now correct.

FAIL

Page text did not contain "Email updated successfully".

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Impatient User step 1

Step 2: Click explicit "Update account email" button

Self-heal made the primary action explicit, visible on mobile, and specific to the task.

PASS

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Impatient User step 2

Mobile-First User

PASS

Step 1: Use the repaired single Account email field

Self-heal keeps the important update button visible as an obvious touch target.

FAIL

Page text did not contain "Email updated successfully".

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Mobile-First User step 1

Step 2: Click explicit "Update account email" button

Self-heal made the primary action explicit, visible on mobile, and specific to the task.

PASS

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Mobile-First User step 2

ESL User

PASS

Step 1: Use the repaired single Account email field

Self-heal replaced ambiguous billing/account choices with one simple Account email label.

FAIL

Page text did not contain "Email updated successfully".

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for ESL User step 1

Step 2: Click explicit "Update account email" button

Self-heal made the primary action explicit, visible on mobile, and specific to the task.

PASS

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for ESL User step 2

Power User

PASS

Step 1: Use the repaired single Account email field

Self-heal keeps the shortest direct path available without extra search or modal work.

FAIL

Page text did not contain "Email updated successfully".

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Power User step 1

Step 2: Click explicit "Update account email" button

Self-heal made the primary action explicit, visible on mobile, and specific to the task.

PASS

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Power User step 2

Privacy-Sensitive User

PASS

Step 1: Use the repaired single Account email field

Self-heal removed permission modal, tracking defaults, and unnecessary personal-data fields.

FAIL

Page text did not contain "Email updated successfully".

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Privacy-Sensitive User step 1

Step 2: Click explicit "Update account email" button

Self-heal made the primary action explicit, visible on mobile, and specific to the task.

PASS

https://persona-probe-6f7d.vercel.app/demo-app/account-settings?heal=eyJ2ZXJzaW9uIjoxLCJnZW5lcmF0ZWRCeSI6InRyYWNlLXNlbGYtaGVhbGluZy1hZ2VudCIsInNvdXJjZVJ1bklkIjoiY21xbzI5NWgxMDAwMWp2MDRlNjBpc29raCIsImZpeGVzIjp7InJlbW92ZUJpbGxpbmdFbWFpbFRyYXAiOnRydWUsInJlbW92ZU9wdGlvbmFsUGhvbmVGaWVsZCI6dHJ1ZSwicmVtb3ZlUGVybWlzc2lvbnNNb2RhbCI6dHJ1ZSwibmV3c2xldHRlckRlZmF1bHRDaGVja2VkIjpmYWxzZSwidXNlRXhwbGljaXRBY2NvdW50RW1haWxDb3B5Ijp0cnVlLCJ1c2VFeHBsaWNpdFNhdmVCdXR0b24iOnRydWUsImtlZXBTYXZlVmlzaWJsZU9uTW9iaWxlIjp0cnVlLCJ1c2VTcGVjaWZpY0Vycm9yTWVzc2FnZXMiOnRydWV9LCJyZWFzb25zIjpbIkZhaWxlZCB0cmFjZXMgc2hvdyBwZXJzb25hcyBjaG9vc2luZyBCaWxsaW5nIGVtYWlsIGluc3RlYWQgb2YgQWNjb3VudCBlbWFpbC4iLCJUaGUgcHJpdmFjeS9wZXJtaXNzaW9ucyBtb2RhbCBhbmQgdHJhY2tpbmcgZGVmYXVsdHMgYWRkIG5vbmVzc2VudGlhbCBkZWNpc2lvbnMgYmVmb3JlIHRoZSB0YXNrLiIsIk1vYmlsZS1maXJzdCB0cmFjZXMgc2hvdyB0aGUgc2F2ZSBhY3Rpb24gd2FzIG5vdCBhbiBvYnZpb3VzIHZpc2libGUgdG91Y2ggdGFyZ2V0LiIsIlZhZ3VlIHZhbGlkYXRpb24gbWFkZSByZWNvdmVyeSB1bmNsZWFyIGFmdGVyIHdyb25nIG9yIGludmFsaWQgaW5wdXQuIl19

Screenshot for Privacy-Sensitive User step 2

Raw logs

Adversarial User
[
  "{\n  \"type\": \"demo_safe_policy\",\n  \"persona\": \"adversarial\",\n  \"policy\": \"Policy: try one invalid input first, use back navigation once, and change choices midway before attempting completion.\",\n  \"selfHealed\": true\n}"
]
Impatient User
[
  "{\n  \"type\": \"demo_safe_policy\",\n  \"persona\": \"impatient\",\n  \"policy\": \"Policy: maxSteps=5; maxRetries=0. Click the first plausible button or field. Do not inspect alternatives deeply. Give up quickly when a flow is unclear.\",\n  \"selfHealed\": true\n}"
]
Mobile-First User
[
  "{\n  \"type\": \"demo_safe_policy\",\n  \"persona\": \"mobile-first\",\n  \"policy\": \"Policy: viewport=390x844. Use only obvious visible touch targets. Do not hunt below the fold unless there is a visible cue.\",\n  \"selfHealed\": true\n}"
]
ESL User
[
  "{\n  \"type\": \"demo_safe_policy\",\n  \"persona\": \"esl\",\n  \"policy\": \"Policy: prefer simple obvious labels. Dense helper text is easy to miss. You may confuse Billing email and Account email when both appear.\",\n  \"selfHealed\": true\n}"
]
Power User
[
  "{\n  \"type\": \"demo_safe_policy\",\n  \"persona\": \"power-user\",\n  \"policy\": \"Policy: use search, keyboard shortcuts, and direct field targeting. Complete efficiently with the fewest useful actions.\",\n  \"selfHealed\": true\n}"
]
Privacy-Sensitive User
[
  "{\n  \"type\": \"demo_safe_policy\",\n  \"persona\": \"privacy-sensitive\",\n  \"policy\": \"Policy: refuse newsletters, tracking, optional permissions, and unnecessary personal data. Only provide the required account email.\",\n  \"selfHealed\": true\n}"
]