clearcote 0.28.0 → 0.29.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.
- package/README.md +48 -1
- package/dist/clearcote-cli.d.ts +3 -0
- package/dist/clearcote-cli.d.ts.map +1 -0
- package/dist/clearcote-cli.js +9 -0
- package/dist/clearcote-cli.js.map +1 -0
- package/dist/cli-commands.d.ts +62 -0
- package/dist/cli-commands.d.ts.map +1 -0
- package/dist/cli-commands.js +333 -0
- package/dist/cli-commands.js.map +1 -0
- package/dist/download.d.ts +28 -0
- package/dist/download.d.ts.map +1 -1
- package/dist/download.js +56 -6
- package/dist/download.js.map +1 -1
- package/dist/fingerprint.d.ts +16 -0
- package/dist/fingerprint.d.ts.map +1 -1
- package/dist/fingerprint.js +37 -0
- package/dist/fingerprint.js.map +1 -1
- package/dist/geoip.d.ts +37 -1
- package/dist/geoip.d.ts.map +1 -1
- package/dist/geoip.js +90 -68
- package/dist/geoip.js.map +1 -1
- package/dist/index.d.ts +44 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +102 -41
- package/dist/index.js.map +1 -1
- package/dist/launchopts.d.ts +44 -0
- package/dist/launchopts.d.ts.map +1 -1
- package/dist/launchopts.js +78 -0
- package/dist/launchopts.js.map +1 -1
- package/dist/license.d.ts +59 -3
- package/dist/license.d.ts.map +1 -1
- package/dist/license.js +286 -25
- package/dist/license.js.map +1 -1
- package/dist/multiplex.d.ts +111 -0
- package/dist/multiplex.d.ts.map +1 -0
- package/dist/multiplex.js +536 -0
- package/dist/multiplex.js.map +1 -0
- package/dist/net.d.ts +36 -0
- package/dist/net.d.ts.map +1 -0
- package/dist/net.js +278 -0
- package/dist/net.js.map +1 -0
- package/dist/warnings.d.ts.map +1 -1
- package/dist/warnings.js +16 -0
- package/dist/warnings.js.map +1 -1
- package/package.json +3 -2
package/dist/launchopts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launchopts.js","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"launchopts.js","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"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"}
|
package/dist/license.d.ts
CHANGED
|
@@ -4,7 +4,16 @@ export interface LicenseOptions {
|
|
|
4
4
|
licenseKey?: string;
|
|
5
5
|
/** Backend base URL. Default CLEARCOTE_LICENSE_API env or clearcotelabs.com. */
|
|
6
6
|
licenseApiBase?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Send the licence calls (lease checkout / heartbeat / check-in) through the launch's own proxy
|
|
9
|
+
* instead of directly from this machine. Off by default: direct calls never spend proxy bandwidth.
|
|
10
|
+
* Turn it on when the host's own address must not reach the licence server, or when the host has
|
|
11
|
+
* no direct egress. Also enabled by CLEARCOTE_LICENSE_THROUGH_PROXY=1. No effect without a proxy.
|
|
12
|
+
*/
|
|
13
|
+
licenseThroughProxy?: boolean;
|
|
7
14
|
}
|
|
15
|
+
/** Whether licence calls should use the launch proxy: explicit option, else the env switch. */
|
|
16
|
+
export declare function licenseThroughProxyRequested(opt: boolean | undefined, env?: Record<string, string | undefined>): boolean;
|
|
8
17
|
export declare class LicenseError extends Error {
|
|
9
18
|
code: string;
|
|
10
19
|
constructor(message: string, code?: string);
|
|
@@ -23,6 +32,10 @@ export declare function resolveLicenseKey(explicit?: string): string | undefined
|
|
|
23
32
|
* Falls back to an ephemeral id if the file can't be written — in containers with an ephemeral
|
|
24
33
|
* filesystem, set CLEARCOTE_INSTANCE_ID per replica to keep it stable. */
|
|
25
34
|
export declare function resolveInstanceId(): string;
|
|
35
|
+
/** The plan a run-token was minted for, read from its payload WITHOUT verifying it (routing only). */
|
|
36
|
+
export declare function tokenPlan(token: string): string | undefined;
|
|
37
|
+
/** One id per browser launch: the backend counts every launch_id as its own slot on per-browser plans. */
|
|
38
|
+
export declare function newLaunchId(): string;
|
|
26
39
|
/** A live lease. Keep it until the browser closes, then call `stop()`. */
|
|
27
40
|
export interface LeaseSession {
|
|
28
41
|
token: string;
|
|
@@ -31,9 +44,13 @@ export interface LeaseSession {
|
|
|
31
44
|
stop(): Promise<void>;
|
|
32
45
|
}
|
|
33
46
|
/**
|
|
34
|
-
* Acquire a
|
|
35
|
-
*
|
|
36
|
-
*
|
|
47
|
+
* Acquire a concurrency lease for one launch. Returns `null` in free mode (no key).
|
|
48
|
+
*
|
|
49
|
+
* Machine plans (every paid plan): a per-MACHINE lease shared across every launch in this process
|
|
50
|
+
* (checks out ~once per token-TTL, not once per launch); `stop()` only drops a reference.
|
|
51
|
+
* Per-browser plans (the GitHub free tier, told by the backend's `lease_scope: "browser"`): every
|
|
52
|
+
* launch checks out its own slot, and `stop()` releases it, so a second browser is refused while one runs.
|
|
53
|
+
* Throws {@link ConcurrencyLimitError} / {@link LicenseRevokedError} /
|
|
37
54
|
* {@link LicenseError} only on a cold checkout the backend definitively refuses;
|
|
38
55
|
* falls back to a cached, still-valid token on a transient network failure.
|
|
39
56
|
*/
|
|
@@ -41,7 +58,46 @@ export declare function acquireLease(opts?: LicenseOptions & {
|
|
|
41
58
|
sdkVersion?: string;
|
|
42
59
|
quiet?: boolean;
|
|
43
60
|
engineVersion?: string | (() => string | Promise<string>);
|
|
61
|
+
/** The launch's proxy; used for the licence calls only when licenseThroughProxy is on. */
|
|
62
|
+
proxy?: string | {
|
|
63
|
+
server?: string;
|
|
64
|
+
username?: string;
|
|
65
|
+
password?: string;
|
|
66
|
+
} | null;
|
|
44
67
|
}): Promise<LeaseSession | null>;
|
|
45
68
|
/** Merge the run-token into a child-process env (base defaults to the parent env). */
|
|
46
69
|
export declare function withRunToken(token: string, baseEnv: Record<string, string | undefined> | undefined): Record<string, string>;
|
|
70
|
+
/** Concurrency seats on a licence, as reported by the backend. */
|
|
71
|
+
export interface SessionSeats {
|
|
72
|
+
/** "ok" with counts; otherwise why they are unavailable. */
|
|
73
|
+
state: "ok" | "no-key" | "invalid" | "unavailable";
|
|
74
|
+
used?: number;
|
|
75
|
+
/** null = unlimited. */
|
|
76
|
+
limit?: number | null;
|
|
77
|
+
plan?: string;
|
|
78
|
+
reason?: string;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Seats in use on a licence right now (live leases), without checking one out. Never cached and
|
|
82
|
+
* never throws: an unreachable backend or an older backend without the endpoint reports
|
|
83
|
+
* `state: "unavailable"` with the reason, rather than a guessed number.
|
|
84
|
+
*/
|
|
85
|
+
export declare function getSessionSeats(opts?: LicenseOptions & {
|
|
86
|
+
proxy?: string | {
|
|
87
|
+
server?: string;
|
|
88
|
+
username?: string;
|
|
89
|
+
password?: string;
|
|
90
|
+
} | null;
|
|
91
|
+
}): Promise<SessionSeats>;
|
|
92
|
+
/** Where `clearcote login` stores the key: ~/.clearcote/license.key. */
|
|
93
|
+
export declare function licenseKeyPath(): string;
|
|
94
|
+
/** Save a licence key for every later launch (owner-only permissions where the OS supports it). */
|
|
95
|
+
export declare function saveLicenseKey(key: string): string;
|
|
96
|
+
/** Remove the saved key. Returns true when a file was removed. */
|
|
97
|
+
export declare function removeLicenseKey(): boolean;
|
|
98
|
+
/** Where the key a launch would use comes from, without revealing it. */
|
|
99
|
+
export declare function licenseKeySource(explicit?: string): {
|
|
100
|
+
source: "option" | "env" | "file" | "none";
|
|
101
|
+
masked?: string;
|
|
102
|
+
};
|
|
47
103
|
//# sourceMappingURL=license.d.ts.map
|
package/dist/license.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,cAAc;IAC7B;sFACkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,+FAA+F;AAC/F,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GAAG,OAAO,CAGrI;AAED,qBAAa,YAAa,SAAQ,KAAK;IACrC,IAAI,EAAE,MAAM,CAAC;gBACD,OAAO,EAAE,MAAM,EAAE,IAAI,SAAkB;CAKpD;AACD,qBAAa,qBAAsB,SAAQ,YAAY;gBACzC,OAAO,EAAE,MAAM;CAI5B;AACD,qBAAa,mBAAoB,SAAQ,YAAY;gBACvC,OAAO,EAAE,MAAM;CAI5B;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAcvE;AAED;;;;0EAI0E;AAC1E,wBAAgB,iBAAiB,IAAI,MAAM,CAqB1C;AAgCD,sGAAsG;AACtG,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAS3D;AAyBD,0GAA0G;AAC1G,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAsBD,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAwUD;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAChC,IAAI,GAAE,cAAc,GAAG;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,0FAA0F;IAC1F,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC9E,GACL,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA0B9B;AAED,sFAAsF;AACtF,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,GACtD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxB;AAID,kEAAkE;AAClE,MAAM,WAAW,YAAY;IAC3B,4DAA4D;IAC5D,KAAK,EAAE,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,CAAC;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,IAAI,GAAE,cAAc,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAqB9K;AAED,wEAAwE;AACxE,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,mGAAmG;AACnG,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED,kEAAkE;AAClE,wBAAgB,gBAAgB,IAAI,OAAO,CAK1C;AAED,yEAAyE;AACzE,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAanH"}
|
package/dist/license.js
CHANGED
|
@@ -8,13 +8,20 @@
|
|
|
8
8
|
//
|
|
9
9
|
// With NO license key this is entirely inert — the free build never calls the
|
|
10
10
|
// backend and never gates. See clearcoat/PRIVATE-SDK-LICENSING-PLAN.md.
|
|
11
|
-
import { existsSync, readFileSync, mkdirSync, writeFileSync } from "node:fs";
|
|
11
|
+
import { existsSync, readFileSync, mkdirSync, writeFileSync, rmSync, chmodSync } from "node:fs";
|
|
12
12
|
import { homedir } from "node:os";
|
|
13
13
|
import { join } from "node:path";
|
|
14
14
|
import { createHash, randomUUID } from "node:crypto";
|
|
15
|
+
import { proxiedRequest, toProxySpec } from "./net.js";
|
|
15
16
|
/** Default backend. Override with `licenseApiBase` or CLEARCOTE_LICENSE_API. */
|
|
16
17
|
const DEFAULT_API_BASE = "https://www.clearcotelabs.com";
|
|
17
18
|
const RUN_TOKEN_ENV = "CLEARCOTE_RUN_TOKEN";
|
|
19
|
+
/** Whether licence calls should use the launch proxy: explicit option, else the env switch. */
|
|
20
|
+
export function licenseThroughProxyRequested(opt, env = process.env) {
|
|
21
|
+
if (opt !== undefined)
|
|
22
|
+
return opt;
|
|
23
|
+
return /^(1|true|yes|on)$/i.test((env.CLEARCOTE_LICENSE_THROUGH_PROXY ?? "").trim());
|
|
24
|
+
}
|
|
18
25
|
export class LicenseError extends Error {
|
|
19
26
|
code;
|
|
20
27
|
constructor(message, code = "LICENSE_ERROR") {
|
|
@@ -100,14 +107,32 @@ function cachePath(licenseKey) {
|
|
|
100
107
|
function readCache(licenseKey) {
|
|
101
108
|
try {
|
|
102
109
|
const d = JSON.parse(readFileSync(cachePath(licenseKey), "utf8"));
|
|
103
|
-
if (d && typeof d.token === "string" && typeof d.exp === "number")
|
|
110
|
+
if (d && typeof d.token === "string" && typeof d.exp === "number") {
|
|
111
|
+
// A per-browser (free-tier) token belongs to the one browser it was checked out for. Reusing it
|
|
112
|
+
// would start another browser without a slot, so it is never taken from the cache, even one an
|
|
113
|
+
// older SDK wrote. Paid tokens are reused exactly as before.
|
|
114
|
+
if (tokenPlan(d.token) === PER_BROWSER_PLAN)
|
|
115
|
+
return null;
|
|
104
116
|
return d;
|
|
117
|
+
}
|
|
105
118
|
}
|
|
106
119
|
catch {
|
|
107
120
|
/* ignore */
|
|
108
121
|
}
|
|
109
122
|
return null;
|
|
110
123
|
}
|
|
124
|
+
/** The plan a run-token was minted for, read from its payload WITHOUT verifying it (routing only). */
|
|
125
|
+
export function tokenPlan(token) {
|
|
126
|
+
try {
|
|
127
|
+
const body = token.split(".")[0] ?? "";
|
|
128
|
+
const json = Buffer.from(body.replace(/-/g, "+").replace(/_/g, "/"), "base64").toString("utf8");
|
|
129
|
+
const plan = JSON.parse(json).plan;
|
|
130
|
+
return typeof plan === "string" ? plan : undefined;
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
return undefined;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
111
136
|
function writeCache(licenseKey, token, exp, leaseId) {
|
|
112
137
|
try {
|
|
113
138
|
const dir = join(homedir(), ".clearcote");
|
|
@@ -118,12 +143,23 @@ function writeCache(licenseKey, token, exp, leaseId) {
|
|
|
118
143
|
/* ignore */
|
|
119
144
|
}
|
|
120
145
|
}
|
|
121
|
-
|
|
122
|
-
|
|
146
|
+
/** The plan whose tokens are per browser. Only used to keep such tokens out of the shared cache. */
|
|
147
|
+
const PER_BROWSER_PLAN = "free";
|
|
148
|
+
/** One id per browser launch: the backend counts every launch_id as its own slot on per-browser plans. */
|
|
149
|
+
export function newLaunchId() {
|
|
150
|
+
return randomUUID().replace(/-/g, "");
|
|
151
|
+
}
|
|
152
|
+
async function postJson(url, licenseKey, body, proxy) {
|
|
153
|
+
const init = {
|
|
123
154
|
method: "POST",
|
|
124
155
|
headers: { authorization: `Bearer ${licenseKey}`, "content-type": "application/json" },
|
|
125
156
|
body: JSON.stringify(body),
|
|
126
|
-
}
|
|
157
|
+
};
|
|
158
|
+
// Through the launch proxy when licenseThroughProxy is on; otherwise the plain fetch path, which
|
|
159
|
+
// is unchanged from before the option existed.
|
|
160
|
+
if (proxy)
|
|
161
|
+
return proxiedRequest(url, { ...init, proxy, timeoutMs: 30_000 });
|
|
162
|
+
return fetch(url, init);
|
|
127
163
|
}
|
|
128
164
|
function throwForStatus(status, body) {
|
|
129
165
|
const msg = body?.error || `License request failed (${status}).`;
|
|
@@ -153,9 +189,15 @@ class MachineLease {
|
|
|
153
189
|
sdkVersion;
|
|
154
190
|
quiet;
|
|
155
191
|
engineVersion;
|
|
192
|
+
proxy;
|
|
156
193
|
token = null;
|
|
157
194
|
exp = 0;
|
|
158
195
|
leaseId = null;
|
|
196
|
+
/** Learned from the first checkout: "browser" means every launch holds its own lease. */
|
|
197
|
+
scope = "machine";
|
|
198
|
+
/** A per-browser checkout made by ensure(), waiting for the one launch that asked for it. */
|
|
199
|
+
pendingBrowser = null;
|
|
200
|
+
browsers = new Set();
|
|
159
201
|
hbSec = 270;
|
|
160
202
|
owner = false;
|
|
161
203
|
timer = null;
|
|
@@ -165,13 +207,14 @@ class MachineLease {
|
|
|
165
207
|
constructor(key, base, instanceId, sdkVersion, quiet,
|
|
166
208
|
// Resolved browser build (e.g. "150.0.7871.114"). A string, or a thunk that resolves it lazily
|
|
167
209
|
// so the catalog is only consulted on a cold checkout — never per launch. Telemetry only.
|
|
168
|
-
engineVersion) {
|
|
210
|
+
engineVersion, proxy = null) {
|
|
169
211
|
this.key = key;
|
|
170
212
|
this.base = base;
|
|
171
213
|
this.instanceId = instanceId;
|
|
172
214
|
this.sdkVersion = sdkVersion;
|
|
173
215
|
this.quiet = quiet;
|
|
174
216
|
this.engineVersion = engineVersion;
|
|
217
|
+
this.proxy = proxy;
|
|
175
218
|
}
|
|
176
219
|
valid() {
|
|
177
220
|
return !!this.token && this.exp > Math.floor(Date.now() / 1000) + SKEW_SEC;
|
|
@@ -212,22 +255,41 @@ class MachineLease {
|
|
|
212
255
|
return; // NO checkout, NO heartbeat
|
|
213
256
|
}
|
|
214
257
|
await this.checkout();
|
|
258
|
+
if (this.scope === "browser")
|
|
259
|
+
return; // the lease belongs to one launch; see acquire()
|
|
215
260
|
this.owner = true;
|
|
216
261
|
this.startHeartbeat();
|
|
217
262
|
}
|
|
263
|
+
/** POST a checkout for one launch. Throws the backend's verdict; network errors propagate. */
|
|
264
|
+
async checkoutFor(launchId) {
|
|
265
|
+
const res = await postJson(`${this.base}/api/v1/lease/checkout`, this.key, {
|
|
266
|
+
instance_id: this.instanceId,
|
|
267
|
+
// Per-browser plans count each launch_id as its own slot; machine plans ignore it.
|
|
268
|
+
launch_id: launchId,
|
|
269
|
+
os: osTag(),
|
|
270
|
+
sdk_version: this.sdkVersion,
|
|
271
|
+
engine_version: await this.engineVer(),
|
|
272
|
+
}, this.proxy);
|
|
273
|
+
if (!res.ok) {
|
|
274
|
+
const body = (await res.json().catch(() => ({})));
|
|
275
|
+
throwForStatus(res.status, body);
|
|
276
|
+
}
|
|
277
|
+
return (await res.json());
|
|
278
|
+
}
|
|
279
|
+
/** Heartbeat / re-checkout / check-in for a BrowserLease, over this lease's route (direct or proxy). */
|
|
280
|
+
post(path, body) {
|
|
281
|
+
return postJson(`${this.base}${path}`, this.key, body, this.proxy);
|
|
282
|
+
}
|
|
218
283
|
async checkout() {
|
|
219
284
|
try {
|
|
220
|
-
const
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
const body = (await res.json().catch(() => ({})));
|
|
228
|
-
throwForStatus(res.status, body);
|
|
285
|
+
const launchId = newLaunchId();
|
|
286
|
+
const co = await this.checkoutFor(launchId);
|
|
287
|
+
if (co.lease_scope === "browser") {
|
|
288
|
+
// Per-browser plan: this checkout is the calling launch's own slot. Never shared, never cached.
|
|
289
|
+
this.scope = "browser";
|
|
290
|
+
this.pendingBrowser = { co, launchId };
|
|
291
|
+
return;
|
|
229
292
|
}
|
|
230
|
-
const co = (await res.json());
|
|
231
293
|
this.token = co.token;
|
|
232
294
|
this.exp = co.exp;
|
|
233
295
|
this.leaseId = co.lease_id;
|
|
@@ -258,14 +320,14 @@ class MachineLease {
|
|
|
258
320
|
const res = await postJson(`${this.base}/api/v1/lease/heartbeat`, this.key, {
|
|
259
321
|
lease_id: this.leaseId,
|
|
260
322
|
nonce: randomUUID(),
|
|
261
|
-
});
|
|
323
|
+
}, this.proxy);
|
|
262
324
|
if (res.status === 409) {
|
|
263
325
|
const co = await postJson(`${this.base}/api/v1/lease/checkout`, this.key, {
|
|
264
326
|
instance_id: this.instanceId,
|
|
265
327
|
os: osTag(),
|
|
266
328
|
sdk_version: this.sdkVersion,
|
|
267
329
|
engine_version: await this.engineVer(),
|
|
268
|
-
});
|
|
330
|
+
}, this.proxy);
|
|
269
331
|
if (co.ok) {
|
|
270
332
|
const d = (await co.json());
|
|
271
333
|
this.leaseId = d.lease_id;
|
|
@@ -289,7 +351,16 @@ class MachineLease {
|
|
|
289
351
|
this.timer.unref?.();
|
|
290
352
|
}
|
|
291
353
|
async acquire() {
|
|
354
|
+
if (this.perBrowser())
|
|
355
|
+
return this.acquireBrowser();
|
|
292
356
|
await this.ensure();
|
|
357
|
+
if (this.perBrowser()) {
|
|
358
|
+
// ensure() discovered the per-browser scope. Exactly one waiting launch takes the checkout it
|
|
359
|
+
// made; every other launch (including ones that were waiting on the same ensure) checks out its own.
|
|
360
|
+
const pending = this.pendingBrowser;
|
|
361
|
+
this.pendingBrowser = null;
|
|
362
|
+
return pending ? this.startBrowser(pending.co, pending.launchId) : this.acquireBrowser();
|
|
363
|
+
}
|
|
293
364
|
this.refs++;
|
|
294
365
|
const self = this;
|
|
295
366
|
return {
|
|
@@ -306,18 +377,44 @@ class MachineLease {
|
|
|
306
377
|
},
|
|
307
378
|
};
|
|
308
379
|
}
|
|
380
|
+
/** Read through a method: ensure() can change the scope while acquire() awaits it. */
|
|
381
|
+
perBrowser() {
|
|
382
|
+
return this.scope === "browser";
|
|
383
|
+
}
|
|
309
384
|
release() {
|
|
310
385
|
if (this.refs > 0)
|
|
311
386
|
this.refs--;
|
|
312
387
|
}
|
|
388
|
+
/** A new launch on a per-browser plan: its own checkout. A refusal (one browser already running) throws. */
|
|
389
|
+
async acquireBrowser() {
|
|
390
|
+
const launchId = newLaunchId();
|
|
391
|
+
let co;
|
|
392
|
+
try {
|
|
393
|
+
co = await this.checkoutFor(launchId);
|
|
394
|
+
}
|
|
395
|
+
catch (e) {
|
|
396
|
+
if (e instanceof LicenseError)
|
|
397
|
+
throw e;
|
|
398
|
+
// No offline grace here: without the backend there is no slot for this browser.
|
|
399
|
+
throw new LicenseError(`Could not reach the license server to start this browser: ${String(e)}`);
|
|
400
|
+
}
|
|
401
|
+
return this.startBrowser(co, launchId);
|
|
402
|
+
}
|
|
403
|
+
startBrowser(co, launchId) {
|
|
404
|
+
const lease = new BrowserLease(this, co, launchId, () => this.browsers.delete(lease));
|
|
405
|
+
this.browsers.add(lease);
|
|
406
|
+
return lease.session();
|
|
407
|
+
}
|
|
313
408
|
async shutdown() {
|
|
409
|
+
// Per-browser leases still open at exit (a browser nobody closed): release their slots too.
|
|
410
|
+
await Promise.all([...this.browsers].map((b) => b.stop()));
|
|
314
411
|
if (this.timer) {
|
|
315
412
|
clearInterval(this.timer);
|
|
316
413
|
this.timer = null;
|
|
317
414
|
}
|
|
318
415
|
if (this.owner && this.leaseId) {
|
|
319
416
|
try {
|
|
320
|
-
await postJson(`${this.base}/api/v1/lease/checkin`, this.key, { lease_id: this.leaseId });
|
|
417
|
+
await postJson(`${this.base}/api/v1/lease/checkin`, this.key, { lease_id: this.leaseId }, this.proxy);
|
|
321
418
|
}
|
|
322
419
|
catch {
|
|
323
420
|
/* best-effort; the lease TTL reclaims it anyway */
|
|
@@ -325,12 +422,92 @@ class MachineLease {
|
|
|
325
422
|
}
|
|
326
423
|
}
|
|
327
424
|
}
|
|
425
|
+
/**
|
|
426
|
+
* One browser's own lease on a per-browser plan (the free tier: "1 browser at a time").
|
|
427
|
+
*
|
|
428
|
+
* Checked out for exactly one launch, heartbeated while that browser runs, checked in when it closes.
|
|
429
|
+
* Its token is never written to the shared cache and never handed to another launch.
|
|
430
|
+
*/
|
|
431
|
+
class BrowserLease {
|
|
432
|
+
owner;
|
|
433
|
+
launchId;
|
|
434
|
+
onStop;
|
|
435
|
+
token;
|
|
436
|
+
leaseId;
|
|
437
|
+
timer = null;
|
|
438
|
+
stopped = false;
|
|
439
|
+
constructor(owner, co, launchId, onStop) {
|
|
440
|
+
this.owner = owner;
|
|
441
|
+
this.launchId = launchId;
|
|
442
|
+
this.onStop = onStop;
|
|
443
|
+
this.token = co.token;
|
|
444
|
+
this.leaseId = co.lease_id;
|
|
445
|
+
const hbMs = Math.max(5, co.heartbeat_interval_sec || 120) * 1000;
|
|
446
|
+
this.timer = setInterval(() => void this.beat(), hbMs);
|
|
447
|
+
this.timer.unref?.();
|
|
448
|
+
}
|
|
449
|
+
async beat() {
|
|
450
|
+
if (this.stopped)
|
|
451
|
+
return;
|
|
452
|
+
try {
|
|
453
|
+
const res = await this.owner.post("/api/v1/lease/heartbeat", { lease_id: this.leaseId, nonce: randomUUID() });
|
|
454
|
+
if (res.status === 409) {
|
|
455
|
+
// Reclaimed (e.g. missed beats): re-take the slot as the SAME launch, which the backend treats
|
|
456
|
+
// as this browser's own lease. If another browser took the slot meanwhile, this is refused.
|
|
457
|
+
const co = await this.owner.checkoutFor(this.launchId);
|
|
458
|
+
this.leaseId = co.lease_id;
|
|
459
|
+
this.token = co.token;
|
|
460
|
+
return;
|
|
461
|
+
}
|
|
462
|
+
if (res.ok) {
|
|
463
|
+
const d = (await res.json());
|
|
464
|
+
if (typeof d.token === "string")
|
|
465
|
+
this.token = d.token;
|
|
466
|
+
}
|
|
467
|
+
}
|
|
468
|
+
catch {
|
|
469
|
+
/* transient; the next beat retries, and the lease TTL is the backstop */
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
async stop() {
|
|
473
|
+
if (this.stopped)
|
|
474
|
+
return;
|
|
475
|
+
this.stopped = true;
|
|
476
|
+
if (this.timer) {
|
|
477
|
+
clearInterval(this.timer);
|
|
478
|
+
this.timer = null;
|
|
479
|
+
}
|
|
480
|
+
this.onStop();
|
|
481
|
+
try {
|
|
482
|
+
await this.owner.post("/api/v1/lease/checkin", { lease_id: this.leaseId });
|
|
483
|
+
}
|
|
484
|
+
catch {
|
|
485
|
+
/* best-effort; the lease TTL reclaims it */
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
session() {
|
|
489
|
+
const self = this;
|
|
490
|
+
return {
|
|
491
|
+
get token() {
|
|
492
|
+
return self.token;
|
|
493
|
+
},
|
|
494
|
+
get leaseId() {
|
|
495
|
+
return self.leaseId;
|
|
496
|
+
},
|
|
497
|
+
stop: () => self.stop(),
|
|
498
|
+
};
|
|
499
|
+
}
|
|
500
|
+
}
|
|
328
501
|
const machineLeases = new Map();
|
|
329
502
|
let exitHooked = false;
|
|
330
503
|
/**
|
|
331
|
-
* Acquire a
|
|
332
|
-
*
|
|
333
|
-
*
|
|
504
|
+
* Acquire a concurrency lease for one launch. Returns `null` in free mode (no key).
|
|
505
|
+
*
|
|
506
|
+
* Machine plans (every paid plan): a per-MACHINE lease shared across every launch in this process
|
|
507
|
+
* (checks out ~once per token-TTL, not once per launch); `stop()` only drops a reference.
|
|
508
|
+
* Per-browser plans (the GitHub free tier, told by the backend's `lease_scope: "browser"`): every
|
|
509
|
+
* launch checks out its own slot, and `stop()` releases it, so a second browser is refused while one runs.
|
|
510
|
+
* Throws {@link ConcurrencyLimitError} / {@link LicenseRevokedError} /
|
|
334
511
|
* {@link LicenseError} only on a cold checkout the backend definitively refuses;
|
|
335
512
|
* falls back to a cached, still-valid token on a transient network failure.
|
|
336
513
|
*/
|
|
@@ -339,10 +516,18 @@ export async function acquireLease(opts = {}) {
|
|
|
339
516
|
if (!licenseKey)
|
|
340
517
|
return null; // free mode — inert
|
|
341
518
|
const base = apiBase(opts);
|
|
342
|
-
|
|
519
|
+
const viaProxy = licenseThroughProxyRequested(opts.licenseThroughProxy) ? toProxySpec(opts.proxy ?? null) : null;
|
|
520
|
+
if (licenseThroughProxyRequested(opts.licenseThroughProxy) && !viaProxy && !opts.quiet) {
|
|
521
|
+
process.stderr.write("[clearcote] [license] licenseThroughProxy is on but this launch has no proxy; licence calls go direct.\n");
|
|
522
|
+
}
|
|
523
|
+
// One lease per (key, route): a direct lease and a proxied lease are different network paths, so
|
|
524
|
+
// they must not share the in-process heartbeat owner.
|
|
525
|
+
// The username is part of the route: sticky-session gateways encode the session in it.
|
|
526
|
+
const mapKey = viaProxy ? `${licenseKey}|${viaProxy.server}|${viaProxy.username ?? ""}` : licenseKey;
|
|
527
|
+
let ml = machineLeases.get(mapKey);
|
|
343
528
|
if (!ml) {
|
|
344
|
-
ml = new MachineLease(licenseKey, base, resolveInstanceId(), opts.sdkVersion, !!opts.quiet, opts.engineVersion);
|
|
345
|
-
machineLeases.set(
|
|
529
|
+
ml = new MachineLease(licenseKey, base, resolveInstanceId(), opts.sdkVersion, !!opts.quiet, opts.engineVersion, viaProxy);
|
|
530
|
+
machineLeases.set(mapKey, ml);
|
|
346
531
|
}
|
|
347
532
|
if (!exitHooked) {
|
|
348
533
|
exitHooked = true;
|
|
@@ -363,4 +548,80 @@ export function withRunToken(token, baseEnv) {
|
|
|
363
548
|
out[RUN_TOKEN_ENV] = token;
|
|
364
549
|
return out;
|
|
365
550
|
}
|
|
551
|
+
/**
|
|
552
|
+
* Seats in use on a licence right now (live leases), without checking one out. Never cached and
|
|
553
|
+
* never throws: an unreachable backend or an older backend without the endpoint reports
|
|
554
|
+
* `state: "unavailable"` with the reason, rather than a guessed number.
|
|
555
|
+
*/
|
|
556
|
+
export async function getSessionSeats(opts = {}) {
|
|
557
|
+
const key = resolveLicenseKey(opts.licenseKey);
|
|
558
|
+
if (!key)
|
|
559
|
+
return { state: "no-key" };
|
|
560
|
+
const via = licenseThroughProxyRequested(opts.licenseThroughProxy) ? toProxySpec(opts.proxy ?? null) : null;
|
|
561
|
+
try {
|
|
562
|
+
const res = await proxiedRequest(`${apiBase(opts)}/api/v1/lease/seats`, {
|
|
563
|
+
method: "GET",
|
|
564
|
+
headers: { authorization: `Bearer ${key}` },
|
|
565
|
+
proxy: via,
|
|
566
|
+
timeoutMs: 15_000,
|
|
567
|
+
});
|
|
568
|
+
const body = (await res.json().catch(() => ({})));
|
|
569
|
+
if (res.ok && typeof body.used === "number") {
|
|
570
|
+
return { state: "ok", used: body.used, limit: body.limit ?? null, plan: body.plan };
|
|
571
|
+
}
|
|
572
|
+
if (res.status === 401 || res.status === 403)
|
|
573
|
+
return { state: "invalid", reason: body.error || `HTTP ${res.status}` };
|
|
574
|
+
if (res.status === 404)
|
|
575
|
+
return { state: "unavailable", reason: "this licence server does not report seats yet" };
|
|
576
|
+
return { state: "unavailable", reason: body.error || `HTTP ${res.status}` };
|
|
577
|
+
}
|
|
578
|
+
catch (e) {
|
|
579
|
+
return { state: "unavailable", reason: `licence server unreachable (${e.message})` };
|
|
580
|
+
}
|
|
581
|
+
}
|
|
582
|
+
/** Where `clearcote login` stores the key: ~/.clearcote/license.key. */
|
|
583
|
+
export function licenseKeyPath() {
|
|
584
|
+
return join(homedir(), ".clearcote", "license.key");
|
|
585
|
+
}
|
|
586
|
+
/** Save a licence key for every later launch (owner-only permissions where the OS supports it). */
|
|
587
|
+
export function saveLicenseKey(key) {
|
|
588
|
+
const k = key.trim();
|
|
589
|
+
if (!k)
|
|
590
|
+
throw new LicenseError("Empty licence key.", "LICENSE_EMPTY");
|
|
591
|
+
const p = licenseKeyPath();
|
|
592
|
+
mkdirSync(join(homedir(), ".clearcote"), { recursive: true });
|
|
593
|
+
writeFileSync(p, k + "\n", { mode: 0o600 });
|
|
594
|
+
try {
|
|
595
|
+
chmodSync(p, 0o600);
|
|
596
|
+
}
|
|
597
|
+
catch { /* not supported on this filesystem */ }
|
|
598
|
+
return p;
|
|
599
|
+
}
|
|
600
|
+
/** Remove the saved key. Returns true when a file was removed. */
|
|
601
|
+
export function removeLicenseKey() {
|
|
602
|
+
const p = licenseKeyPath();
|
|
603
|
+
if (!existsSync(p))
|
|
604
|
+
return false;
|
|
605
|
+
rmSync(p, { force: true });
|
|
606
|
+
return true;
|
|
607
|
+
}
|
|
608
|
+
/** Where the key a launch would use comes from, without revealing it. */
|
|
609
|
+
export function licenseKeySource(explicit) {
|
|
610
|
+
const mask = (k) => (k.length > 12 ? `${k.slice(0, 7)}…${k.slice(-4)}` : "…");
|
|
611
|
+
if (explicit && explicit.trim())
|
|
612
|
+
return { source: "option", masked: mask(explicit.trim()) };
|
|
613
|
+
const env = process.env.CLEARCOTE_LICENSE_KEY;
|
|
614
|
+
if (env && env.trim())
|
|
615
|
+
return { source: "env", masked: mask(env.trim()) };
|
|
616
|
+
try {
|
|
617
|
+
const p = licenseKeyPath();
|
|
618
|
+
if (existsSync(p)) {
|
|
619
|
+
const v = readFileSync(p, "utf8").trim();
|
|
620
|
+
if (v)
|
|
621
|
+
return { source: "file", masked: mask(v) };
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
catch { /* ignore */ }
|
|
625
|
+
return { source: "none" };
|
|
626
|
+
}
|
|
366
627
|
//# sourceMappingURL=license.js.map
|
package/dist/license.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"license.js","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"license.js","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"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"}
|