@amalgm/browser 0.1.2-main.34320546809 → 0.1.2-main.35288365524

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/PURPOSE.md CHANGED
@@ -129,6 +129,9 @@ locked dependency graph on the supported Node toolchain.
129
129
  19. Shell composes exactly one Browser service. Electron supplies a hardened
130
130
  visible host and isolated cookie adapter to that service; it never creates a
131
131
  second Browser registry, session authority, or action implementation.
132
+ 20. Headless IPC uses a private OS-temporary socket namespace and a digest of
133
+ the canonical Browser root and session identity; durable path depth and
134
+ session-name length cannot exceed the operating system's socket limit.
132
135
 
133
136
  ## Predictable behavior
134
137
 
package/README.md CHANGED
@@ -143,12 +143,12 @@ the token can be omitted. Authentication does not replace native certification,
143
143
  exact source records or artifact integrity; private source repositories do not
144
144
  receive npm's public-source provenance.
145
145
 
146
- Managed dependency reconciliation reads this owner’s declared manifests and
147
- updates exact same-branch registry candidates in one pending composition PR per
148
- branch. The repository token explicitly dispatches the owner checks. Every declared gate must
149
- pass for the exact merge tree; an atomic expected-base update prevents merging
150
- with untested concurrent source. Human additions or amendments are preserved.
151
- The half-hour CI reconciliation recovers missed dispatch hints. Assembly runs
152
- no dependency code or lifecycle hooks, and repeated owner checks do not publish
153
- another candidate for unchanged source. Repository policy must allow GitHub Actions to create pull requests; no
154
- cross-repository credential or paid auto-merge feature is required.
146
+ Bricks (`@amalgm/*` lane packages) are not pinned in source. `npm run resolve`
147
+ picks the newest good `candidate-<lane>` of each brick named in
148
+ `amalgmComposition` at build time; CI runs it with `--save`, so the packed
149
+ manifest records the exact set. A brick publication dispatches this owner's
150
+ checks on its lane, and a repeated check with an unchanged source and set does
151
+ not publish another candidate. Rollback is an explicit set: dispatch
152
+ `publish-package.yml` with `brick_set`, or set `AMALGM_LANE_SET` locally.
153
+ `preview` mirrors `main` through `mirror-preview.yml`; nothing is merged the
154
+ other way.
@@ -15,6 +15,7 @@ export declare class AgentBrowserCommand {
15
15
  release(sessionId: string): void;
16
16
  private directory;
17
17
  private baseArgs;
18
+ private socketDirectory;
18
19
  run(sessionId: string, command: string[], options?: {
19
20
  timeoutMs?: number;
20
21
  signal?: AbortSignal | undefined;
@@ -1,5 +1,7 @@
1
1
  import fs from 'node:fs';
2
+ import os from 'node:os';
2
3
  import path from 'node:path';
4
+ import { createHash } from 'node:crypto';
3
5
  import { BrowserError } from '../../errors.js';
4
6
  import { safeId } from '../../ids.js';
5
7
  import { ffmpegBinary, resolveAgentBrowser } from './executable.js';
@@ -21,7 +23,8 @@ export class AgentBrowserCommand {
21
23
  baseArgs(sessionId) {
22
24
  const profileId = this.profiles.get(safeId(sessionId)) || safeId(sessionId);
23
25
  const args = [
24
- '--session', safeId(sessionId),
26
+ '--session', createHash('sha256').update(fs.realpathSync(this.options.root))
27
+ .update('\0').update(safeId(sessionId)).digest('hex'),
25
28
  '--profile', path.join(this.directory('profiles'), profileId),
26
29
  '--screenshot-dir', this.directory('screenshots'),
27
30
  '--max-output', '15000',
@@ -37,18 +40,31 @@ export class AgentBrowserCommand {
37
40
  args.push('--provider', this.env.AMALGM_BROWSER_PROVIDER);
38
41
  return args;
39
42
  }
43
+ socketDirectory() {
44
+ // POSIX socket paths have a small fixed limit, independent of filesystem
45
+ // path limits. Only ephemeral IPC belongs here; profiles stay in root.
46
+ const uid = process.getuid?.();
47
+ const target = path.join(process.platform === 'win32' ? os.tmpdir() : '/tmp', `amalgm-browser-${uid ?? 'local'}`);
48
+ fs.mkdirSync(target, { recursive: true, mode: 0o700 });
49
+ const stat = fs.lstatSync(target);
50
+ if (!stat.isDirectory() || (uid !== undefined && (stat.uid !== uid || (stat.mode & 0o077) !== 0))) {
51
+ throw new BrowserError('PROCESS_FAILED', 'Browser IPC requires a private, user-owned temporary directory.');
52
+ }
53
+ return target;
54
+ }
40
55
  async run(sessionId, command, options = {}) {
41
56
  const executable = resolveAgentBrowser(this.env);
42
57
  const ffmpeg = ffmpegBinary(this.env);
58
+ const cwd = this.directory('process');
43
59
  const env = {
44
60
  ...this.env,
45
- AGENT_BROWSER_SOCKET_DIR: this.directory('sockets'),
61
+ AGENT_BROWSER_SOCKET_DIR: this.socketDirectory(),
46
62
  PATH: ffmpeg === 'ffmpeg' ? this.env.PATH : `${path.dirname(ffmpeg)}${path.delimiter}${this.env.PATH || ''}`,
47
63
  };
48
64
  const result = await this.options.launcher.run({
49
65
  command: executable.command,
50
66
  args: [...executable.prefix, ...this.baseArgs(sessionId), ...command],
51
- cwd: this.directory('process'),
67
+ cwd,
52
68
  env,
53
69
  ...(options.stdin === undefined ? {} : { stdin: options.stdin }),
54
70
  ...(options.signal === undefined ? {} : { signal: options.signal }),
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../../src/drivers/headless/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../../src/drivers/headless/command.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amalgm/browser",
3
- "version": "0.1.2-main.34320546809",
3
+ "version": "0.1.2-main.35288365524",
4
4
  "description": "Safe persistent browser automation across headless Chromium and visible Electron surfaces.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -89,18 +89,18 @@
89
89
  "verify": "npm run check && npm run build && npm test && npm run verify:pack",
90
90
  "verify:pack": "tsx scripts/verify-package.ts",
91
91
  "prepack": "npm run build",
92
+ "resolve": "node scripts/release/resolve.mjs",
92
93
  "release:admit": "node scripts/release/package.mjs admit",
93
94
  "release:prepare": "node scripts/release/package.mjs prepare",
94
95
  "release:examine": "node scripts/release/package.mjs examine",
95
96
  "release:publish": "node scripts/release/package.mjs publish",
96
- "release:compose": "node scripts/release/compose.mjs",
97
97
  "test:release": "node --test scripts/release/*.test.mjs"
98
98
  },
99
99
  "engines": {
100
100
  "node": ">=24"
101
101
  },
102
102
  "dependencies": {
103
- "@amalgm/core": "0.5.1-main.34318359436",
103
+ "@amalgm/core": "0.5.1-main.35171577680",
104
104
  "@ghostery/adblocker": "^2.18.1",
105
105
  "agent-browser": "0.26.0",
106
106
  "better-sqlite3": "^12.10.1",
@@ -129,7 +129,7 @@
129
129
  },
130
130
  "amalgmRelease": {
131
131
  "schema": 1,
132
- "workflow": "ci.yml",
132
+ "workflow": "verify.yml",
133
133
  "jobs": [
134
134
  "verify",
135
135
  "real-headless",
@@ -152,16 +152,16 @@
152
152
  "electron@41.10.7": true
153
153
  },
154
154
  "amalgmComposition": {
155
- "schema": 1,
156
- "manifests": [
157
- "package.json"
155
+ "schema": 2,
156
+ "bricks": [
157
+ "@amalgm/core"
158
158
  ]
159
159
  },
160
- "gitHead": "ae98807935691e1275218697b1cc8a98e0c727cc",
160
+ "gitHead": "7a652b0cd6d1f78214842702ef27cd4d5f839080",
161
161
  "amalgmSource": {
162
162
  "repository": "amalgm-inc/amalgm-browser",
163
163
  "branch": "main",
164
- "commit": "ae98807935691e1275218697b1cc8a98e0c727cc",
165
- "occurrence": "34320546809"
164
+ "commit": "7a652b0cd6d1f78214842702ef27cd4d5f839080",
165
+ "occurrence": "35288365524"
166
166
  }
167
167
  }