waygraph 0.15.4 → 0.15.5

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.
@@ -677,11 +677,16 @@ export class AutoSession {
677
677
  */
678
678
  async applyHighlight(fixtures) {
679
679
  this.page = await ensureLivePage(this.context, this.page, this.startUrl);
680
- const label = fixtures.clear === true
681
- ? "clear fixtures"
682
- : `${fixtures.rings?.length ?? 0} ring(s)` +
683
- (fixtures.todos?.length ? `, ${fixtures.todos.length} todo(s)` : "");
684
- await showPilotActivity(this.page, `Highlight: ${label}`);
680
+ const detail = fixtures.clear === true
681
+ ? "clear"
682
+ : [
683
+ fixtures.rings?.length ? `${fixtures.rings.length} ring(s)` : null,
684
+ fixtures.todos?.length ? `${fixtures.todos.length} todo(s)` : null,
685
+ ]
686
+ .filter(Boolean)
687
+ .join(", ") || "fixtures";
688
+ // Same bottom-left activity toast as Running (Dom)/(Block) - agent narration.
689
+ await showPilotActivity(this.page, `Highlighting: ${detail}`);
685
690
  try {
686
691
  const { painted, missing } = await showPilotFixtures(this.page, fixtures);
687
692
  const menu = await this.currentMenu();
@@ -61,9 +61,10 @@ export declare function showPilotVision(page: Page, selector: string, label: str
61
61
  export type PilotFixtureRing = {
62
62
  selector: string;
63
63
  label: string;
64
- tone?: HighlightTone;
65
- size?: "sm" | "md" | "lg";
66
- weight?: "normal" | "bold";
64
+ /** Any {@link HighlightTone} or alias (`error`/`blue`/…). Normalized on paint. */
65
+ tone?: HighlightTone | string;
66
+ size?: "sm" | "md" | "lg" | string;
67
+ weight?: "normal" | "bold" | string;
67
68
  };
68
69
  /**
69
70
  * Agent-sent highlight fixtures for a live Pilot / auto session.
@@ -1,4 +1,4 @@
1
- import { WAYGRAPH_RING_CSS } from "./highlights.js";
1
+ import { WAYGRAPH_RING_CSS, normalizeHighlightTone, normalizeHighlightSize, normalizeHighlightWeight, toneIconPrefix } from "./highlights.js";
2
2
  // Real, direct user request: this overlay's own colors were an improvised
3
3
  // purple/white scheme (#a78bfa / #1a1033) that didn't match anything else -
4
4
  // "our design here seems like barely shares with the ui on the stepper
@@ -265,7 +265,20 @@ export async function showPilotFixtures(page, fixtures) {
265
265
  : fixtures.holdMs === undefined
266
266
  ? 12_000
267
267
  : Math.max(0, fixtures.holdMs);
268
- const rings = fixtures.clear ? [] : (fixtures.rings ?? []);
268
+ const rings = (fixtures.clear ? [] : (fixtures.rings ?? [])).map((r) => {
269
+ const tone = normalizeHighlightTone(r.tone);
270
+ const size = normalizeHighlightSize(r.size);
271
+ const weight = normalizeHighlightWeight(r.weight);
272
+ const icon = toneIconPrefix(tone);
273
+ const label = icon && !r.label.startsWith(icon) ? `${icon} ${r.label}` : r.label;
274
+ return {
275
+ selector: r.selector,
276
+ label,
277
+ tone,
278
+ size,
279
+ weight,
280
+ };
281
+ });
269
282
  const todos = fixtures.clear ? [] : (fixtures.todos ?? []);
270
283
  const todoIndex = fixtures.todoIndex ?? 0;
271
284
  const todoTitle = fixtures.todoTitle ?? "Plan";
@@ -293,9 +306,9 @@ export async function showPilotFixtures(page, fixtures) {
293
306
  missing.push(ring.selector);
294
307
  continue;
295
308
  }
296
- const tone = ring.tone || "planned";
297
- const size = ring.size === "sm" || ring.size === "lg" ? ring.size : "md";
298
- const weight = ring.weight === "bold" ? "bold" : "normal";
309
+ const tone = ring.tone;
310
+ const size = ring.size;
311
+ const weight = ring.weight;
299
312
  const pad = size === "sm" ? 3 : size === "lg" ? 10 : 6;
300
313
  const ringEl = document.createElement("div");
301
314
  ringEl.className = "wg-pilot-fx-ring";
@@ -0,0 +1,4 @@
1
+ (node:223602) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.
2
+ (Use `node --trace-warnings ...` to show where the warning was created)
3
+ (node:223602) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.
4
+ (Use `node --trace-warnings ...` to show where the warning was created)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "waygraph",
3
- "version": "0.15.4",
3
+ "version": "0.15.5",
4
4
  "type": "module",
5
5
  "description": "A typed graph of reusable Blocks for driving a browser through E2E flows.",
6
6
  "license": "MIT",
@@ -34,8 +34,9 @@ waygraph auto highlight <sessionId> '{"rings":[{"selector":"#user-name","label":
34
34
  waygraph auto highlight <sessionId> '{"clear":true}'
35
35
  ```
36
36
 
37
- - `tone`: `planned` (purple, default) | `auto` | `info` | `warning` | `danger` | `success` (pilot `orange` is for `auto dom` vision only)
37
+ - `tone`: all demo tones - `planned` | `auto` | `info` | `warning` | `danger` | `success` | `orange` (aliases like `error`/`blue`/`green` work too)
38
38
  - `holdMs`: ms to keep fixtures; `0` = until the next highlight / clear (default 12000)
39
+ - Bottom-left toast shows `Highlighting: …` (same strip as `Running (Dom): …`)
39
40
  - Missing selectors are listed in the JSON response (`missing`) - not a hard failure
40
41
  - Does not replace `auto send` - paint, then run the real Block
41
42