@stacknyu/pi-glitch-lab 0.0.0-stage → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/LICENSE +21 -0
- package/README.md +87 -2
- package/examples/glitchy-app/README.md +14 -0
- package/examples/glitchy-app/THIRD_PARTY_NOTICES.md +27 -0
- package/examples/glitchy-app/app.jsx +62 -0
- package/examples/glitchy-app/public/api/credits.json +1 -0
- package/examples/glitchy-app/public/api/me.json +1 -0
- package/examples/glitchy-app/public/api/messages.json +1 -0
- package/examples/glitchy-app/public/app.js +14749 -0
- package/examples/glitchy-app/public/index.html +2 -0
- package/examples/glitchy-app/serve.mjs +12 -0
- package/extensions/index.ts +157 -0
- package/package.json +53 -3
- package/scripts/affordance_scan.mjs +235 -0
- package/scripts/doctor.mjs +14 -0
- package/scripts/glitch/analyze.mjs +274 -0
- package/scripts/glitch_lab.mjs +519 -0
- package/scripts/interactions.mjs +172 -0
- package/scripts/journey_runner.mjs +260 -0
- package/scripts/lib.mjs +260 -0
- package/scripts/report.mjs +144 -0
- package/scripts/sensors/dom_observer.mjs +96 -0
- package/scripts/sensors/react_sensor.mjs +167 -0
- package/skills/ai-agentic-usability-testing/SKILL.md +68 -0
- package/skills/ai-agentic-usability-testing/assets/default-personas.md +96 -0
- package/skills/ai-agentic-usability-testing/assets/findings.example.json +56 -0
- package/skills/ai-agentic-usability-testing/assets/matrix.default.json +746 -0
- package/skills/ai-agentic-usability-testing/assets/matrix.partners.example.json +73 -0
- package/skills/ai-agentic-usability-testing/assets/matrix.web.example.json +32 -0
- package/skills/ai-agentic-usability-testing/assets/personas-template.md +45 -0
- package/skills/ai-agentic-usability-testing/references/latency-reliability.md +41 -0
- package/skills/ai-agentic-usability-testing/references/regression-pipeline.md +41 -0
- package/skills/ai-agentic-usability-testing/references/tenant-persona-matrix.md +61 -0
- package/skills/ai-agentic-usability-testing/references/visual-affordance-guide.md +97 -0
- package/skills/ai-agentic-usability-testing/references/visual-glitches.md +83 -0
- package/skills/glitch-hunt/SKILL.md +59 -0
|
@@ -0,0 +1,746 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_readme": "Default matrix: 4 personas (5 variants) as DIRECT platform users, no partner. Copy to .ux/matrix.json, set platform.url and logins, then explore the app once and replace the placeholder labels in journeys (e.g. 'Chat', 'New chat', 'Save to notes', placeholder 'Ask') with the real ones seen on screen. mustNotSee lists are starting points: replace with real agent/widget names of other verticals.",
|
|
3
|
+
"platform": {
|
|
4
|
+
"name": "YOUR PLATFORM NAME",
|
|
5
|
+
"url": "https://staging.your-platform.com",
|
|
6
|
+
"login": {
|
|
7
|
+
"url": "/login",
|
|
8
|
+
"fields": {
|
|
9
|
+
"input[type=email]": "env:UX_EMAIL",
|
|
10
|
+
"input[type=password]": "env:UX_PASSWORD"
|
|
11
|
+
},
|
|
12
|
+
"submit": "button[type=submit]",
|
|
13
|
+
"waitFor": "/"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"unsafeWords": [
|
|
17
|
+
"delete",
|
|
18
|
+
"remove",
|
|
19
|
+
"pay",
|
|
20
|
+
"purchase",
|
|
21
|
+
"buy",
|
|
22
|
+
"upgrade",
|
|
23
|
+
"subscribe",
|
|
24
|
+
"invite",
|
|
25
|
+
"share",
|
|
26
|
+
"publish",
|
|
27
|
+
"send email",
|
|
28
|
+
"logout",
|
|
29
|
+
"log out",
|
|
30
|
+
"sign out",
|
|
31
|
+
"deactivate",
|
|
32
|
+
"reset"
|
|
33
|
+
],
|
|
34
|
+
"mask": [
|
|
35
|
+
"time",
|
|
36
|
+
"[datetime]",
|
|
37
|
+
".timestamp",
|
|
38
|
+
"[data-streaming]",
|
|
39
|
+
"[aria-busy=true]"
|
|
40
|
+
],
|
|
41
|
+
"personas": {
|
|
42
|
+
"indian-germany-student": {
|
|
43
|
+
"name": "Arjun, 22",
|
|
44
|
+
"vertical": "education",
|
|
45
|
+
"viewport": "android",
|
|
46
|
+
"network": "fast3g",
|
|
47
|
+
"locale": "en-IN",
|
|
48
|
+
"timezone": "Asia/Kolkata",
|
|
49
|
+
"mustNotSee": [
|
|
50
|
+
"Tax agent",
|
|
51
|
+
"Tax audit",
|
|
52
|
+
"Stock",
|
|
53
|
+
"NIFTY",
|
|
54
|
+
"SENSEX",
|
|
55
|
+
"Portfolio",
|
|
56
|
+
"Trading",
|
|
57
|
+
"SAT",
|
|
58
|
+
"Common App",
|
|
59
|
+
"undefined",
|
|
60
|
+
"NaN",
|
|
61
|
+
"[object Object]",
|
|
62
|
+
"null",
|
|
63
|
+
"Something went wrong",
|
|
64
|
+
"Error:"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
"us-ivy-applicant": {
|
|
68
|
+
"name": "Emily, 17",
|
|
69
|
+
"vertical": "education",
|
|
70
|
+
"viewport": "iphone",
|
|
71
|
+
"network": "fast3g",
|
|
72
|
+
"locale": "en-US",
|
|
73
|
+
"timezone": "America/Chicago",
|
|
74
|
+
"mustNotSee": [
|
|
75
|
+
"Tax agent",
|
|
76
|
+
"Tax audit",
|
|
77
|
+
"Stock",
|
|
78
|
+
"NIFTY",
|
|
79
|
+
"SENSEX",
|
|
80
|
+
"Portfolio",
|
|
81
|
+
"Trading",
|
|
82
|
+
"APS certificate",
|
|
83
|
+
"uni-assist",
|
|
84
|
+
"Blocked account",
|
|
85
|
+
"₹",
|
|
86
|
+
"undefined",
|
|
87
|
+
"NaN",
|
|
88
|
+
"[object Object]",
|
|
89
|
+
"null",
|
|
90
|
+
"Something went wrong",
|
|
91
|
+
"Error:"
|
|
92
|
+
]
|
|
93
|
+
},
|
|
94
|
+
"us-finance-analyst": {
|
|
95
|
+
"name": "Mark, 40",
|
|
96
|
+
"vertical": "finance",
|
|
97
|
+
"viewport": "desktop",
|
|
98
|
+
"network": "fast",
|
|
99
|
+
"locale": "en-US",
|
|
100
|
+
"timezone": "America/New_York",
|
|
101
|
+
"mustNotSee": [
|
|
102
|
+
"Admission",
|
|
103
|
+
"Scholarship",
|
|
104
|
+
"SOP",
|
|
105
|
+
"NIFTY",
|
|
106
|
+
"SENSEX",
|
|
107
|
+
"₹",
|
|
108
|
+
"undefined",
|
|
109
|
+
"NaN",
|
|
110
|
+
"[object Object]",
|
|
111
|
+
"null",
|
|
112
|
+
"Something went wrong",
|
|
113
|
+
"Error:"
|
|
114
|
+
]
|
|
115
|
+
},
|
|
116
|
+
"indian-market-analyst-young": {
|
|
117
|
+
"name": "Rahul, 32",
|
|
118
|
+
"vertical": "markets",
|
|
119
|
+
"viewport": "android",
|
|
120
|
+
"network": "fast3g",
|
|
121
|
+
"locale": "en-IN",
|
|
122
|
+
"timezone": "Asia/Kolkata",
|
|
123
|
+
"mustNotSee": [
|
|
124
|
+
"Admission",
|
|
125
|
+
"Scholarship",
|
|
126
|
+
"IRS",
|
|
127
|
+
"Tax audit",
|
|
128
|
+
"CP2000",
|
|
129
|
+
"undefined",
|
|
130
|
+
"NaN",
|
|
131
|
+
"[object Object]",
|
|
132
|
+
"null",
|
|
133
|
+
"Something went wrong",
|
|
134
|
+
"Error:"
|
|
135
|
+
]
|
|
136
|
+
},
|
|
137
|
+
"indian-market-analyst-senior": {
|
|
138
|
+
"name": "Suresh, 61",
|
|
139
|
+
"vertical": "markets",
|
|
140
|
+
"viewport": "laptop-zoom125",
|
|
141
|
+
"network": "fast3g",
|
|
142
|
+
"locale": "en-IN",
|
|
143
|
+
"timezone": "Asia/Kolkata",
|
|
144
|
+
"mustNotSee": [
|
|
145
|
+
"Admission",
|
|
146
|
+
"Scholarship",
|
|
147
|
+
"IRS",
|
|
148
|
+
"Tax audit",
|
|
149
|
+
"CP2000",
|
|
150
|
+
"undefined",
|
|
151
|
+
"NaN",
|
|
152
|
+
"[object Object]",
|
|
153
|
+
"null",
|
|
154
|
+
"Something went wrong",
|
|
155
|
+
"Error:"
|
|
156
|
+
]
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
"cells": [
|
|
160
|
+
{
|
|
161
|
+
"persona": "indian-germany-student",
|
|
162
|
+
"screens": [
|
|
163
|
+
"/",
|
|
164
|
+
"/dashboard",
|
|
165
|
+
"/chat",
|
|
166
|
+
"/notes",
|
|
167
|
+
"/research"
|
|
168
|
+
],
|
|
169
|
+
"journeys": [
|
|
170
|
+
"explore-dashboard",
|
|
171
|
+
"arjun-checklist",
|
|
172
|
+
"arjun-costs"
|
|
173
|
+
],
|
|
174
|
+
"login": {
|
|
175
|
+
"url": "/login",
|
|
176
|
+
"fields": {
|
|
177
|
+
"input[type=email]": "env:UX_EMAIL_INDIAN_GERMANY_STUDENT",
|
|
178
|
+
"input[type=password]": "env:UX_PASSWORD_INDIAN_GERMANY_STUDENT"
|
|
179
|
+
},
|
|
180
|
+
"submit": "button[type=submit]",
|
|
181
|
+
"waitFor": "/"
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"persona": "us-ivy-applicant",
|
|
186
|
+
"screens": [
|
|
187
|
+
"/",
|
|
188
|
+
"/dashboard",
|
|
189
|
+
"/chat",
|
|
190
|
+
"/notes",
|
|
191
|
+
"/research"
|
|
192
|
+
],
|
|
193
|
+
"journeys": [
|
|
194
|
+
"explore-dashboard",
|
|
195
|
+
"emily-plan",
|
|
196
|
+
"emily-essay"
|
|
197
|
+
],
|
|
198
|
+
"login": {
|
|
199
|
+
"url": "/login",
|
|
200
|
+
"fields": {
|
|
201
|
+
"input[type=email]": "env:UX_EMAIL_US_IVY_APPLICANT",
|
|
202
|
+
"input[type=password]": "env:UX_PASSWORD_US_IVY_APPLICANT"
|
|
203
|
+
},
|
|
204
|
+
"submit": "button[type=submit]",
|
|
205
|
+
"waitFor": "/"
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"persona": "us-finance-analyst",
|
|
210
|
+
"screens": [
|
|
211
|
+
"/",
|
|
212
|
+
"/dashboard",
|
|
213
|
+
"/chat",
|
|
214
|
+
"/notes",
|
|
215
|
+
"/research"
|
|
216
|
+
],
|
|
217
|
+
"journeys": [
|
|
218
|
+
"explore-dashboard",
|
|
219
|
+
"mark-audit",
|
|
220
|
+
"mark-quarterly"
|
|
221
|
+
],
|
|
222
|
+
"login": {
|
|
223
|
+
"url": "/login",
|
|
224
|
+
"fields": {
|
|
225
|
+
"input[type=email]": "env:UX_EMAIL_US_FINANCE_ANALYST",
|
|
226
|
+
"input[type=password]": "env:UX_PASSWORD_US_FINANCE_ANALYST"
|
|
227
|
+
},
|
|
228
|
+
"submit": "button[type=submit]",
|
|
229
|
+
"waitFor": "/"
|
|
230
|
+
}
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"persona": "indian-market-analyst-young",
|
|
234
|
+
"screens": [
|
|
235
|
+
"/",
|
|
236
|
+
"/dashboard",
|
|
237
|
+
"/chat",
|
|
238
|
+
"/notes",
|
|
239
|
+
"/research"
|
|
240
|
+
],
|
|
241
|
+
"journeys": [
|
|
242
|
+
"explore-dashboard",
|
|
243
|
+
"rahul-outlook",
|
|
244
|
+
"rahul-sector-note"
|
|
245
|
+
],
|
|
246
|
+
"login": {
|
|
247
|
+
"url": "/login",
|
|
248
|
+
"fields": {
|
|
249
|
+
"input[type=email]": "env:UX_EMAIL_INDIAN_MARKET_ANALYST_YOUNG",
|
|
250
|
+
"input[type=password]": "env:UX_PASSWORD_INDIAN_MARKET_ANALYST_YOUNG"
|
|
251
|
+
},
|
|
252
|
+
"submit": "button[type=submit]",
|
|
253
|
+
"waitFor": "/"
|
|
254
|
+
}
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"persona": "indian-market-analyst-senior",
|
|
258
|
+
"screens": [
|
|
259
|
+
"/",
|
|
260
|
+
"/dashboard",
|
|
261
|
+
"/chat",
|
|
262
|
+
"/notes",
|
|
263
|
+
"/research"
|
|
264
|
+
],
|
|
265
|
+
"journeys": [
|
|
266
|
+
"explore-dashboard",
|
|
267
|
+
"suresh-overview",
|
|
268
|
+
"suresh-find-notes"
|
|
269
|
+
],
|
|
270
|
+
"login": {
|
|
271
|
+
"url": "/login",
|
|
272
|
+
"fields": {
|
|
273
|
+
"input[type=email]": "env:UX_EMAIL_INDIAN_MARKET_ANALYST_SENIOR",
|
|
274
|
+
"input[type=password]": "env:UX_PASSWORD_INDIAN_MARKET_ANALYST_SENIOR"
|
|
275
|
+
},
|
|
276
|
+
"submit": "button[type=submit]",
|
|
277
|
+
"waitFor": "/"
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
],
|
|
281
|
+
"journeys": {
|
|
282
|
+
"explore-dashboard": {
|
|
283
|
+
"title": "First look: land, look around, open each main area",
|
|
284
|
+
"steps": [
|
|
285
|
+
{
|
|
286
|
+
"goto": "/"
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
"expectNoText": "{{persona.mustNotSee}}"
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"screenshot": "landing"
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
"click": "Chat",
|
|
296
|
+
"optional": true
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
"click": "Notes",
|
|
300
|
+
"optional": true
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"click": "Research",
|
|
304
|
+
"optional": true
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"click": "Dashboard",
|
|
308
|
+
"optional": true
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"screenshot": "back-to-dashboard"
|
|
312
|
+
}
|
|
313
|
+
]
|
|
314
|
+
},
|
|
315
|
+
"arjun-checklist": {
|
|
316
|
+
"title": "Get the Germany MS checklist and save it",
|
|
317
|
+
"steps": [
|
|
318
|
+
{
|
|
319
|
+
"goto": "/"
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
323
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
"click": "Chat",
|
|
327
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
328
|
+
},
|
|
329
|
+
{
|
|
330
|
+
"click": "New chat",
|
|
331
|
+
"optional": true
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
"fill": {
|
|
335
|
+
"placeholder": "Ask",
|
|
336
|
+
"value": "What all documents and exams do I need for MS in Computer Science in Germany? I am in final year B.Tech with 7.8 CGPA."
|
|
337
|
+
}
|
|
338
|
+
},
|
|
339
|
+
{
|
|
340
|
+
"press": "Enter"
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
"measureResponse": {
|
|
344
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
345
|
+
"timeout": 90000
|
|
346
|
+
},
|
|
347
|
+
"note": "replace selector with the real assistant-message container"
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
"click": "Save to notes",
|
|
351
|
+
"note": "replace with the real save/add-to-notes control"
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
"waitForText": "Saved",
|
|
355
|
+
"optional": true
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"click": "Notes"
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"screenshot": "notes-after-save"
|
|
362
|
+
}
|
|
363
|
+
]
|
|
364
|
+
},
|
|
365
|
+
"arjun-costs": {
|
|
366
|
+
"title": "Total cost in rupees",
|
|
367
|
+
"steps": [
|
|
368
|
+
{
|
|
369
|
+
"goto": "/"
|
|
370
|
+
},
|
|
371
|
+
{
|
|
372
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
373
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
"click": "Chat",
|
|
377
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
"click": "New chat",
|
|
381
|
+
"optional": true
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
"fill": {
|
|
385
|
+
"placeholder": "Ask",
|
|
386
|
+
"value": "How much money do I need in total for MS in Germany, in rupees? Include blocked account and insurance."
|
|
387
|
+
}
|
|
388
|
+
},
|
|
389
|
+
{
|
|
390
|
+
"press": "Enter"
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"measureResponse": {
|
|
394
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
395
|
+
"timeout": 90000
|
|
396
|
+
},
|
|
397
|
+
"note": "replace selector with the real assistant-message container"
|
|
398
|
+
}
|
|
399
|
+
]
|
|
400
|
+
},
|
|
401
|
+
"emily-plan": {
|
|
402
|
+
"title": "Junior-year plan for MIT, saved",
|
|
403
|
+
"steps": [
|
|
404
|
+
{
|
|
405
|
+
"goto": "/"
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
409
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
"click": "Chat",
|
|
413
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
"click": "New chat",
|
|
417
|
+
"optional": true
|
|
418
|
+
},
|
|
419
|
+
{
|
|
420
|
+
"fill": {
|
|
421
|
+
"placeholder": "Ask",
|
|
422
|
+
"value": "What do I need to get into MIT? Like what should I be doing junior year? Make me a month by month plan."
|
|
423
|
+
}
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
"press": "Enter"
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
"measureResponse": {
|
|
430
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
431
|
+
"timeout": 90000
|
|
432
|
+
},
|
|
433
|
+
"note": "replace selector with the real assistant-message container"
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
"click": "Save to notes",
|
|
437
|
+
"note": "replace with the real save/add-to-notes control"
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
"waitForText": "Saved",
|
|
441
|
+
"optional": true
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
"click": "Notes"
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
"screenshot": "notes-after-save"
|
|
448
|
+
}
|
|
449
|
+
]
|
|
450
|
+
},
|
|
451
|
+
"emily-essay": {
|
|
452
|
+
"title": "Essay brainstorm",
|
|
453
|
+
"steps": [
|
|
454
|
+
{
|
|
455
|
+
"goto": "/"
|
|
456
|
+
},
|
|
457
|
+
{
|
|
458
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
459
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
460
|
+
},
|
|
461
|
+
{
|
|
462
|
+
"click": "Chat",
|
|
463
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"click": "New chat",
|
|
467
|
+
"optional": true
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
"fill": {
|
|
471
|
+
"placeholder": "Ask",
|
|
472
|
+
"value": "Help me brainstorm my Common App essay. I do robotics and tutor middle schoolers."
|
|
473
|
+
}
|
|
474
|
+
},
|
|
475
|
+
{
|
|
476
|
+
"press": "Enter"
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
"measureResponse": {
|
|
480
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
481
|
+
"timeout": 90000
|
|
482
|
+
},
|
|
483
|
+
"note": "replace selector with the real assistant-message container"
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
"click": "Save to notes",
|
|
487
|
+
"note": "replace with the real save/add-to-notes control"
|
|
488
|
+
},
|
|
489
|
+
{
|
|
490
|
+
"waitForText": "Saved",
|
|
491
|
+
"optional": true
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
"click": "Notes"
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"screenshot": "notes-after-save"
|
|
498
|
+
}
|
|
499
|
+
]
|
|
500
|
+
},
|
|
501
|
+
"mark-audit": {
|
|
502
|
+
"title": "Audit preparation checklist",
|
|
503
|
+
"steps": [
|
|
504
|
+
{
|
|
505
|
+
"goto": "/"
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
509
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
510
|
+
},
|
|
511
|
+
{
|
|
512
|
+
"click": "Chat",
|
|
513
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
514
|
+
},
|
|
515
|
+
{
|
|
516
|
+
"click": "New chat",
|
|
517
|
+
"optional": true
|
|
518
|
+
},
|
|
519
|
+
{
|
|
520
|
+
"fill": {
|
|
521
|
+
"placeholder": "Ask",
|
|
522
|
+
"value": "I got a CP2000 notice last year. What documentation should I prepare in case of an audit? I have W-2 income, 1099-NEC consulting and a rental property."
|
|
523
|
+
}
|
|
524
|
+
},
|
|
525
|
+
{
|
|
526
|
+
"press": "Enter"
|
|
527
|
+
},
|
|
528
|
+
{
|
|
529
|
+
"measureResponse": {
|
|
530
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
531
|
+
"timeout": 90000
|
|
532
|
+
},
|
|
533
|
+
"note": "replace selector with the real assistant-message container"
|
|
534
|
+
},
|
|
535
|
+
{
|
|
536
|
+
"click": "Save to notes",
|
|
537
|
+
"note": "replace with the real save/add-to-notes control"
|
|
538
|
+
},
|
|
539
|
+
{
|
|
540
|
+
"waitForText": "Saved",
|
|
541
|
+
"optional": true
|
|
542
|
+
},
|
|
543
|
+
{
|
|
544
|
+
"click": "Notes"
|
|
545
|
+
},
|
|
546
|
+
{
|
|
547
|
+
"screenshot": "notes-after-save"
|
|
548
|
+
}
|
|
549
|
+
]
|
|
550
|
+
},
|
|
551
|
+
"mark-quarterly": {
|
|
552
|
+
"title": "Quarterly estimated tax plan",
|
|
553
|
+
"steps": [
|
|
554
|
+
{
|
|
555
|
+
"goto": "/"
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
559
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"click": "Chat",
|
|
563
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
564
|
+
},
|
|
565
|
+
{
|
|
566
|
+
"click": "New chat",
|
|
567
|
+
"optional": true
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
"fill": {
|
|
571
|
+
"placeholder": "Ask",
|
|
572
|
+
"value": "Help me plan quarterly estimated taxes for about $60k of consulting income this year. Put it in a table."
|
|
573
|
+
}
|
|
574
|
+
},
|
|
575
|
+
{
|
|
576
|
+
"press": "Enter"
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"measureResponse": {
|
|
580
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
581
|
+
"timeout": 90000
|
|
582
|
+
},
|
|
583
|
+
"note": "replace selector with the real assistant-message container"
|
|
584
|
+
}
|
|
585
|
+
]
|
|
586
|
+
},
|
|
587
|
+
"rahul-outlook": {
|
|
588
|
+
"title": "Weekly index outlook",
|
|
589
|
+
"steps": [
|
|
590
|
+
{
|
|
591
|
+
"goto": "/"
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
595
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
596
|
+
},
|
|
597
|
+
{
|
|
598
|
+
"click": "Chat",
|
|
599
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
600
|
+
},
|
|
601
|
+
{
|
|
602
|
+
"click": "New chat",
|
|
603
|
+
"optional": true
|
|
604
|
+
},
|
|
605
|
+
{
|
|
606
|
+
"fill": {
|
|
607
|
+
"placeholder": "Ask",
|
|
608
|
+
"value": "NIFTY and Bank NIFTY outlook for the coming week? Key levels?"
|
|
609
|
+
}
|
|
610
|
+
},
|
|
611
|
+
{
|
|
612
|
+
"press": "Enter"
|
|
613
|
+
},
|
|
614
|
+
{
|
|
615
|
+
"measureResponse": {
|
|
616
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
617
|
+
"timeout": 90000
|
|
618
|
+
},
|
|
619
|
+
"note": "replace selector with the real assistant-message container"
|
|
620
|
+
}
|
|
621
|
+
]
|
|
622
|
+
},
|
|
623
|
+
"rahul-sector-note": {
|
|
624
|
+
"title": "Sector view saved as note",
|
|
625
|
+
"steps": [
|
|
626
|
+
{
|
|
627
|
+
"goto": "/"
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
631
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
632
|
+
},
|
|
633
|
+
{
|
|
634
|
+
"click": "Chat",
|
|
635
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
636
|
+
},
|
|
637
|
+
{
|
|
638
|
+
"click": "New chat",
|
|
639
|
+
"optional": true
|
|
640
|
+
},
|
|
641
|
+
{
|
|
642
|
+
"fill": {
|
|
643
|
+
"placeholder": "Ask",
|
|
644
|
+
"value": "Should I book profits in IT stocks or hold? Give reasons and save-worthy summary."
|
|
645
|
+
}
|
|
646
|
+
},
|
|
647
|
+
{
|
|
648
|
+
"press": "Enter"
|
|
649
|
+
},
|
|
650
|
+
{
|
|
651
|
+
"measureResponse": {
|
|
652
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
653
|
+
"timeout": 90000
|
|
654
|
+
},
|
|
655
|
+
"note": "replace selector with the real assistant-message container"
|
|
656
|
+
},
|
|
657
|
+
{
|
|
658
|
+
"click": "Save to notes",
|
|
659
|
+
"note": "replace with the real save/add-to-notes control"
|
|
660
|
+
},
|
|
661
|
+
{
|
|
662
|
+
"waitForText": "Saved",
|
|
663
|
+
"optional": true
|
|
664
|
+
},
|
|
665
|
+
{
|
|
666
|
+
"click": "Notes"
|
|
667
|
+
},
|
|
668
|
+
{
|
|
669
|
+
"screenshot": "notes-after-save"
|
|
670
|
+
}
|
|
671
|
+
]
|
|
672
|
+
},
|
|
673
|
+
"suresh-overview": {
|
|
674
|
+
"title": "Market overview for the month",
|
|
675
|
+
"steps": [
|
|
676
|
+
{
|
|
677
|
+
"goto": "/"
|
|
678
|
+
},
|
|
679
|
+
{
|
|
680
|
+
"expectNoText": "{{persona.mustNotSee}}",
|
|
681
|
+
"note": "replaced at runtime by the persona's mustNotSee list"
|
|
682
|
+
},
|
|
683
|
+
{
|
|
684
|
+
"click": "Chat",
|
|
685
|
+
"note": "replace with the real label/icon name of the chat entry point"
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
"click": "New chat",
|
|
689
|
+
"optional": true
|
|
690
|
+
},
|
|
691
|
+
{
|
|
692
|
+
"fill": {
|
|
693
|
+
"placeholder": "Ask",
|
|
694
|
+
"value": "Give me an overview of the market today and what to watch this month."
|
|
695
|
+
}
|
|
696
|
+
},
|
|
697
|
+
{
|
|
698
|
+
"press": "Enter"
|
|
699
|
+
},
|
|
700
|
+
{
|
|
701
|
+
"measureResponse": {
|
|
702
|
+
"selector": "[data-role=assistant], .assistant-message, [data-message-author=assistant]",
|
|
703
|
+
"timeout": 90000
|
|
704
|
+
},
|
|
705
|
+
"note": "replace selector with the real assistant-message container"
|
|
706
|
+
},
|
|
707
|
+
{
|
|
708
|
+
"click": "Save to notes",
|
|
709
|
+
"note": "replace with the real save/add-to-notes control"
|
|
710
|
+
},
|
|
711
|
+
{
|
|
712
|
+
"waitForText": "Saved",
|
|
713
|
+
"optional": true
|
|
714
|
+
},
|
|
715
|
+
{
|
|
716
|
+
"click": "Notes"
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
"screenshot": "notes-after-save"
|
|
720
|
+
}
|
|
721
|
+
]
|
|
722
|
+
},
|
|
723
|
+
"suresh-find-notes": {
|
|
724
|
+
"title": "Find previous notes and chats",
|
|
725
|
+
"steps": [
|
|
726
|
+
{
|
|
727
|
+
"goto": "/"
|
|
728
|
+
},
|
|
729
|
+
{
|
|
730
|
+
"click": "Notes"
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"screenshot": "notes"
|
|
734
|
+
},
|
|
735
|
+
{
|
|
736
|
+
"click": "History",
|
|
737
|
+
"optional": true,
|
|
738
|
+
"note": "replace with where past chats live"
|
|
739
|
+
},
|
|
740
|
+
{
|
|
741
|
+
"screenshot": "history"
|
|
742
|
+
}
|
|
743
|
+
]
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
}
|