@lobu/connector-sdk 6.0.1 → 7.0.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 (58) hide show
  1. package/dist/browser/acquire.d.ts +7 -0
  2. package/dist/browser/acquire.d.ts.map +1 -1
  3. package/dist/browser/acquire.js +68 -16
  4. package/dist/browser/acquire.js.map +1 -1
  5. package/dist/browser/cdp-page.d.ts.map +1 -1
  6. package/dist/browser/cdp-page.js +40 -12
  7. package/dist/browser/cdp-page.js.map +1 -1
  8. package/dist/browser/launcher.d.ts +1 -2
  9. package/dist/browser/launcher.d.ts.map +1 -1
  10. package/dist/browser/launcher.js +1 -1
  11. package/dist/browser/launcher.js.map +1 -1
  12. package/dist/browser-network.d.ts +6 -0
  13. package/dist/browser-network.d.ts.map +1 -1
  14. package/dist/browser-network.js +78 -31
  15. package/dist/browser-network.js.map +1 -1
  16. package/dist/connector-types.d.ts +35 -0
  17. package/dist/connector-types.d.ts.map +1 -1
  18. package/dist/connector-types.js +3 -0
  19. package/dist/connector-types.js.map +1 -1
  20. package/dist/identity-normalize.d.ts +2 -0
  21. package/dist/identity-normalize.d.ts.map +1 -1
  22. package/dist/identity-normalize.js +28 -0
  23. package/dist/identity-normalize.js.map +1 -1
  24. package/dist/index.d.ts +3 -11
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -7
  27. package/dist/index.js.map +1 -1
  28. package/dist/logger.d.ts +5 -4
  29. package/dist/logger.d.ts.map +1 -1
  30. package/dist/logger.js +5 -7
  31. package/dist/logger.js.map +1 -1
  32. package/dist/retry.d.ts +6 -3
  33. package/dist/retry.d.ts.map +1 -1
  34. package/dist/retry.js +29 -33
  35. package/dist/retry.js.map +1 -1
  36. package/dist/types.d.ts +0 -164
  37. package/dist/types.d.ts.map +1 -1
  38. package/package.json +3 -4
  39. package/dist/api-paginated.d.ts +0 -79
  40. package/dist/api-paginated.d.ts.map +0 -1
  41. package/dist/api-paginated.js +0 -120
  42. package/dist/api-paginated.js.map +0 -1
  43. package/dist/base.d.ts +0 -66
  44. package/dist/base.d.ts.map +0 -1
  45. package/dist/base.js +0 -122
  46. package/dist/base.js.map +0 -1
  47. package/dist/browser-paginated.d.ts +0 -141
  48. package/dist/browser-paginated.d.ts.map +0 -1
  49. package/dist/browser-paginated.js +0 -269
  50. package/dist/browser-paginated.js.map +0 -1
  51. package/dist/http.d.ts +0 -18
  52. package/dist/http.d.ts.map +0 -1
  53. package/dist/http.js +0 -74
  54. package/dist/http.js.map +0 -1
  55. package/dist/paginated.d.ts +0 -93
  56. package/dist/paginated.d.ts.map +0 -1
  57. package/dist/paginated.js +0 -167
  58. package/dist/paginated.js.map +0 -1
@@ -26,6 +26,13 @@ export interface AcquireBrowserOptions {
26
26
  authDomains: string[];
27
27
  /** Use stealth/anti-detection mode for Playwright launch (default: false). */
28
28
  stealth?: boolean;
29
+ /**
30
+ * Persistent --user-data-dir for device-bound browser profiles. When set,
31
+ * Playwright launches via launchPersistentContext so cookies/localStorage
32
+ * are read from (and written to) this directory. CDP is skipped — the
33
+ * profile dir is the source of truth.
34
+ */
35
+ userDataDir?: string;
29
36
  }
30
37
  export interface AcquiredBrowser {
31
38
  /** Playwright Browser (null when using raw CDP). */
@@ -1 +1 @@
1
- {"version":3,"file":"acquire.d.ts","sourceRoot":"","sources":["../../src/browser/acquire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGxE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAOxC,MAAM,WAAW,qBAAqB;IACpC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,2DAA2D;IAC3D,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/B,uEAAuE;IACvE,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,wDAAwD;IACxD,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,8BAA8B;IAC9B,OAAO,EAAE,KAAK,GAAG,YAAY,CAAC;IAC9B,mFAAmF;IACnF,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;gBAE/C,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAW9D;AAMD;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyB1F"}
1
+ {"version":3,"file":"acquire.d.ts","sourceRoot":"","sources":["../../src/browser/acquire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGxE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAOxC,MAAM,WAAW,qBAAqB;IACpC,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,2DAA2D;IAC3D,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/B,uEAAuE;IACvE,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,wDAAwD;IACxD,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,8BAA8B;IAC9B,OAAO,EAAE,KAAK,GAAG,YAAY,CAAC;IAC9B,mFAAmF;IACnF,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;gBAE/C,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAW9D;AAMD;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAoC1F"}
@@ -44,6 +44,17 @@ export class BrowserAuthCascadeError extends Error {
44
44
  */
45
45
  export async function acquireBrowser(opts) {
46
46
  const attempts = [];
47
+ // --- Persistent profile path: cookies live in --user-data-dir ---
48
+ // Skip CDP entirely — the profile dir is authoritative for cookies/state.
49
+ if (opts.userDataDir) {
50
+ try {
51
+ return await acquireViaPersistent(opts);
52
+ }
53
+ catch (err) {
54
+ attempts.push({ layer: 'Playwright persistent', error: err.message });
55
+ throw new BrowserAuthCascadeError(attempts);
56
+ }
57
+ }
47
58
  // --- Layer 1: CDP ---
48
59
  if (opts.cdpUrl !== null && opts.cdpUrl !== undefined) {
49
60
  try {
@@ -85,25 +96,66 @@ async function acquireViaCdp(opts) {
85
96
  screenshotDir: '/tmp/feed-screenshots',
86
97
  };
87
98
  }
99
+ async function acquireViaPersistent(opts) {
100
+ const playwrightModule = 'playwright';
101
+ const { chromium } = await import(/* @vite-ignore */ playwrightModule);
102
+ const isDebug = process.env.BROWSER_DEBUG === '1';
103
+ const screenshotDir = process.env.BROWSER_SCREENSHOT_DIR ?? '/tmp/feed-screenshots';
104
+ const context = (await chromium.launchPersistentContext(opts.userDataDir, {
105
+ headless: !isDebug,
106
+ args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-dev-shm-usage'],
107
+ }));
108
+ try {
109
+ if (opts.cookies.length > 0) {
110
+ await context.addCookies(opts.cookies);
111
+ }
112
+ const pages = context.pages();
113
+ const page = pages.length > 0 ? pages[0] : await context.newPage();
114
+ sdkLogger.info({ userDataDir: opts.userDataDir, cookies: opts.cookies.length }, '[BrowserAcquire] Launched Playwright with persistent --user-data-dir');
115
+ return {
116
+ browser: context.browser() ?? null,
117
+ context,
118
+ page,
119
+ cdpPage: null,
120
+ cdpWsUrl: null,
121
+ backend: 'playwright',
122
+ ownsBrowser: true,
123
+ screenshotDir,
124
+ };
125
+ }
126
+ catch (err) {
127
+ // addCookies / newPage failed — close the persistent context so we
128
+ // don't leak a long-lived Chromium process holding the profile lock.
129
+ await context.close().catch(() => { });
130
+ throw err;
131
+ }
132
+ }
88
133
  async function acquireViaPlaywright(opts) {
89
- const { browser, screenshotDir } = await launchBrowser({}, {
134
+ const { browser, screenshotDir } = await launchBrowser({
90
135
  stealth: opts.stealth ?? false,
91
136
  });
92
- const context = (await browser.newContext());
93
- if (opts.cookies.length > 0) {
94
- await context.addCookies(opts.cookies);
137
+ try {
138
+ const context = (await browser.newContext());
139
+ if (opts.cookies.length > 0) {
140
+ await context.addCookies(opts.cookies);
141
+ }
142
+ sdkLogger.info({ cookies: opts.cookies.length }, '[BrowserAcquire] Launched Playwright with stored cookies');
143
+ const page = await context.newPage();
144
+ return {
145
+ browser: browser,
146
+ context,
147
+ page,
148
+ cdpPage: null,
149
+ cdpWsUrl: null,
150
+ backend: 'playwright',
151
+ ownsBrowser: true,
152
+ screenshotDir,
153
+ };
154
+ }
155
+ catch (err) {
156
+ // newContext/addCookies/newPage threw — don't leak the launched browser.
157
+ await browser.close().catch(() => { });
158
+ throw err;
95
159
  }
96
- sdkLogger.info({ cookies: opts.cookies.length }, '[BrowserAcquire] Launched Playwright with stored cookies');
97
- const page = await context.newPage();
98
- return {
99
- browser: browser,
100
- context,
101
- page,
102
- cdpPage: null,
103
- cdpWsUrl: null,
104
- backend: 'playwright',
105
- ownsBrowser: true,
106
- screenshotDir,
107
- };
108
160
  }
109
161
  //# sourceMappingURL=acquire.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"acquire.js","sourceRoot":"","sources":["../../src/browser/acquire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acquire.js","sourceRoot":"","sources":["../../src/browser/acquire.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cdp-page.d.ts","sourceRoot":"","sources":["../../src/browser/cdp-page.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,qBAAa,OAAO;IAClB,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAK;IAElB,OAAO;IAMP;;;OAGG;WACU,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8C3D,OAAO,CAAC,IAAI;IAiBZ,uDAAuD;IACjD,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB1F,0EAA0E;IACpE,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAevE;;;OAGG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAazF,uDAAuD;IACjD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,iCAAiC;IAC3B,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,gCAAgC;IAC1B,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAI5B,0BAA0B;IACpB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,oCAAoC;IAC9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAmB7B"}
1
+ {"version":3,"file":"cdp-page.d.ts","sourceRoot":"","sources":["../../src/browser/cdp-page.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,qBAAa,OAAO;IAClB,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAK;IAElB,OAAO;IAMP;;;OAGG;WACU,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkE3D,OAAO,CAAC,IAAI;IAiBZ,uDAAuD;IACjD,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB1F,0EAA0E;IACpE,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAevE;;;OAGG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAazF,uDAAuD;IACjD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,iCAAiC;IAC3B,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,gCAAgC;IAC1B,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAI5B,0BAA0B;IACpB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,oCAAoC;IAC9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAmB7B"}
@@ -52,17 +52,40 @@ export class CdpPage {
52
52
  ws.send(JSON.stringify({ id, method, params }));
53
53
  });
54
54
  };
55
- const { targetId } = await sendBrowser('Target.createTarget', { url: 'about:blank' });
56
- const { sessionId } = await sendBrowser('Target.attachToTarget', {
57
- targetId,
58
- flatten: true,
59
- });
60
- const page = new CdpPage(ws, sessionId, targetId);
61
- await page.send('Page.enable');
62
- await page.send('Runtime.enable');
63
- await page.send('DOM.enable');
64
- sdkLogger.info({ targetId }, '[CdpPage] Created tab');
65
- return page;
55
+ let createdTargetId;
56
+ try {
57
+ const { targetId } = await sendBrowser('Target.createTarget', { url: 'about:blank' });
58
+ createdTargetId = targetId;
59
+ const { sessionId } = await sendBrowser('Target.attachToTarget', {
60
+ targetId,
61
+ flatten: true,
62
+ });
63
+ const page = new CdpPage(ws, sessionId, targetId);
64
+ await page.send('Page.enable');
65
+ await page.send('Runtime.enable');
66
+ await page.send('DOM.enable');
67
+ sdkLogger.info({ targetId }, '[CdpPage] Created tab');
68
+ return page;
69
+ }
70
+ catch (err) {
71
+ // Setup failed after the socket opened — close the target (if created)
72
+ // and the WebSocket so we don't leak the connection on the host.
73
+ if (createdTargetId) {
74
+ try {
75
+ await sendBrowser('Target.closeTarget', { targetId: createdTargetId });
76
+ }
77
+ catch {
78
+ /* best-effort */
79
+ }
80
+ }
81
+ try {
82
+ ws.close();
83
+ }
84
+ catch {
85
+ /* best-effort */
86
+ }
87
+ throw err;
88
+ }
66
89
  }
67
90
  send(method, params = {}) {
68
91
  return new Promise((resolve, reject) => {
@@ -86,7 +109,6 @@ export class CdpPage {
86
109
  await this.send('Page.navigate', { url });
87
110
  // Wait for load event
88
111
  await new Promise((resolve) => {
89
- const timer = setTimeout(() => resolve(), timeout);
90
112
  const handler = (event) => {
91
113
  const data = JSON.parse(event.data);
92
114
  if (data.method === 'Page.loadEventFired' && data.sessionId === this.sessionId) {
@@ -95,6 +117,12 @@ export class CdpPage {
95
117
  resolve();
96
118
  }
97
119
  };
120
+ const timer = setTimeout(() => {
121
+ // On timeout, detach the listener so it doesn't stay attached for the
122
+ // life of the (long-lived) CDP session parsing every subsequent frame.
123
+ this.ws.removeEventListener('message', handler);
124
+ resolve();
125
+ }, timeout);
98
126
  this.ws.addEventListener('message', handler);
99
127
  });
100
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cdp-page.js","sourceRoot":"","sources":["../../src/browser/cdp-page.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,OAAO,OAAO;IACV,EAAE,CAAY;IACd,SAAS,CAAS;IAClB,QAAQ,CAAS;IACjB,KAAK,GAAG,CAAC,CAAC;IAElB,YAAoB,EAAa,EAAE,SAAiB,EAAE,QAAgB;QACpE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAoB;QACtC,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;QACvC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7F,EAAE,CAAC,MAAM,GAAG,GAAG,EAAE;gBACf,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,GAAG,GAAG,EAAE;gBAChB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,MAAM,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;YACvD,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,SAAkC,EAAE,EAAgB,EAAE;YACzF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;gBAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC9E,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAE,EAAE;oBACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC;oBAC9C,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;wBACnB,YAAY,CAAC,KAAK,CAAC,CAAC;wBACpB,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;wBAC3C,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC5E,CAAC;gBACH,CAAC,CAAC;gBACF,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACxC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QACtF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,WAAW,CAAC,uBAAuB,EAAE;YAC/D,QAAQ;YACR,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAClC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE9B,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,uBAAuB,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,IAAI,CAAC,MAAc,EAAE,SAAkC,EAAE;QAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9E,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAE,EAAE;gBACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC;gBAC9C,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;oBACnB,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBAChD,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC7C,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,uDAAuD;IACvD,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,OAAkD;QACxE,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC;QAC1C,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAE1C,sBAAsB;QACtB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAE,EAAE;gBACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC;gBAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,qBAAqB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC/E,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBAChD,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,KAAK,CAAC,QAAQ,CAAc,UAA8B;QACxD,MAAM,IAAI,GAAG,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5F,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACvE,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,oBAAoB,gBAAgB,CAAC,IAAI,IAAI,gBAAgB,CAAC,SAAS,EAAE,WAAW,IAAI,eAAe,EAAE,CAC1G,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,KAAU,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,OAA8B;QACpE,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,OAAO,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAC/B,4BAA4B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CACxD,CAAC;YACF,IAAI,KAAK;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uDAAuD;IACvD,KAAK,CAAC,KAAK,CAAC,QAAgB;QAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACtF,CAAC;IAED,iCAAiC;IACjC,KAAK,CAAC,cAAc,CAAC,EAAU;QAC7B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,gCAAgC;IAChC,KAAK,CAAC,GAAG;QACP,OAAO,IAAI,CAAC,QAAQ,CAAS,eAAe,CAAC,CAAC;IAChD,CAAC;IAED,0BAA0B;IAC1B,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,QAAQ,CAAS,gBAAgB,CAAC,CAAC;IACjD,CAAC;IAED,oCAAoC;IACpC,KAAK,CAAC,KAAK;QACT,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC9C,wCAAwC;YACxC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,IAAI,CAAC,SAAS,CAAC;gBACb,EAAE;gBACF,MAAM,EAAE,oBAAoB;gBAC5B,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;aACpC,CAAC,CACH,CAAC;YACF,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;CACF"}
1
+ {"version":3,"file":"cdp-page.js","sourceRoot":"","sources":["../../src/browser/cdp-page.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@
2
2
  * Browser Launcher Utility
3
3
  * Provides Playwright-based browser automation
4
4
  */
5
- import type { Env } from '../types.js';
6
5
  export interface BrowserLaunchOptions {
7
6
  debug?: boolean;
8
7
  trace?: boolean;
@@ -17,7 +16,7 @@ export interface EnhancedBrowser {
17
16
  /**
18
17
  * Launch browser with Playwright
19
18
  */
20
- export declare function launchBrowser(_env: Env, options?: BrowserLaunchOptions): Promise<EnhancedBrowser>;
19
+ export declare function launchBrowser(options?: BrowserLaunchOptions): Promise<EnhancedBrowser>;
21
20
  /**
22
21
  * Capture error artifacts (screenshot, HTML, trace) when feed fails
23
22
  */
@@ -1 +1 @@
1
- {"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../src/browser/launcher.ts"],"names":[],"mappings":"AACA;;;GAGG;AAKH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAGvC,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,GAAG,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAiBD;;GAEG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,eAAe,CAAC,CA8E1B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA6Df;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,IAAI,EAAE,GAAG,EACT,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,CAAC,CAAC,CAOZ"}
1
+ {"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../src/browser/launcher.ts"],"names":[],"mappings":"AACA;;;GAGG;AAOH,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,GAAG,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAiBD;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,eAAe,CAAC,CA8E1B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA6Df;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,IAAI,EAAE,GAAG,EACT,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,CAAC,CAAC,CAOZ"}
@@ -23,7 +23,7 @@ function addCompatibilityMethods(page) {
23
23
  /**
24
24
  * Launch browser with Playwright
25
25
  */
26
- export async function launchBrowser(_env, options = {}) {
26
+ export async function launchBrowser(options = {}) {
27
27
  const isDebug = options.debug ?? process.env.BROWSER_DEBUG === '1';
28
28
  const enableTrace = options.trace ?? process.env.BROWSER_TRACE === '1';
29
29
  const screenshotDir = options.screenshotDir ?? process.env.BROWSER_SCREENSHOT_DIR ?? '/tmp/feed-screenshots';
@@ -1 +1 @@
1
- {"version":3,"file":"launcher.js","sourceRoot":"","sources":["../../src/browser/launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"launcher.js","sourceRoot":"","sources":["../../src/browser/launcher.ts"],"names":[],"mappings":"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"}
@@ -47,5 +47,11 @@ export declare function browserNetworkSync<TItem>(opts: {
47
47
  * When set, CDP is tried first; if unavailable, falls back to Playwright + cookies.
48
48
  */
49
49
  cdpUrl?: string | 'auto' | null;
50
+ /**
51
+ * Device-bound managed --user-data-dir. When set, Playwright launches via
52
+ * launchPersistentContext and CDP is skipped — cookies live on disk in this
53
+ * profile dir.
54
+ */
55
+ userDataDir?: string;
50
56
  }): Promise<BrowserNetworkResult<TItem>>;
51
57
  //# sourceMappingURL=browser-network.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser-network.d.ts","sourceRoot":"","sources":["../src/browser-network.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAA2B,MAAM,EAAE,IAAI,EAAY,MAAM,YAAY,CAAC;AAKlF,MAAM,WAAW,oBAAoB;IACnC,gFAAgF;IAChF,iBAAiB,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACvC,mEAAmE;IACnE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB,CAAC,KAAK;IACzC,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,OAAO,EAAE,KAAK,GAAG,YAAY,CAAC;CAC/B;AA6FD,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE;IACpD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,+EAA+E;IAC/E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;IACvD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACjC,GAAG,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAmHvC"}
1
+ {"version":3,"file":"browser-network.d.ts","sourceRoot":"","sources":["../src/browser-network.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAA2B,MAAM,EAAE,IAAI,EAAY,MAAM,YAAY,CAAC;AAKlF,MAAM,WAAW,oBAAoB;IACnC,gFAAgF;IAChF,iBAAiB,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACvC,mEAAmE;IACnE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB,CAAC,KAAK;IACzC,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,OAAO,EAAE,KAAK,GAAG,YAAY,CAAC;CAC/B;AA6ID,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE;IACpD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,+EAA+E;IAC/E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;IACvD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAoHvC"}
@@ -19,7 +19,40 @@ const DEFAULT_CONFIG = {
19
19
  responseTimeoutMs: 5000,
20
20
  navigationTimeoutMs: 15000,
21
21
  };
22
- async function acquireForNetworkSync(cdpUrl, cookies, stealth) {
22
+ async function acquireForNetworkSync(cdpUrl, cookies, stealth, userDataDir) {
23
+ // --- Persistent profile path: cookies live on disk ---
24
+ if (userDataDir) {
25
+ const playwrightModule = 'playwright';
26
+ const { chromium } = await import(/* @vite-ignore */ playwrightModule);
27
+ const isDebug = process.env.BROWSER_DEBUG === '1';
28
+ const screenshotDir = process.env.BROWSER_SCREENSHOT_DIR ?? '/tmp/feed-screenshots';
29
+ const context = (await chromium.launchPersistentContext(userDataDir, {
30
+ headless: !isDebug,
31
+ args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-dev-shm-usage'],
32
+ }));
33
+ try {
34
+ if (cookies.length > 0) {
35
+ await context.addCookies(cookies);
36
+ }
37
+ const pages = context.pages();
38
+ const page = pages.length > 0 ? pages[0] : await context.newPage();
39
+ sdkLogger.info({ userDataDir, cookies: cookies.length }, '[BrowserNetwork] Launched with persistent --user-data-dir');
40
+ return {
41
+ browser: (context.browser() ?? null),
42
+ context,
43
+ page,
44
+ backend: 'playwright',
45
+ ownsBrowser: true,
46
+ screenshotDir,
47
+ };
48
+ }
49
+ catch (err) {
50
+ // addCookies / newPage failed — close the persistent context so we
51
+ // don't leak a long-lived Chromium process holding the profile lock.
52
+ await context.close().catch(() => { });
53
+ throw err;
54
+ }
55
+ }
23
56
  // --- Layer 1: CDP via Playwright connectOverCDP ---
24
57
  if (cdpUrl !== null && cdpUrl !== undefined) {
25
58
  try {
@@ -30,42 +63,56 @@ async function acquireForNetworkSync(cdpUrl, cookies, stealth) {
30
63
  const playwrightModule = 'playwright';
31
64
  const { chromium } = await import(/* @vite-ignore */ playwrightModule);
32
65
  const browser = await chromium.connectOverCDP(wsUrl);
33
- // Use the default context (user's session) — don't create a new context
34
- // which crashes on browsers with many tabs
35
- const context = browser.contexts()[0];
36
- if (!context)
37
- throw new Error('Chrome has no browser context');
38
- const page = await context.newPage();
39
- sdkLogger.info({ wsUrl }, '[BrowserNetwork] Connected via CDP');
40
- return {
41
- browser,
42
- context,
43
- page,
44
- backend: 'cdp',
45
- ownsBrowser: false,
46
- screenshotDir: '/tmp/feed-screenshots',
47
- };
66
+ try {
67
+ // Use the default context (user's session) — don't create a new context
68
+ // which crashes on browsers with many tabs
69
+ const context = browser.contexts()[0];
70
+ if (!context)
71
+ throw new Error('Chrome has no browser context');
72
+ const page = await context.newPage();
73
+ sdkLogger.info({ wsUrl }, '[BrowserNetwork] Connected via CDP');
74
+ return {
75
+ browser,
76
+ context,
77
+ page,
78
+ backend: 'cdp',
79
+ ownsBrowser: false,
80
+ screenshotDir: '/tmp/feed-screenshots',
81
+ };
82
+ }
83
+ catch (innerErr) {
84
+ // Partial setup after connectOverCDP — close the CDP connection before
85
+ // falling through to the Playwright branch so it isn't left dangling.
86
+ await browser.close().catch(() => { });
87
+ throw innerErr;
88
+ }
48
89
  }
49
90
  catch (err) {
50
91
  sdkLogger.info({ error: err.message }, '[BrowserNetwork] CDP not available, falling back to Playwright');
51
92
  }
52
93
  }
53
94
  // --- Layer 2: Playwright with stored cookies ---
54
- const { browser, screenshotDir } = await launchBrowser({}, { stealth });
55
- const context = (await browser.newContext());
56
- if (cookies.length > 0) {
57
- await context.addCookies(cookies);
58
- sdkLogger.info({ count: cookies.length }, '[BrowserNetwork] Loaded persisted cookies');
95
+ const { browser, screenshotDir } = await launchBrowser({ stealth });
96
+ try {
97
+ const context = (await browser.newContext());
98
+ if (cookies.length > 0) {
99
+ await context.addCookies(cookies);
100
+ sdkLogger.info({ count: cookies.length }, '[BrowserNetwork] Loaded persisted cookies');
101
+ }
102
+ const page = await context.newPage();
103
+ return {
104
+ browser: browser,
105
+ context,
106
+ page,
107
+ backend: 'playwright',
108
+ ownsBrowser: true,
109
+ screenshotDir,
110
+ };
111
+ }
112
+ catch (err) {
113
+ await browser.close().catch(() => { });
114
+ throw err;
59
115
  }
60
- const page = await context.newPage();
61
- return {
62
- browser: browser,
63
- context,
64
- page,
65
- backend: 'playwright',
66
- ownsBrowser: true,
67
- screenshotDir,
68
- };
69
116
  }
70
117
  // ---------------------------------------------------------------------------
71
118
  // Main entry point
@@ -77,7 +124,7 @@ export async function browserNetworkSync(opts) {
77
124
  // Pre-compile string glob patterns into RegExp for hot-path matching
78
125
  const matchers = cfg.interceptPatterns.map((p) => typeof p === 'string' ? compileGlob(p) : p);
79
126
  const matchesUrl = (url) => matchers.some((re) => re.test(url));
80
- const acquired = await acquireForNetworkSync(opts.cdpUrl ?? null, opts.cookies, cfg.stealth ?? false);
127
+ const acquired = await acquireForNetworkSync(opts.userDataDir ? null : (opts.cdpUrl ?? null), opts.cookies, cfg.stealth ?? false, opts.userDataDir);
81
128
  const { context, page, backend, ownsBrowser, browser, screenshotDir } = acquired;
82
129
  try {
83
130
  // Accumulates promises from async response handlers between drain points
@@ -1 +1 @@
1
- {"version":3,"file":"browser-network.js","sourceRoot":"","sources":["../src/browser-network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-network.js","sourceRoot":"","sources":["../src/browser-network.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,30 @@ export interface ConnectorDefinition {
35
35
  includeTags?: string[];
36
36
  serverUrl?: string;
37
37
  };
38
+ /**
39
+ * Optional worker capability required to run this connector. Workers advertise
40
+ * capabilities on poll; the runs scheduler only hands a connector run to a
41
+ * worker whose capabilities array includes this value. Unset = any worker
42
+ * (default API/browser fleet). Example: `'screentime'` for apple.screen_time
43
+ * (only Lobu for Mac, with Full Disk Access, can read the Knowledge store).
44
+ */
45
+ requiredCapability?: string;
46
+ /**
47
+ * Present only for device-bound connectors. Omitting this field means the
48
+ * connector runs on the server-side worker fleet (cloud). `platforms` lists
49
+ * the host platforms a device worker (e.g. Lobu for Mac) must be running on
50
+ * to serve this connector's runs.
51
+ */
52
+ runtime?: ConnectorRuntimeInfo;
53
+ }
54
+ export interface ConnectorRuntimeInfo {
55
+ /** Platforms this connector can run on. */
56
+ platforms: Array<'ios' | 'android' | 'macos' | 'windows' | 'linux'>;
57
+ /**
58
+ * Permission/auth scopes forwarded verbatim to the native platform adapter.
59
+ * Optional — omit when the platform adapter needs no fine-grained scope list.
60
+ */
61
+ scopes?: string[];
38
62
  }
39
63
  export interface ConnectorAuthSchema {
40
64
  methods: ConnectorAuthMethod[];
@@ -130,6 +154,14 @@ export interface FeedDefinition {
130
154
  displayNameTemplate?: string;
131
155
  /** JSON Schema for feed-specific config */
132
156
  configSchema?: Record<string, unknown>;
157
+ /**
158
+ * When true, auto-wire (device-reconcile + bundled-connector install) skips
159
+ * this feed — every feed instance is created explicitly by the user (or by
160
+ * the device worker on their behalf). Use this for feeds whose configSchema
161
+ * has required fields that can only be supplied by an external actor, e.g.
162
+ * `local.directory.files` needs a per-folder `folder_id` from the Mac app.
163
+ */
164
+ userManaged?: boolean;
133
165
  /** Event kinds this feed produces, keyed by kind slug */
134
166
  eventKinds?: Record<string, {
135
167
  description?: string;
@@ -236,6 +268,9 @@ export declare const IDENTITY: {
236
268
  readonly WA_JID: "wa_jid";
237
269
  readonly SLACK_USER_ID: "slack_user_id";
238
270
  readonly GITHUB_LOGIN: "github_login";
271
+ readonly GITHUB_USER_ID: "github_user_id";
272
+ readonly GITHUB_REPO_ID: "github_repo_id";
273
+ readonly GITHUB_REPO_FULL_NAME: "github_repo_full_name";
239
274
  readonly AUTH_USER_ID: "auth_user_id";
240
275
  readonly GOOGLE_CONTACT_ID: "google_contact_id";
241
276
  };