@ytspar/sweetlink 1.18.0 → 1.20.0

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.
Files changed (78) hide show
  1. package/README.md +40 -0
  2. package/dist/cli/outputSchemas.d.ts +57 -1
  3. package/dist/cli/outputSchemas.d.ts.map +1 -1
  4. package/dist/cli/outputSchemas.js +36 -1
  5. package/dist/cli/outputSchemas.js.map +1 -1
  6. package/dist/cli/sweetlink.js +537 -36
  7. package/dist/cli/sweetlink.js.map +1 -1
  8. package/dist/daemon/browser.d.ts.map +1 -1
  9. package/dist/daemon/browser.js.map +1 -1
  10. package/dist/daemon/client.d.ts +7 -0
  11. package/dist/daemon/client.d.ts.map +1 -1
  12. package/dist/daemon/client.js +16 -2
  13. package/dist/daemon/client.js.map +1 -1
  14. package/dist/daemon/demo.d.ts.map +1 -1
  15. package/dist/daemon/demo.js +6 -2
  16. package/dist/daemon/demo.js.map +1 -1
  17. package/dist/daemon/diff.d.ts.map +1 -1
  18. package/dist/daemon/diff.js +5 -3
  19. package/dist/daemon/diff.js.map +1 -1
  20. package/dist/daemon/evidence.d.ts.map +1 -1
  21. package/dist/daemon/evidence.js +5 -5
  22. package/dist/daemon/evidence.js.map +1 -1
  23. package/dist/daemon/index.js +1 -1
  24. package/dist/daemon/index.js.map +1 -1
  25. package/dist/daemon/listeners.d.ts.map +1 -1
  26. package/dist/daemon/listeners.js +7 -5
  27. package/dist/daemon/listeners.js.map +1 -1
  28. package/dist/daemon/recording.d.ts +5 -0
  29. package/dist/daemon/recording.d.ts.map +1 -1
  30. package/dist/daemon/recording.js +34 -11
  31. package/dist/daemon/recording.js.map +1 -1
  32. package/dist/daemon/refs.d.ts.map +1 -1
  33. package/dist/daemon/refs.js.map +1 -1
  34. package/dist/daemon/server.d.ts.map +1 -1
  35. package/dist/daemon/server.js +419 -80
  36. package/dist/daemon/server.js.map +1 -1
  37. package/dist/daemon/summary.d.ts +1 -1
  38. package/dist/daemon/summary.d.ts.map +1 -1
  39. package/dist/daemon/types.d.ts +1 -1
  40. package/dist/daemon/types.d.ts.map +1 -1
  41. package/dist/daemon/types.js.map +1 -1
  42. package/dist/daemon/viewer.d.ts +1 -1
  43. package/dist/daemon/viewer.d.ts.map +1 -1
  44. package/dist/daemon/viewer.js +18 -10
  45. package/dist/daemon/viewer.js.map +1 -1
  46. package/dist/ruler.js +3 -1
  47. package/dist/ruler.js.map +1 -1
  48. package/dist/runs.d.ts +34 -0
  49. package/dist/runs.d.ts.map +1 -0
  50. package/dist/runs.js +61 -0
  51. package/dist/runs.js.map +1 -0
  52. package/dist/server/index.d.ts.map +1 -1
  53. package/dist/server/index.js +20 -10
  54. package/dist/server/index.js.map +1 -1
  55. package/dist/simulator/android.d.ts +35 -0
  56. package/dist/simulator/android.d.ts.map +1 -0
  57. package/dist/simulator/android.js +127 -0
  58. package/dist/simulator/android.js.map +1 -0
  59. package/dist/simulator/ios.d.ts +39 -0
  60. package/dist/simulator/ios.d.ts.map +1 -0
  61. package/dist/simulator/ios.js +123 -0
  62. package/dist/simulator/ios.js.map +1 -0
  63. package/dist/term/ansi.d.ts +37 -0
  64. package/dist/term/ansi.d.ts.map +1 -0
  65. package/dist/term/ansi.js +205 -0
  66. package/dist/term/ansi.js.map +1 -0
  67. package/dist/term/player.d.ts +25 -0
  68. package/dist/term/player.d.ts.map +1 -0
  69. package/dist/term/player.js +243 -0
  70. package/dist/term/player.js.map +1 -0
  71. package/dist/term/recorder.d.ts +33 -0
  72. package/dist/term/recorder.d.ts.map +1 -0
  73. package/dist/term/recorder.js +77 -0
  74. package/dist/term/recorder.js.map +1 -0
  75. package/dist/vite.d.ts.map +1 -1
  76. package/dist/vite.js +8 -4
  77. package/dist/vite.js.map +1 -1
  78. package/package.json +1 -1
package/README.md CHANGED
@@ -13,6 +13,7 @@ Sweetlink enables Claude AI agents to autonomously debug, test, and iterate on w
13
13
  ## Features
14
14
 
15
15
  - **📸 Screenshots** - Capture full page or element-specific screenshots (html2canvas + CDP)
16
+ - **🧭 Inspect Context** - One command for screenshot paths, refs, console/network deltas, a11y, vitals, and next actions
16
17
  - **🖱️ Screenshot Button** - One-click screenshot capture with console logs from browser UI
17
18
  - **🔍 DOM Queries** - Query and inspect DOM elements with CSS selectors
18
19
  - **📊 Console Logs** - Capture and filter browser console output with JSON/summary formats
@@ -171,13 +172,52 @@ Add to your package.json for CLI access:
171
172
  Then use:
172
173
 
173
174
  ```bash
175
+ pnpm sweetlink inspect --url http://localhost:3000
174
176
  pnpm sweetlink screenshot
175
177
  pnpm sweetlink logs
176
178
  pnpm sweetlink query --selector "h1"
177
179
  ```
178
180
 
181
+ ## Agent Protocol
182
+
183
+ For LLM-driven frontend work, prefer a repeatable evidence loop:
184
+
185
+ ```bash
186
+ # Inspect: generate the state bundle an agent should reason from
187
+ pnpm sweetlink inspect --url http://localhost:3000 --label "initial state" --json
188
+
189
+ # Act: use @e refs from snapshot.md/context.json, not brittle CSS selectors
190
+ pnpm sweetlink click @e2 --url http://localhost:3000 --json
191
+
192
+ # Verify: rerun inspect after the DOM or visual state changes
193
+ pnpm sweetlink inspect --url http://localhost:3000 --label "after action" --expected "Menu opens" --json
194
+
195
+ # Record: when evidence needs to travel with a PR
196
+ pnpm sweetlink record start --url http://localhost:3000
197
+ pnpm sweetlink record stop
198
+ ```
199
+
200
+ `inspect` creates `.sweetlink/inspect/<timestamp-label>/SUMMARY.md`, `context.json`, `screenshot.png`, `snapshot.md`, `console.txt`, `network.txt`, and `a11y.json`. Agents should read `SUMMARY.md` first, use `@e` refs for `click`, `fill`, and `press`, retry stale refs by rerunning `inspect`, and attach the summary plus screenshot or recording artifacts to handoffs and PRs.
201
+
179
202
  ## CLI Usage
180
203
 
204
+ ### Inspect Context
205
+
206
+ ```bash
207
+ # Human-readable summary with artifact paths
208
+ pnpm sweetlink inspect --url http://localhost:3000 --label "checkout review"
209
+
210
+ # Stable JSON schema for agents
211
+ pnpm sweetlink inspect --url http://localhost:3000 --json
212
+
213
+ # Add expected outcome and action transcript to the evidence bundle
214
+ pnpm sweetlink inspect --url http://localhost:3000 \
215
+ --expected "Save button remains enabled" \
216
+ --action "clicked promo warning"
217
+ ```
218
+
219
+ The `context` alias is equivalent to `inspect`.
220
+
181
221
  ### Screenshots
182
222
 
183
223
  ```bash
@@ -7,7 +7,7 @@
7
7
  export interface JsonEnvelope<T = unknown> {
8
8
  ok: boolean;
9
9
  command: string;
10
- data: T;
10
+ data: T | null;
11
11
  error?: string;
12
12
  duration: number;
13
13
  }
@@ -105,6 +105,62 @@ export interface SnapshotData {
105
105
  }>;
106
106
  diff?: string;
107
107
  }
108
+ export interface InspectData {
109
+ url: string;
110
+ title: string;
111
+ generatedAt: string;
112
+ viewport: {
113
+ width: number;
114
+ height: number;
115
+ deviceScaleFactor?: number;
116
+ };
117
+ vitals: {
118
+ fcp: number | null;
119
+ pageSize: number | null;
120
+ };
121
+ artifacts: {
122
+ dir: string;
123
+ summaryMarkdown: string;
124
+ contextJson: string;
125
+ screenshotPng: string;
126
+ snapshotMarkdown: string;
127
+ consoleText: string;
128
+ networkText: string;
129
+ a11yJson?: string;
130
+ };
131
+ counts: {
132
+ refs: number;
133
+ consoleEntries: number;
134
+ consoleErrors: number;
135
+ consoleWarnings: number;
136
+ networkEntries: number;
137
+ networkFailures: number;
138
+ a11yViolations?: number;
139
+ a11yIncomplete?: number;
140
+ };
141
+ refs: Array<{
142
+ ref: string;
143
+ role: string;
144
+ name: string;
145
+ }>;
146
+ console: {
147
+ entries: unknown[];
148
+ formatted: string;
149
+ };
150
+ network: {
151
+ entries: unknown[];
152
+ formatted: string;
153
+ };
154
+ a11y?: unknown;
155
+ failureArtifacts: string[];
156
+ nextActions: string[];
157
+ expectedOutcome?: string;
158
+ actionTranscript?: Array<{
159
+ action: string;
160
+ target?: string;
161
+ result?: string;
162
+ }>;
163
+ }
108
164
  export declare const SCHEMAS: Record<string, string>;
109
165
  /**
110
166
  * Write a JSON envelope to stdout. Used in --json mode.
@@ -1 +1 @@
1
- {"version":3,"file":"outputSchemas.d.ts","sourceRoot":"","sources":["../../src/cli/outputSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACnF,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAcD,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAgI1C,CAAC;AAMF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAErD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBxD"}
1
+ {"version":3,"file":"outputSchemas.d.ts","sourceRoot":"","sources":["../../src/cli/outputSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACvC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACnF,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACxD,SAAS,EAAE;QACT,GAAG,EAAE,MAAM,CAAC;QACZ,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,IAAI,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzD,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChF;AAcD,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoK1C,CAAC;AAMF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAErD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBxD"}
@@ -10,7 +10,7 @@
10
10
  const ENVELOPE_SCHEMA = `interface JsonEnvelope<T> {
11
11
  ok: boolean;
12
12
  command: string;
13
- data: T;
13
+ data: T | null;
14
14
  error?: string;
15
15
  duration: number;
16
16
  }`;
@@ -100,6 +100,41 @@ export const SCHEMAS = {
100
100
  tree: string;
101
101
  refs?: Array<{ ref: string; role: string; name: string }>;
102
102
  diff?: string;
103
+ }`,
104
+ inspect: `interface InspectData {
105
+ url: string;
106
+ title: string;
107
+ generatedAt: string;
108
+ viewport: { width: number; height: number; deviceScaleFactor?: number };
109
+ vitals: { fcp: number | null; pageSize: number | null };
110
+ artifacts: {
111
+ dir: string;
112
+ summaryMarkdown: string;
113
+ contextJson: string;
114
+ screenshotPng: string;
115
+ snapshotMarkdown: string;
116
+ consoleText: string;
117
+ networkText: string;
118
+ a11yJson?: string;
119
+ };
120
+ counts: {
121
+ refs: number;
122
+ consoleEntries: number;
123
+ consoleErrors: number;
124
+ consoleWarnings: number;
125
+ networkEntries: number;
126
+ networkFailures: number;
127
+ a11yViolations?: number;
128
+ a11yIncomplete?: number;
129
+ };
130
+ refs: Array<{ ref: string; role: string; name: string }>;
131
+ console: { entries: unknown[]; formatted: string };
132
+ network: { entries: unknown[]; formatted: string };
133
+ a11y?: unknown;
134
+ failureArtifacts: string[];
135
+ nextActions: string[];
136
+ expectedOutcome?: string;
137
+ actionTranscript?: Array<{ action: string; target?: string; result?: string }>;
103
138
  }`,
104
139
  console: `interface ConsoleData {
105
140
  formatted: string;
@@ -1 +1 @@
1
- {"version":3,"file":"outputSchemas.js","sourceRoot":"","sources":["../../src/cli/outputSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAyHH,+EAA+E;AAC/E,+CAA+C;AAC/C,+EAA+E;AAE/E,MAAM,eAAe,GAAG;;;;;;EAMtB,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAA2B;IAC7C,UAAU,EAAE;;;;;;EAMZ;IAEA,KAAK,EAAE;;;;EAIP;IAEA,IAAI,EAAE;;;;;;EAMN;IAEA,IAAI,EAAE;;EAEN;IAEA,KAAK,EAAE;;;;EAIP;IAEA,OAAO,EAAE;;EAET;IAEA,KAAK,EAAE;;;;;EAKP;IAEA,OAAO,EAAE;;;EAGT;IAEA,MAAM,EAAE;;;;EAIR;IAEA,OAAO,EAAE;;;;EAIT;IAEA,IAAI,EAAE;;;;EAIN;IAEA,MAAM,EAAE;;;EAGR;IAEA,OAAO,EAAE;;;;EAIT;IAEA,IAAI,EAAE;;;;EAIN;IAEA,MAAM,EAAE;;;;EAIR;IAEA,MAAM,EAAE;;;;;;EAMR;IAEA,QAAQ,EAAE;;;;EAIV;IAEA,OAAO,EAAE;;;;;;EAMT;IAEA,IAAI,EAAE;;;EAGN;IAEA,KAAK,EAAE;;EAEP;IAEA,MAAM,EAAE;;;;;;EAMR;CACD,CAAC;AAEF,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAsB;IAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,uBAAuB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"outputSchemas.js","sourceRoot":"","sources":["../../src/cli/outputSchemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6JH,+EAA+E;AAC/E,+CAA+C;AAC/C,+EAA+E;AAE/E,MAAM,eAAe,GAAG;;;;;;EAMtB,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAA2B;IAC7C,UAAU,EAAE;;;;;;EAMZ;IAEA,KAAK,EAAE;;;;EAIP;IAEA,IAAI,EAAE;;;;;;EAMN;IAEA,IAAI,EAAE;;EAEN;IAEA,KAAK,EAAE;;;;EAIP;IAEA,OAAO,EAAE;;EAET;IAEA,KAAK,EAAE;;;;;EAKP;IAEA,OAAO,EAAE;;;EAGT;IAEA,MAAM,EAAE;;;;EAIR;IAEA,OAAO,EAAE;;;;EAIT;IAEA,IAAI,EAAE;;;;EAIN;IAEA,MAAM,EAAE;;;EAGR;IAEA,OAAO,EAAE;;;;EAIT;IAEA,IAAI,EAAE;;;;EAIN;IAEA,MAAM,EAAE;;;;EAIR;IAEA,MAAM,EAAE;;;;;;EAMR;IAEA,QAAQ,EAAE;;;;EAIV;IAEA,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCT;IAEA,OAAO,EAAE;;;;;;EAMT;IAEA,IAAI,EAAE;;;EAGN;IAEA,KAAK,EAAE;;EAEP;IAEA,MAAM,EAAE;;;;;;EAMR;CACD,CAAC;AAEF,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAsB;IAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,uBAAuB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}