@broberg/lens-daemon 0.1.46 → 0.1.47

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 (2) hide show
  1. package/package.json +1 -1
  2. package/src/flow.ts +8 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@broberg/lens-daemon",
3
- "version": "0.1.46",
3
+ "version": "0.1.47",
4
4
  "description": "The Lens module of the cardmem daemon (flows, critic, coverage, capture sessions, the /lens/* routes and the cardmem-lens MCP) as a package. The daemon mounts createLensRouter(deps) + createLensMcpRouter(deps). Bun runtime.",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/src/flow.ts CHANGED
@@ -3081,7 +3081,14 @@ export async function runFlow(flow: Flow, env: AuthEnv, opts: RunFlowOptions = {
3081
3081
  // at load has not ejected us, and comparing against what we asked for
3082
3082
  // would call that an ejection on every single run.
3083
3083
  if (formsAVerdict(step.type)) formedAVerdict = true;
3084
- if (NAVIGATES_BY_DESIGN.has(step.type)) {
3084
+ // F009.139 (jam, run 03c39df0) — the ejection guard watches the page under
3085
+ // test only. A step in an opened window or an extension popup acts on
3086
+ // ANOTHER page, whose own navigations (an OAuth dialog moving from account
3087
+ // switch to consent) are that window's business, not an ejection.
3088
+ const onPageUnderTest = (step as { in?: string }).in === undefined;
3089
+ if (!onPageUnderTest) {
3090
+ // nothing: the page under test was not touched by this step
3091
+ } else if (NAVIGATES_BY_DESIGN.has(step.type)) {
3085
3092
  urlAtLoad = safeUrl(sp) ?? urlAtLoad;
3086
3093
  // A goto is already settled — Playwright waited for it. Any OTHER
3087
3094
  // navigating action may commit after it returns, so it leaves a note