@eidra-umain/greenlight 0.7.5 → 0.7.7
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/README.md +64 -51
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +8 -3
- package/dist/cli/run.js.map +1 -1
- package/dist/pilot/network.d.ts +2 -0
- package/dist/pilot/network.d.ts.map +1 -1
- package/dist/pilot/network.js +24 -0
- package/dist/pilot/network.js.map +1 -1
- package/dist/pilot/pilot.d.ts +2 -0
- package/dist/pilot/pilot.d.ts.map +1 -1
- package/dist/pilot/pilot.js +6 -0
- package/dist/pilot/pilot.js.map +1 -1
- package/dist/pilot/prompts.d.ts +2 -2
- package/dist/pilot/prompts.d.ts.map +1 -1
- package/dist/pilot/prompts.js +37 -18
- package/dist/pilot/prompts.js.map +1 -1
- package/dist/planner/plan-runner.d.ts +1 -0
- package/dist/planner/plan-runner.d.ts.map +1 -1
- package/dist/planner/plan-runner.js +13 -0
- package/dist/planner/plan-runner.js.map +1 -1
- package/package.json +66 -66
package/README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<img src="assets/greenlight_banner.png" alt="GreenLight
|
|
2
|
+
<img src="assets/greenlight_banner.png" alt="GreenLight: AI-driven E2E Testing" width="500">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
# GreenLight
|
|
@@ -10,7 +10,10 @@ No selectors. No XPaths. No test IDs, drivers or glue code. Just describe what a
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
> [!WARNING]
|
|
14
|
+
> GreenLight is very new and not battle tested yet. YMMV.
|
|
15
|
+
|
|
16
|
+
**[How it works](#how-it-works)** | **[Quick start](#quick-start)** | **[Project configuration](#project-configuration)** | **[CLI](#cli)** | **[Test syntax](#test-syntax)** | **[Writing test steps](#writing-test-steps)** | **[Cached plans](#cached-plans)** | **[LLM setup](#llm-setup)** | **[Architecture](#architecture)** | **[Avoiding side effects](#avoiding-side-effects-in-your-app)** | **[CI/CD](#cicd)** | **[Contributing](#contributing)**
|
|
14
17
|
|
|
15
18
|
---
|
|
16
19
|
|
|
@@ -36,7 +39,7 @@ tests:
|
|
|
36
39
|
GreenLight understands form wizards, custom dropdowns, autocomplete fields, checkbox consent flows, complex date pickers and interactive maps. It fills in forms with realistic test data, handles before/after value comparisons, and works with any UI framework.
|
|
37
40
|
|
|
38
41
|
The first run uses the LLM Pilot to discover the right actions (the **pilot** run).
|
|
39
|
-
After that, GreenLight caches a concrete action plan and replays it without LLM calls
|
|
42
|
+
After that, GreenLight caches a concrete action plan and replays it without LLM calls, making subsequent runs fast and deterministic.
|
|
40
43
|
|
|
41
44
|
## Quick start
|
|
42
45
|
|
|
@@ -162,20 +165,20 @@ greenlight run --on-drift rerun # re-run with pilot on cached plan drift
|
|
|
162
165
|
|
|
163
166
|
## GreenLight philosophy compared to Gherkin/Cucumber
|
|
164
167
|
|
|
165
|
-
Traditional BDD tools like Cucumber use **Gherkin
|
|
168
|
+
Traditional BDD tools like Cucumber use **Gherkin**, a structured `Given/When/Then` syntax where every step requires a developer-written **step definition** (glue code) that maps the English phrase to actual browser automation with CSS selectors or XPaths.
|
|
166
169
|
|
|
167
170
|
GreenLight takes a different approach:
|
|
168
171
|
|
|
169
172
|
| | GreenLight | Gherkin (Cucumber) |
|
|
170
173
|
|---|---|---|
|
|
171
174
|
| **Test language** | Freeform plain English | Structured `Given/When/Then` keywords |
|
|
172
|
-
| **Element targeting** | AI resolves via accessibility tree
|
|
175
|
+
| **Element targeting** | AI resolves via accessibility tree, no selectors | Developers write glue code with selectors/XPaths |
|
|
173
176
|
| **Maintenance** | Tests survive UI refactors that don't change behavior | Selector changes break tests, requiring glue code updates |
|
|
174
177
|
| **Authoring** | Non-technical testers, no code required | Readable specs, but developers must write step definitions |
|
|
175
|
-
| **Determinism** | Cached plans are deterministic; discovery runs have LLM variability | Fully deterministic
|
|
178
|
+
| **Determinism** | Cached plans are deterministic; discovery runs have LLM variability | Fully deterministic, same input, same execution path |
|
|
176
179
|
| **Maturity** | New, LLM-dependent | Battle-tested (15+ years), broad ecosystem |
|
|
177
180
|
|
|
178
|
-
**In short:** Gherkin requires developers to bridge English and browser automation via step definitions. GreenLight uses AI as that bridge
|
|
181
|
+
**In short:** Gherkin requires developers to bridge English and browser automation via step definitions. GreenLight uses AI as that bridge, eliminating the glue code layer at the cost of introducing LLM-dependent variability.
|
|
179
182
|
|
|
180
183
|
## Test syntax
|
|
181
184
|
|
|
@@ -214,9 +217,9 @@ This section covers how GreenLight interprets your plain-English steps, what hap
|
|
|
214
217
|
|
|
215
218
|
When you write a step like `click the "Add to Cart" button`, GreenLight's **planner** (an LLM) converts it into a structured action before any browser interaction happens. Understanding this pipeline helps you write clearer steps:
|
|
216
219
|
|
|
217
|
-
1. **Planning
|
|
218
|
-
2. **Execution
|
|
219
|
-
3. **Caching
|
|
220
|
+
1. **Planning:** The LLM reads all your steps and classifies each one into an action type
|
|
221
|
+
2. **Execution:** The pilot executes each action against the live browser page
|
|
222
|
+
3. **Caching:** Successful runs are saved so future runs skip the LLM entirely
|
|
220
223
|
|
|
221
224
|
### Navigation
|
|
222
225
|
|
|
@@ -229,7 +232,7 @@ steps:
|
|
|
229
232
|
- navigate to About from the main menu # click a link (uses the live page)
|
|
230
233
|
```
|
|
231
234
|
|
|
232
|
-
**Tip:** Use quoted paths starting with `/` or `http` for direct navigation. For anything that requires finding and clicking a link, describe it naturally
|
|
235
|
+
**Tip:** Use quoted paths starting with `/` or `http` for direct navigation. For anything that requires finding and clicking a link, describe it naturally. GreenLight will resolve it against the live page.
|
|
233
236
|
|
|
234
237
|
### Clicking and interacting
|
|
235
238
|
|
|
@@ -279,7 +282,7 @@ steps:
|
|
|
279
282
|
- clear the category selection # dropdown: finds the reset/clear button
|
|
280
283
|
```
|
|
281
284
|
|
|
282
|
-
GreenLight automatically detects the element type and applies the right clearing strategy. For text inputs, it selects all and deletes. For filter chips, dropdowns, and multi-select tag inputs, it finds and clicks the nearest clear/remove/reset button
|
|
285
|
+
GreenLight automatically detects the element type and applies the right clearing strategy. For text inputs, it selects all and deletes. For filter chips, dropdowns, and multi-select tag inputs, it finds and clicks the nearest clear/remove/reset button, looking inside the element and at sibling elements for buttons matching common clear patterns (including localized labels like "Rensa").
|
|
283
286
|
|
|
284
287
|
### Typing and form fields
|
|
285
288
|
|
|
@@ -298,7 +301,7 @@ steps:
|
|
|
298
301
|
- select "Canada" from "Country" # works with native <select> and custom dropdowns
|
|
299
302
|
```
|
|
300
303
|
|
|
301
|
-
A single `select` step handles both opening the dropdown and choosing the option
|
|
304
|
+
A single `select` step handles both opening the dropdown and choosing the option. Don't split it into two steps.
|
|
302
305
|
|
|
303
306
|
### Autocomplete fields
|
|
304
307
|
|
|
@@ -318,7 +321,7 @@ steps:
|
|
|
318
321
|
- uncheck the "Newsletter" checkbox
|
|
319
322
|
```
|
|
320
323
|
|
|
321
|
-
Use `check`/`uncheck` instead of `click` for checkboxes
|
|
324
|
+
Use `check`/`uncheck` instead of `click` for checkboxes. This ensures correct toggle behavior for both native and custom checkbox implementations.
|
|
322
325
|
|
|
323
326
|
### Form filling
|
|
324
327
|
|
|
@@ -341,11 +344,11 @@ steps:
|
|
|
341
344
|
- Select Red - Green - Blue in the color picker # three sequential clicks
|
|
342
345
|
```
|
|
343
346
|
|
|
344
|
-
Each value becomes a separate click action. Use this for tabs, radio cards, multi-select UIs
|
|
347
|
+
Each value becomes a separate click action. Use this for tabs, radio cards, multi-select UIs, anything where you're clicking multiple items in sequence.
|
|
345
348
|
|
|
346
349
|
### Assertions
|
|
347
350
|
|
|
348
|
-
Any step starting with "check that" or "verify" is treated as an assertion
|
|
351
|
+
Any step starting with "check that" or "verify" is treated as an assertion. It validates page state without interacting:
|
|
349
352
|
|
|
350
353
|
```yaml
|
|
351
354
|
steps:
|
|
@@ -369,7 +372,7 @@ steps:
|
|
|
369
372
|
- verify there are at least 5 results
|
|
370
373
|
```
|
|
371
374
|
|
|
372
|
-
**Important:** Assertions with quoted text (like `"Order Confirmed"`) are resolved at plan time
|
|
375
|
+
**Important:** Assertions with quoted text (like `"Order Confirmed"`) are resolved at plan time, no LLM call needed at runtime. Assertions without quotes (like `check that the form is present`) require the live page to resolve.
|
|
373
376
|
|
|
374
377
|
### Random test data
|
|
375
378
|
|
|
@@ -382,11 +385,11 @@ steps:
|
|
|
382
385
|
- fill the "Description" field with some test data
|
|
383
386
|
```
|
|
384
387
|
|
|
385
|
-
For full forms with multiple fields, use the form filling syntax (`fill in the form with some test data`)
|
|
388
|
+
For full forms with multiple fields, use the form filling syntax (`fill in the form with some test data`). GreenLight inspects each field's label, type, and placeholder to generate appropriate data. The literal word "***random***" will trigger actual random data generation which is different for every run, even if the run is cached.
|
|
386
389
|
|
|
387
390
|
### Date and time pickers
|
|
388
391
|
|
|
389
|
-
GreenLight has built-in support for date/time pickers
|
|
392
|
+
GreenLight has built-in support for date/time pickers, including native HTML5 inputs and component-library widgets like MUI DateTimePicker with sectioned spinbuttons. No special syntax is needed; just describe what time to set using natural language:
|
|
390
393
|
|
|
391
394
|
```yaml
|
|
392
395
|
steps:
|
|
@@ -400,15 +403,15 @@ steps:
|
|
|
400
403
|
**How it works:**
|
|
401
404
|
|
|
402
405
|
1. The planner identifies date/time steps and extracts the time expression (e.g., "10 minutes from now")
|
|
403
|
-
2. [chrono-node](https://github.com/wanasit/chrono) parses the expression into an exact timestamp
|
|
406
|
+
2. [chrono-node](https://github.com/wanasit/chrono) parses the expression into an exact timestamp, no LLM needed for time math
|
|
404
407
|
3. GreenLight inspects the page's accessibility tree to find the picker elements
|
|
405
408
|
4. Values are filled into the correct fields automatically
|
|
406
409
|
|
|
407
410
|
**Supported picker types:**
|
|
408
411
|
|
|
409
|
-
- **Native HTML5** (`<input type="date">`, `datetime-local`, `time`)
|
|
410
|
-
- **Sectioned pickers** (MUI v7, etc.)
|
|
411
|
-
- **Multiple pickers on one page
|
|
412
|
+
- **Native HTML5** (`<input type="date">`, `datetime-local`, `time`): Filled with `YYYY-MM-DD`, `YYYY-MM-DDTHH:mm`, or `HH:mm`
|
|
413
|
+
- **Sectioned pickers** (MUI v7, etc.): Individual spinbutton sections (Day, Month, Year, Hours, Minutes) are each filled with the correct value
|
|
414
|
+
- **Multiple pickers on one page**: GreenLight matches "start" / "end" in the step text against picker group names to target the right one
|
|
412
415
|
|
|
413
416
|
**Supported time expressions:**
|
|
414
417
|
|
|
@@ -422,7 +425,7 @@ steps:
|
|
|
422
425
|
| `2026-06-15` | Explicit date |
|
|
423
426
|
| `2026-06-15 14:30` | Explicit date and time |
|
|
424
427
|
|
|
425
|
-
Date picker steps are always computed fresh
|
|
428
|
+
Date picker steps are always computed fresh. Even on cached plan replay, the timestamp is recalculated from the current time. This means tests with relative times like "10 minutes from now" never fail due to stale cached dates.
|
|
426
429
|
|
|
427
430
|
### Counting elements
|
|
428
431
|
|
|
@@ -445,7 +448,7 @@ steps:
|
|
|
445
448
|
- count the number of rows in the results table
|
|
446
449
|
```
|
|
447
450
|
|
|
448
|
-
**How it works:** GreenLight inspects the live page's accessibility tree to identify all elements matching the description. The LLM determines a common denominator (role, text pattern, or accessible name) that uniquely identifies the target elements, then counts all matches using exact text matching to avoid false positives from headings or breadcrumbs. The count is stored as a number in the value store
|
|
451
|
+
**How it works:** GreenLight inspects the live page's accessibility tree to identify all elements matching the description. The LLM determines a common denominator (role, text pattern, or accessible name) that uniquely identifies the target elements, then counts all matches using exact text matching to avoid false positives from headings or breadcrumbs. The count is stored as a number in the value store, the same mechanism used by `remember`, so it works seamlessly with `check that ... has decreased/increased` comparisons.
|
|
449
452
|
|
|
450
453
|
When a step checks that the number of visible elements equals a remembered value, GreenLight automatically splits it into a count + compare: first count the elements, then compare the count against the stored variable.
|
|
451
454
|
|
|
@@ -476,7 +479,7 @@ This flow generates a random value, captures it, performs an action, and then ve
|
|
|
476
479
|
|
|
477
480
|
### Conditional steps
|
|
478
481
|
|
|
479
|
-
Conditional steps let you handle pages that may look different between runs
|
|
482
|
+
Conditional steps let you handle pages that may look different between runs: cookie banners, feature flags, A/B tests, or optional UI elements.
|
|
480
483
|
|
|
481
484
|
#### Inline conditionals
|
|
482
485
|
|
|
@@ -506,7 +509,7 @@ steps:
|
|
|
506
509
|
- search for "headphones"
|
|
507
510
|
```
|
|
508
511
|
|
|
509
|
-
The `else` block is optional. Block conditionals are flattened to inline conditionals at load time
|
|
512
|
+
The `else` block is optional. Block conditionals are flattened to inline conditionals at load time. The planner and pilot handle them the same way.
|
|
510
513
|
|
|
511
514
|
#### Supported conditions
|
|
512
515
|
|
|
@@ -518,7 +521,7 @@ If the condition is false and there's no `else`, the step is simply skipped (not
|
|
|
518
521
|
|
|
519
522
|
### Map testing
|
|
520
523
|
|
|
521
|
-
GreenLight has built-in support for testing interactive WebGL maps. When a step mentions maps, markers, layers, or zoom levels, GreenLight detects the map library, attaches to its instance, and queries rendered features directly
|
|
524
|
+
GreenLight has built-in support for testing interactive WebGL maps. When a step mentions maps, markers, layers, or zoom levels, GreenLight detects the map library, attaches to its instance, and queries rendered features directly, bypassing the DOM (WebGL canvas content is invisible to the accessibility tree).
|
|
522
525
|
|
|
523
526
|
```yaml
|
|
524
527
|
steps:
|
|
@@ -528,16 +531,16 @@ steps:
|
|
|
528
531
|
- check that the "hospitals" layer is visible on the map
|
|
529
532
|
```
|
|
530
533
|
|
|
531
|
-
Currently supported: **MapLibre GL JS**. The architecture is pluggable
|
|
534
|
+
Currently supported: **MapLibre GL JS**. The architecture is pluggable. Mapbox GL and Leaflet adapters can be added.
|
|
532
535
|
|
|
533
|
-
**How it works:** When a step mentions map-related content, GreenLight automatically inserts a map detection step. Map assertions query the actual rendered vector tile features (place names, road labels, etc.) and viewport state (center, zoom, bounds, layers)
|
|
536
|
+
**How it works:** When a step mentions map-related content, GreenLight automatically inserts a map detection step. Map assertions query the actual rendered vector tile features (place names, road labels, etc.) and viewport state (center, zoom, bounds, layers), not the DOM.
|
|
534
537
|
|
|
535
538
|
**Map instance detection** works automatically for most setups:
|
|
536
539
|
|
|
537
|
-
1. **React apps** (react-map-gl, etc.)
|
|
538
|
-
2. **Vue apps
|
|
539
|
-
3. **Global variables
|
|
540
|
-
4. **Explicit exposure
|
|
540
|
+
1. **React apps** (react-map-gl, etc.): Walks the React fiber tree
|
|
541
|
+
2. **Vue apps**: Checks `__vue_app__` / `__vue__` component trees
|
|
542
|
+
3. **Global variables**: Scans `window.map`, `window.mapInstance`, etc.
|
|
543
|
+
4. **Explicit exposure**: Set `window.__greenlight_map = map` for maximum reliability
|
|
541
544
|
|
|
542
545
|
### Reusable steps
|
|
543
546
|
|
|
@@ -560,25 +563,25 @@ tests:
|
|
|
560
563
|
|
|
561
564
|
### Tips for reliable tests
|
|
562
565
|
|
|
563
|
-
- **Be specific with quotes
|
|
564
|
-
- **One action per step
|
|
565
|
-
- **Use assertions liberally
|
|
566
|
-
- **Don't over-specify DOM structure
|
|
567
|
-
- **Conditional steps for flaky UI
|
|
566
|
+
- **Be specific with quotes.** `click "Submit"` is more reliable than `click the submit button` because it matches exact text.
|
|
567
|
+
- **One action per step.** Each step should describe one thing a user does. GreenLight splits compound steps, but explicit single-action steps are more predictable.
|
|
568
|
+
- **Use assertions liberally.** After key actions, add a `check that` step to verify the expected outcome. This catches failures early and makes the test report more readable.
|
|
569
|
+
- **Don't over-specify DOM structure.** Say `click "Add to Cart"` not `click the button inside the product card div`. GreenLight uses the accessibility tree, not CSS selectors.
|
|
570
|
+
- **Conditional steps for flaky UI.** If a cookie banner or popup sometimes appears, use `click "Accept" if visible` instead of making it a required step.
|
|
568
571
|
|
|
569
572
|
### Robustness features
|
|
570
573
|
|
|
571
574
|
GreenLight includes several built-in mechanisms to handle real-world complexity:
|
|
572
575
|
|
|
573
|
-
- **Planner model escalation
|
|
574
|
-
- **Context length recovery
|
|
575
|
-
- **Large page handling
|
|
576
|
+
- **Planner model escalation.** When the fast pilot model fails to resolve a step, GreenLight automatically retries with the more capable planner model before giving up. This catches cases where the cheaper model can't make a tricky element mapping.
|
|
577
|
+
- **Context length recovery.** If the LLM's context window is exceeded (common on pages with large DOM trees), GreenLight clears conversation history and retries with a fresh context instead of aborting the test run.
|
|
578
|
+
- **Large page handling.** Pages with many repeated elements (e.g. a list of many product cards with lots of detail) get an automatically compressed accessibility tree: the first few items are shown in full, and the rest are summarized as one-liners. This keeps the input within token limits while preserving all element names for targeting.
|
|
576
579
|
|
|
577
580
|
## Cached plans
|
|
578
581
|
|
|
579
582
|
The first run of a test uses LLM calls to discover the right browser actions (**discovery run**). After a successful run, GreenLight caches the concrete action sequence as a **heuristic plan** in `.greenlight/plans/`.
|
|
580
583
|
|
|
581
|
-
Subsequent runs replay the cached plan directly via Playwright
|
|
584
|
+
Subsequent runs replay the cached plan directly via Playwright, no LLM calls, no API costs, significantly faster. If you change the test steps in YAML, the hash changes and GreenLight automatically re-discovers.
|
|
582
585
|
|
|
583
586
|
```bash
|
|
584
587
|
greenlight run # uses cached plans where available
|
|
@@ -619,14 +622,14 @@ provider: openai
|
|
|
619
622
|
greenlight run --provider gemini
|
|
620
623
|
```
|
|
621
624
|
|
|
622
|
-
Only one provider is active at a time. OpenRouter is the default
|
|
625
|
+
Only one provider is active at a time. OpenRouter is the default. It lets you access models from all vendors through a single API key, which is the easiest way to get started.
|
|
623
626
|
|
|
624
627
|
### Model selection
|
|
625
628
|
|
|
626
629
|
GreenLight uses the LLM in two distinct roles with different requirements:
|
|
627
630
|
|
|
628
|
-
- **Planner
|
|
629
|
-
- **Pilot
|
|
631
|
+
- **Planner**: Interprets the test steps, splits compound actions, and expands form-filling steps. This runs once per test case and benefits from a more capable model for consistent, correct results.
|
|
632
|
+
- **Pilot**: Resolves individual steps against the live page (picking which element to click/type). This runs many times per test and should use a fast, inexpensive model to keep costs and execution time low.
|
|
630
633
|
|
|
631
634
|
Configure both in `greenlight.yaml`:
|
|
632
635
|
|
|
@@ -723,14 +726,14 @@ flowchart TD
|
|
|
723
726
|
orchestrator --> output
|
|
724
727
|
```
|
|
725
728
|
|
|
726
|
-
**Discovery run:**
|
|
729
|
+
**Discovery run:** Capture page state (a11y tree with stable refs) → LLM determines action → execute via Playwright → record for cache.
|
|
727
730
|
|
|
728
|
-
**Cached run:**
|
|
731
|
+
**Cached run:** Replay stored actions directly via Playwright, no LLM calls, no API costs.
|
|
729
732
|
|
|
730
733
|
## Documentation
|
|
731
734
|
|
|
732
|
-
- [Specifications](docs/specifications.md)
|
|
733
|
-
- [Implementation Plan](docs/implementation.md)
|
|
735
|
+
- [Specifications](docs/specifications.md): Full feature spec, technology decisions, MCP strategy
|
|
736
|
+
- [Implementation Plan](docs/implementation.md): Step-by-step build plan
|
|
734
737
|
|
|
735
738
|
## Avoiding side effects in your app
|
|
736
739
|
|
|
@@ -767,7 +770,7 @@ if (!req.isE2ETest) {
|
|
|
767
770
|
}
|
|
768
771
|
```
|
|
769
772
|
|
|
770
|
-
The header is only added to same-origin requests
|
|
773
|
+
The header is only added to same-origin requests. Cross-origin requests to CDNs, tile servers, and third-party APIs are not affected. This avoids triggering CORS preflight requests on external services.
|
|
771
774
|
|
|
772
775
|
## CI/CD
|
|
773
776
|
|
|
@@ -779,3 +782,13 @@ The header is only added to same-origin requests — cross-origin requests to CD
|
|
|
779
782
|
```
|
|
780
783
|
|
|
781
784
|
Exit code 0 on all-pass, non-zero on any failure.
|
|
785
|
+
|
|
786
|
+
## Contributing
|
|
787
|
+
|
|
788
|
+
GreenLight is an internal project at [Umain AB](https://umain.com) and is still in alpha. Things move fast and APIs may change. That said, we'd love contributions from anyone who finds the project useful or interesting.
|
|
789
|
+
|
|
790
|
+
**Pull requests are welcome.** Whether it's a bug fix, a new feature, improved docs, or a wild idea: Open a PR and we'll take a look. We don't have a formal contributing guide yet, so just keep your changes focused and include a short description of what you changed and why.
|
|
791
|
+
|
|
792
|
+
**A note on issues:** We've disabled the issue tracker for now. If you run into a problem or have an idea, the best way forward is to submit a PR. We're a small team and would rather review code than triage tickets at this stage.
|
|
793
|
+
|
|
794
|
+
Thanks for checking out GreenLight. We're excited to see where it goes.
|
package/dist/cli/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAmD5C,6DAA6D;AAC7D,wBAAsB,cAAc,CACnC,UAAU,EAAE,MAAM,EAAE,EACpB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,GACf,OAAO,CAAC,IAAI,CAAC,CA4Cf;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC/B,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAmD5C,6DAA6D;AAC7D,wBAAsB,cAAc,CACnC,UAAU,EAAE,MAAM,EAAE,EACpB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,SAAS,GACf,OAAO,CAAC,IAAI,CAAC,CA4Cf;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC/B,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,IAAI,CAAC,CAkZf"}
|
package/dist/cli/run.js
CHANGED
|
@@ -234,7 +234,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
234
234
|
const context = persistentContext ?? (await createContext(browser, browserOpts));
|
|
235
235
|
const page = await createPage(context, { headed: browserOpts.headed });
|
|
236
236
|
const { drain } = attachConsoleCollector(page);
|
|
237
|
-
const { waitForNetworkIdle, invalidate: invalidateNetworkCache, lastIdleTiming } = attachNetworkTracker(page);
|
|
237
|
+
const { waitForNetworkIdle, invalidate: invalidateNetworkCache, lastIdleTiming, drainNavigationError } = attachNetworkTracker(page);
|
|
238
238
|
globals.trace.attachToPage(page);
|
|
239
239
|
try {
|
|
240
240
|
globals.trace.log("goto", baseUrl);
|
|
@@ -261,6 +261,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
261
261
|
waitForNetworkIdle,
|
|
262
262
|
invalidateNetworkCache,
|
|
263
263
|
lastIdleTiming,
|
|
264
|
+
drainNavigationError,
|
|
264
265
|
onStepComplete: printStepResult,
|
|
265
266
|
consoleDrain: drain,
|
|
266
267
|
});
|
|
@@ -287,7 +288,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
287
288
|
headed: browserOpts.headed,
|
|
288
289
|
});
|
|
289
290
|
const { drain: drain2 } = attachConsoleCollector(page2);
|
|
290
|
-
const { waitForNetworkIdle: waitForNetworkIdle2, invalidate: invalidateNetworkCache2, lastIdleTiming: lastIdleTiming2 } = attachNetworkTracker(page2);
|
|
291
|
+
const { waitForNetworkIdle: waitForNetworkIdle2, invalidate: invalidateNetworkCache2, lastIdleTiming: lastIdleTiming2, drainNavigationError: drainNavErr2 } = attachNetworkTracker(page2);
|
|
291
292
|
globals.trace.attachToPage(page2);
|
|
292
293
|
await page2.goto(baseUrl);
|
|
293
294
|
const modelLabel = typeof effectiveModel === "string"
|
|
@@ -301,6 +302,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
301
302
|
waitForNetworkIdle: waitForNetworkIdle2,
|
|
302
303
|
invalidateNetworkCache: invalidateNetworkCache2,
|
|
303
304
|
lastIdleTiming: lastIdleTiming2,
|
|
305
|
+
drainNavigationError: drainNavErr2,
|
|
304
306
|
onStepComplete: printStepResult,
|
|
305
307
|
});
|
|
306
308
|
result.mode = "pilot";
|
|
@@ -335,6 +337,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
335
337
|
waitForNetworkIdle,
|
|
336
338
|
invalidateNetworkCache,
|
|
337
339
|
lastIdleTiming,
|
|
340
|
+
drainNavigationError,
|
|
338
341
|
onStepComplete: printStepResult,
|
|
339
342
|
consoleDrain: drain,
|
|
340
343
|
});
|
|
@@ -354,7 +357,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
354
357
|
const ctx3 = persistentContext ?? (await createContext(browser, browserOpts));
|
|
355
358
|
const page3 = await createPage(ctx3, { headed: browserOpts.headed });
|
|
356
359
|
const { drain: drain3 } = attachConsoleCollector(page3);
|
|
357
|
-
const { waitForNetworkIdle: wni3, invalidate: inv3, lastIdleTiming: lit3 } = attachNetworkTracker(page3);
|
|
360
|
+
const { waitForNetworkIdle: wni3, invalidate: inv3, lastIdleTiming: lit3, drainNavigationError: dne3 } = attachNetworkTracker(page3);
|
|
358
361
|
globals.trace.attachToPage(page3);
|
|
359
362
|
await page3.goto(baseUrl);
|
|
360
363
|
// Fall through to normal pilot below with full steps
|
|
@@ -370,6 +373,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
370
373
|
waitForNetworkIdle: wni3,
|
|
371
374
|
invalidateNetworkCache: inv3,
|
|
372
375
|
lastIdleTiming: lit3,
|
|
376
|
+
drainNavigationError: dne3,
|
|
373
377
|
onStepComplete: printStepResult,
|
|
374
378
|
});
|
|
375
379
|
result.mode = "pilot";
|
|
@@ -414,6 +418,7 @@ export async function runCommand(config, resolvedFiles) {
|
|
|
414
418
|
waitForNetworkIdle,
|
|
415
419
|
invalidateNetworkCache,
|
|
416
420
|
lastIdleTiming,
|
|
421
|
+
drainNavigationError,
|
|
417
422
|
onStepComplete: printStepResult,
|
|
418
423
|
});
|
|
419
424
|
result = pilotResult;
|
package/dist/cli/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}
|
package/dist/pilot/network.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export declare function attachNetworkTracker(page: Page): {
|
|
|
22
22
|
invalidate: () => void;
|
|
23
23
|
/** Timing from the last waitForNetworkIdle call. */
|
|
24
24
|
lastIdleTiming: () => IdleTiming;
|
|
25
|
+
/** Drain the last navigation error (4xx/5xx), if any. Returns null if no error. */
|
|
26
|
+
drainNavigationError: () => string | null;
|
|
25
27
|
};
|
|
26
28
|
/**
|
|
27
29
|
* Collect console messages from a page.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/pilot/network.ts"],"names":[],"mappings":"AAgBA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD;;;;;GAKG;AACH,8DAA8D;AAC9D,MAAM,WAAW,UAAU;IAC1B,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG;IACjD,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,4EAA4E;IAC5E,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,oDAAoD;IACpD,cAAc,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/pilot/network.ts"],"names":[],"mappings":"AAgBA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGxD;;;;;GAKG;AACH,8DAA8D;AAC9D,MAAM,WAAW,UAAU;IAC1B,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG;IACjD,kBAAkB,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,4EAA4E;IAC5E,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,oDAAoD;IACpD,cAAc,EAAE,MAAM,UAAU,CAAA;IAChC,mFAAmF;IACnF,oBAAoB,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;CACzC,CA+JA;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG;IACnD,KAAK,EAAE,MAAM,YAAY,EAAE,CAAA;CAC3B,CAcA"}
|
package/dist/pilot/network.js
CHANGED
|
@@ -16,6 +16,25 @@
|
|
|
16
16
|
import { globals } from "../globals.js";
|
|
17
17
|
export function attachNetworkTracker(page) {
|
|
18
18
|
const pending = new Set();
|
|
19
|
+
let navigationError = null;
|
|
20
|
+
// Track navigation responses (document requests) for HTTP error detection
|
|
21
|
+
page.on("response", async (response) => {
|
|
22
|
+
const req = response.request();
|
|
23
|
+
if (req.resourceType() !== "document")
|
|
24
|
+
return;
|
|
25
|
+
const status = response.status();
|
|
26
|
+
if (status >= 400) {
|
|
27
|
+
let body = "";
|
|
28
|
+
try {
|
|
29
|
+
const text = await response.text();
|
|
30
|
+
// Extract a useful snippet — strip HTML tags and take the first 200 chars
|
|
31
|
+
body = text.replace(/<[^>]*>/g, " ").replace(/\s+/g, " ").trim().slice(0, 200);
|
|
32
|
+
}
|
|
33
|
+
catch { /* body not readable */ }
|
|
34
|
+
const msg = `HTTP ${String(status)} ${response.statusText()} at ${response.url().slice(0, 120)}`;
|
|
35
|
+
navigationError = body ? `${msg}\n${body}` : msg;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
19
38
|
/** Requests that don't affect page readiness. */
|
|
20
39
|
function isBackgroundRequest(req) {
|
|
21
40
|
const url = req.url();
|
|
@@ -148,6 +167,11 @@ export function attachNetworkTracker(page) {
|
|
|
148
167
|
lastIdleTiming() {
|
|
149
168
|
return _lastTiming;
|
|
150
169
|
},
|
|
170
|
+
drainNavigationError() {
|
|
171
|
+
const err = navigationError;
|
|
172
|
+
navigationError = null;
|
|
173
|
+
return err;
|
|
174
|
+
},
|
|
151
175
|
};
|
|
152
176
|
}
|
|
153
177
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/pilot/network.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,qCAAqC;AACrC,EAAE;AACF,gEAAgE;AAChE,iEAAiE;AACjE,iEAAiE;AACjE,sDAAsD;AACtD,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,+DAA+D;AAC/D,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;AAQxE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAgBvC,MAAM,UAAU,oBAAoB,CAAC,IAAU;
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/pilot/network.ts"],"names":[],"mappings":"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"}
|
package/dist/pilot/pilot.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export interface PilotOptions {
|
|
|
22
22
|
network: number;
|
|
23
23
|
content: number;
|
|
24
24
|
};
|
|
25
|
+
/** Drain the last navigation error (4xx/5xx). */
|
|
26
|
+
drainNavigationError?: () => string | null;
|
|
25
27
|
/** Capture post-step screenshots (default: false). */
|
|
26
28
|
screenshots?: boolean;
|
|
27
29
|
/** Called after each step completes, for live progress output. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pilot.d.ts","sourceRoot":"","sources":["../../src/pilot/pilot.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAGX,YAAY,EAGZ,UAAU,EAEV,cAAc,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAKhE,MAAM,WAAW,YAAY;IAC5B,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,kCAAkC;IAClC,YAAY,EAAE,MAAM,YAAY,EAAE,CAAA;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,iEAAiE;IACjE,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAA;IACnC,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3D,sDAAsD;IACtD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,kEAAkE;IAClE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;CAC7C;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAChC,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,EAC3C,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,YAAY,GACnB,OAAO,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"pilot.d.ts","sourceRoot":"","sources":["../../src/pilot/pilot.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAGX,YAAY,EAGZ,UAAU,EAEV,cAAc,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAQzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAKhE,MAAM,WAAW,YAAY;IAC5B,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,kCAAkC;IAClC,YAAY,EAAE,MAAM,YAAY,EAAE,CAAA;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,iEAAiE;IACjE,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAA;IACnC,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3D,iDAAiD;IACjD,oBAAoB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IAC1C,sDAAsD;IACtD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,kEAAkE;IAClE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;CAC7C;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAChC,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,EAC3C,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,YAAY,GACnB,OAAO,CAAC,cAAc,CAAC,CA8uBzB"}
|
package/dist/pilot/pilot.js
CHANGED
|
@@ -411,6 +411,9 @@ export async function runTestCase(page, testCase, llm, options) {
|
|
|
411
411
|
const idle = options.lastIdleTiming?.() ?? { network: idleDur, content: 0 };
|
|
412
412
|
timing.networkIdle = idle.network;
|
|
413
413
|
timing.contentIdle = idle.content;
|
|
414
|
+
const navErr = options.drainNavigationError?.();
|
|
415
|
+
if (navErr)
|
|
416
|
+
throw new Error(navErr);
|
|
414
417
|
t0 = performance.now();
|
|
415
418
|
const state = await capturePageState(page, options.consoleDrain, {
|
|
416
419
|
mapAdapter: mapAdapter ?? undefined,
|
|
@@ -434,6 +437,9 @@ export async function runTestCase(page, testCase, llm, options) {
|
|
|
434
437
|
timing.networkIdle = idle.network;
|
|
435
438
|
timing.contentIdle = idle.content;
|
|
436
439
|
}
|
|
440
|
+
const navErr = options.drainNavigationError?.();
|
|
441
|
+
if (navErr)
|
|
442
|
+
throw new Error(navErr);
|
|
437
443
|
trace.log("capture:start");
|
|
438
444
|
t0 = performance.now();
|
|
439
445
|
const state = await capturePageState(page, options.consoleDrain, {
|