@amalgm/browser 0.1.2-main.37255979605 → 0.1.2-main.37259950106

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.
@@ -40,16 +40,20 @@ export async function launchChrome(input) {
40
40
  const killOnExit = () => { child.kill('SIGKILL'); };
41
41
  process.once('exit', killOnExit);
42
42
  void exited.then(() => process.removeListener('exit', killOnExit));
43
+ let browserUrl;
44
+ // Chrome writes its profile, cookies included, only when it closes itself. A signal skips that,
45
+ // and on Windows every signal is a hard kill, so Chrome is asked over CDP and forced only if it stays.
43
46
  const kill = async () => {
44
47
  if (child.exitCode !== null || child.signalCode !== null)
45
48
  return;
46
- child.kill('SIGTERM');
47
49
  const forced = setTimeout(() => child.kill('SIGKILL'), 3_000);
50
+ if (!browserUrl || !await requestClose(browserUrl))
51
+ child.kill('SIGTERM');
48
52
  await exited;
49
53
  clearTimeout(forced);
50
54
  };
51
55
  try {
52
- const browserUrl = await deadline(listening, input.timeoutMs || 20_000, 'Chrome start');
56
+ browserUrl = await deadline(listening, input.timeoutMs || 20_000, 'Chrome start');
53
57
  return { pid: child.pid, browserUrl, exited, kill };
54
58
  }
55
59
  catch {
@@ -85,6 +89,18 @@ function readPortFile(file) {
85
89
  return null;
86
90
  }
87
91
  }
92
+ async function requestClose(endpoint) {
93
+ const control = await connectCdp(endpoint, AbortSignal.timeout(2_000)).catch(() => null);
94
+ if (!control)
95
+ return false;
96
+ try {
97
+ await control.call('Browser.close', {}, 2_000).catch(() => undefined);
98
+ return true;
99
+ }
100
+ finally {
101
+ control.close();
102
+ }
103
+ }
88
104
  // The old profile publishes an unguessable browser endpoint. After obtaining
89
105
  // the lease, retire that exact Chrome through CDP; never signal a reused PID.
90
106
  async function closeOrphan(userDataDir) {
@@ -1 +1 @@
1
- {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../../src/chrome/launch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAS1D,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAIlC;IACC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACzC,IAAI,CAAC;QAAC,MAAM,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAAC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAAC,OAAO,EAAE,CAAC;QAAC,MAAM,KAAK,CAAC;IAAC,CAAC;IACvF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;IACpE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC;QAC/C,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC;QAC7C,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE;KACxB,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IAC7C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,KAAiC,CAAC;IACtC,IAAI,WAAmC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvG,KAAK,CAAC,MAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QACzC,MAAM,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,4EAA4E,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChH,IAAI,QAAQ;YAAE,KAAM,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC3C,MAAM,IAAI,GAAG,GAAS,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,WAAY,CAAC,IAAI,YAAY,CAAC,gBAAgB,EAAE,iCAAiC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACxI,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,GAAS,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAEnE,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;QACrC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI;YAAE,OAAO;QACjE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9D,MAAM,MAAM,CAAC;QACb,YAAY,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC,CAAC;IACF,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,MAAM,EAAE,cAAc,CAAC,CAAC;QACxF,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAI,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,EAAE,CAAC;QACb,MAAM,IAAI,YAAY,CAAC,gBAAgB,EAAE,yBAAyB,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;IAChH,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,+EAA+E;AAC/E,6DAA6D;AAC7D,SAAS,KAAK,CAAC,WAAmB;IAChC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,GAAG,WAAW,eAAe,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAAC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACvD,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjB,IAAK,KAA2B,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACxD,MAAM,IAAI,YAAY,CAAC,UAAU,EAAE,gDAAgD,CAAC,CAAC;QACvF,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,OAAO,GAAG,EAAE,GAAG,IAAI,QAAQ,CAAC,IAAI;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzE,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,IAAI,+BAA+B,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;YAC1G,CAAC,CAAC,kBAAkB,IAAI,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AAC1B,CAAC;AAED,6EAA6E;AAC7E,8EAA8E;AAC9E,KAAK,UAAU,WAAW,CAAC,WAAmB;IAC5C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACzF,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACtE,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,0BAA0B,CAAC,CAAC;IACpE,CAAC;YAAS,CAAC;QAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../../src/chrome/launch.ts"],"names":[],"mappings":"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"}
package/docs/CHROME.md CHANGED
@@ -115,8 +115,11 @@ does not poll history, and closing it releases its observation connection.
115
115
 
116
116
  `browser.close()` stops admission, cancels and drains in-flight operations,
117
117
  then stops recordings, detaches every daemon, drains queued cookie changes,
118
- stops Chrome (SIGTERM, then SIGKILL after 3 seconds), and closes the
119
- registry. Chrome is also killed if the Node process exits.
118
+ asks Chrome to close over CDP, and closes the registry. Chrome writes its
119
+ profile only when it closes itself; a signal skips that, and on Windows every
120
+ signal is a hard kill. A cookie Chrome had not yet reported is therefore on its
121
+ disk, and the next start reconciles it. Chrome is killed if it has not exited
122
+ 3 seconds after the request, or if the Node process exits.
120
123
 
121
124
  ## Configuration
122
125
 
@@ -137,7 +140,8 @@ is killed, and that loopback cookies never enter the account. It also measures
137
140
  zero cookie scans and history reads while idle, including with a live viewer,
138
141
  and verifies background cookie writes and tab-switch history updates. The busy
139
142
  page examination starts with 1000 cookies and requires 60 edits to cause zero
140
- full-store scans, exactly 60 encrypted row writes, and under 120 KB of encoded
141
- state. Observer reload, worker restart, HttpOnly and partitioned events are exercised in real
143
+ full-store scans, one encrypted row write per commit (edits that arrive during a
144
+ commit coalesce, so at most 60), and under 120 KB of encoded state. Observer
145
+ reload, worker restart, HttpOnly and partitioned events are exercised in real
142
146
  Chrome. Timing/CPU observations describe this local workload, not a universal
143
147
  website latency guarantee.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amalgm/browser",
3
- "version": "0.1.2-main.37255979605",
3
+ "version": "0.1.2-main.37259950106",
4
4
  "description": "The amalgm runtime's browser: one Chrome, a session per chat, and the account's cookies in every view.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -151,11 +151,11 @@
151
151
  "@amalgm/core"
152
152
  ]
153
153
  },
154
- "gitHead": "a494324c70ba6dda57d2b6ead78744198eb698d7",
154
+ "gitHead": "5b9405b042dd733fff2508c41011e674b004e85c",
155
155
  "amalgmSource": {
156
156
  "repository": "amalgm-inc/amalgm-browser",
157
157
  "branch": "main",
158
- "commit": "a494324c70ba6dda57d2b6ead78744198eb698d7",
159
- "occurrence": "37255979605"
158
+ "commit": "5b9405b042dd733fff2508c41011e674b004e85c",
159
+ "occurrence": "37259950106"
160
160
  }
161
161
  }