checkly 8.6.0 → 8.7.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 (62) hide show
  1. package/dist/ai-context/context.d.ts +2 -2
  2. package/dist/ai-context/context.js +1 -1
  3. package/dist/ai-context/context.js.map +1 -1
  4. package/dist/ai-context/skills-command/references/manage-account-members.md +26 -8
  5. package/dist/ai-context/skills-command/references/manage.md +1 -1
  6. package/dist/commands/checks/get.js +18 -17
  7. package/dist/commands/checks/get.js.map +1 -1
  8. package/dist/commands/members/delete.d.ts +18 -0
  9. package/dist/commands/members/delete.js +73 -0
  10. package/dist/commands/members/delete.js.map +1 -0
  11. package/dist/commands/members/update.d.ts +21 -0
  12. package/dist/commands/members/update.js +104 -0
  13. package/dist/commands/members/update.js.map +1 -0
  14. package/dist/commands/{account/members.d.ts → members.d.ts} +3 -2
  15. package/dist/commands/{account/members.js → members.js} +5 -4
  16. package/dist/commands/members.js.map +1 -0
  17. package/dist/commands/test-sessions/get.d.ts +3 -0
  18. package/dist/commands/test-sessions/get.js +45 -22
  19. package/dist/commands/test-sessions/get.js.map +1 -1
  20. package/dist/formatters/account-members.js +13 -14
  21. package/dist/formatters/account-members.js.map +1 -1
  22. package/dist/formatters/account-plan.js +19 -11
  23. package/dist/formatters/account-plan.js.map +1 -1
  24. package/dist/formatters/alert-channels.js +20 -22
  25. package/dist/formatters/alert-channels.js.map +1 -1
  26. package/dist/formatters/batch-stats.js +19 -17
  27. package/dist/formatters/batch-stats.js.map +1 -1
  28. package/dist/formatters/check-result-detail.d.ts +2 -1
  29. package/dist/formatters/check-result-detail.js +9 -1
  30. package/dist/formatters/check-result-detail.js.map +1 -1
  31. package/dist/formatters/checks.js +21 -14
  32. package/dist/formatters/checks.js.map +1 -1
  33. package/dist/formatters/incidents.js +7 -10
  34. package/dist/formatters/incidents.js.map +1 -1
  35. package/dist/formatters/render.d.ts +9 -0
  36. package/dist/formatters/render.js +13 -0
  37. package/dist/formatters/render.js.map +1 -1
  38. package/dist/formatters/status-pages.js +29 -36
  39. package/dist/formatters/status-pages.js.map +1 -1
  40. package/dist/formatters/test-sessions.js +32 -49
  41. package/dist/formatters/test-sessions.js.map +1 -1
  42. package/dist/helpers/account-member-target.d.ts +14 -0
  43. package/dist/helpers/account-member-target.js +37 -0
  44. package/dist/helpers/account-member-target.js.map +1 -0
  45. package/dist/rest/account-members.d.ts +6 -0
  46. package/dist/rest/account-members.js +7 -0
  47. package/dist/rest/account-members.js.map +1 -1
  48. package/dist/rest/test-sessions.d.ts +2 -0
  49. package/dist/rest/test-sessions.js +3 -0
  50. package/dist/rest/test-sessions.js.map +1 -1
  51. package/dist/services/check-parser/package-files/lockfile-package-version.d.ts +85 -0
  52. package/dist/services/check-parser/package-files/lockfile-package-version.js +317 -0
  53. package/dist/services/check-parser/package-files/lockfile-package-version.js.map +1 -0
  54. package/dist/services/check-parser/package-files/package-manager.d.ts +19 -0
  55. package/dist/services/check-parser/package-files/package-manager.js +52 -0
  56. package/dist/services/check-parser/package-files/package-manager.js.map +1 -1
  57. package/dist/services/playwright-project-bundler.d.ts +11 -0
  58. package/dist/services/playwright-project-bundler.js +120 -4
  59. package/dist/services/playwright-project-bundler.js.map +1 -1
  60. package/oclif.manifest.json +515 -351
  61. package/package.json +6 -2
  62. package/dist/commands/account/members.js.map +0 -1
@@ -0,0 +1,317 @@
1
+ import semver from 'semver';
2
+ import { parse as parseYaml } from 'yaml';
3
+ import JSON5 from 'json5';
4
+ /**
5
+ * Strips a pnpm peer-dependency suffix from a resolved version.
6
+ *
7
+ * pnpm encodes the peer set a dependency was resolved against directly into
8
+ * the version string. Lockfile v6/v9 use parenthesized suffixes
9
+ * (`1.40.0(react@18.2.0)`), while v5 used underscore suffixes
10
+ * (`1.40.0_react@16.14.0`). A plain version never contains either character,
11
+ * so cutting at the first one yields the bare version.
12
+ */
13
+ function stripPnpmPeerSuffix(version) {
14
+ const cut = version.search(/[(_]/);
15
+ return cut === -1 ? version : version.slice(0, cut);
16
+ }
17
+ /**
18
+ * Resolves a package version from an npm `package-lock.json`.
19
+ *
20
+ * Only lockfileVersion 2 and 3 are supported, which key the flat `packages`
21
+ * map by node_modules path relative to the workspace root (e.g.
22
+ * `node_modules/@playwright/test` when hoisted, or
23
+ * `packages/a/node_modules/@playwright/test` when a member pins a conflicting
24
+ * version). lockfileVersion 1 (npm 6) only has a nested `dependencies` tree and
25
+ * is unsupported — we return `undefined` so the caller falls back.
26
+ *
27
+ * The map keys are physical node_modules paths, so resolution is a single
28
+ * lexical walk up the path segments of the *nearest* importer — that walk
29
+ * already visits every ancestor up to the root and finds the enclosing copy.
30
+ * The walk, not the candidate list, is the resolution mechanism; iterating the
31
+ * other candidates would be redundant.
32
+ */
33
+ export function parseNpmLockfileVersion(content, query) {
34
+ const data = JSON5.parse(content);
35
+ const packages = data?.packages;
36
+ if (typeof packages !== 'object' || packages === null) {
37
+ return undefined;
38
+ }
39
+ const nearest = query.importers[0];
40
+ if (nearest === undefined) {
41
+ return undefined;
42
+ }
43
+ const rel = nearest.relPath === '.' ? '' : nearest.relPath;
44
+ const segments = rel === '' ? [] : rel.split('/');
45
+ // From the importer directory up to the workspace root, try each ancestor's
46
+ // node_modules. The first match wins, matching Node's upward resolution.
47
+ for (let depth = segments.length; depth >= 0; depth--) {
48
+ const prefix = segments.slice(0, depth).join('/');
49
+ const key = `${prefix ? `${prefix}/` : ''}node_modules/${query.packageName}`;
50
+ const entry = packages[key];
51
+ if (entry && typeof entry.version === 'string') {
52
+ return entry.version;
53
+ }
54
+ }
55
+ return undefined;
56
+ }
57
+ /**
58
+ * Resolves a package version from a `pnpm-lock.yaml`.
59
+ *
60
+ * pnpm records a per-importer resolved version under
61
+ * `importers.<relPath>.{dependencies,devDependencies,optionalDependencies}`.
62
+ * The value is a bare version string (lockfile v5) or a `{ specifier, version }`
63
+ * map (v6/v9). Catalog entries still carry a resolved `version`, so they need
64
+ * no special handling. The version may carry a pnpm peer suffix, which we
65
+ * strip.
66
+ *
67
+ * We walk the importer chain nearest → root and return the first importer that
68
+ * declares the package. With pnpm's default isolated linker a package required
69
+ * from a non-declaring member resolves up the filesystem to the nearest
70
+ * enclosing member that does declare it — which is exactly the nearest
71
+ * declaring importer in this chain. (The `node-linker=hoisted` and PnP layouts
72
+ * can diverge; those degrade to the caller's node_modules fallback.)
73
+ */
74
+ export function parsePnpmLockfileVersion(content, query) {
75
+ const data = parseYaml(content);
76
+ const importers = data?.importers;
77
+ if (typeof importers !== 'object' || importers === null) {
78
+ return undefined;
79
+ }
80
+ for (const candidate of query.importers) {
81
+ const importer = importers[candidate.relPath];
82
+ if (typeof importer !== 'object' || importer === null) {
83
+ continue;
84
+ }
85
+ for (const group of ['dependencies', 'devDependencies', 'optionalDependencies']) {
86
+ const dep = importer[group]?.[query.packageName];
87
+ if (dep === undefined) {
88
+ continue;
89
+ }
90
+ const version = typeof dep === 'string' ? dep : dep?.version;
91
+ if (typeof version === 'string') {
92
+ return stripPnpmPeerSuffix(version);
93
+ }
94
+ }
95
+ }
96
+ return undefined;
97
+ }
98
+ /**
99
+ * Resolves a package version from a bun text lockfile (`bun.lock`).
100
+ *
101
+ * bun.lock is JSONC. The `packages` map keys the hoisted copy by bare name
102
+ * (`@playwright/test`) and a member's pinned override by the declaring member's
103
+ * *name* (`some-package/@playwright/test`). Member names are recorded in
104
+ * `workspaces.<relPath>.name` (the root uses the `""` key). Each entry's value
105
+ * is an array whose first element is `name@version`.
106
+ *
107
+ * Resolution is two-phase: probe every candidate's member-scoped key nearest →
108
+ * root first, and only fall back to the hoisted key once all member-scoped
109
+ * probes miss. A naive per-candidate "first hit wins" would return the hoisted
110
+ * version as soon as the nearest (non-declaring) member is reached, masking a
111
+ * deeper member's pinned override that Node would actually resolve.
112
+ *
113
+ * The binary lockfile (`bun.lockb`) is not handled here; the caller skips it.
114
+ */
115
+ export function parseBunLockfileVersion(content, query) {
116
+ const data = JSON5.parse(content);
117
+ const packages = data?.packages;
118
+ if (typeof packages !== 'object' || packages === null) {
119
+ return undefined;
120
+ }
121
+ const workspaces = typeof data.workspaces === 'object' && data.workspaces !== null
122
+ ? data.workspaces
123
+ : {};
124
+ const prefix = `${query.packageName}@`;
125
+ const readVersion = (key) => {
126
+ const entry = packages[key];
127
+ if (Array.isArray(entry) && typeof entry[0] === 'string' && entry[0].startsWith(prefix)) {
128
+ return entry[0].slice(prefix.length);
129
+ }
130
+ return undefined;
131
+ };
132
+ // Phase 1: member-scoped overrides, nearest → root.
133
+ for (const candidate of query.importers) {
134
+ const wsKey = candidate.relPath === '.' ? '' : candidate.relPath;
135
+ const name = workspaces[wsKey]?.name;
136
+ if (typeof name !== 'string') {
137
+ continue;
138
+ }
139
+ const version = readVersion(`${name}/${query.packageName}`);
140
+ if (version !== undefined) {
141
+ return version;
142
+ }
143
+ }
144
+ // Phase 2: the hoisted copy.
145
+ return readVersion(query.packageName);
146
+ }
147
+ /**
148
+ * Parses a single yarn descriptor (`name@range`) into its name and range.
149
+ *
150
+ * Handles scoped names (the `@` prefix) by splitting on the last `@`. For yarn
151
+ * berry, the range carries a protocol (`npm:^1.40.0`); we strip the `npm:`
152
+ * protocol so it compares against the plain range from package.json. Non-npm
153
+ * protocols (`patch:`, `workspace:`, `portal:`, …) are left intact and simply
154
+ * won't match an npm range.
155
+ */
156
+ function parseYarnDescriptor(descriptor) {
157
+ const at = descriptor.lastIndexOf('@');
158
+ if (at <= 0) {
159
+ return undefined;
160
+ }
161
+ const name = descriptor.slice(0, at);
162
+ let range = descriptor.slice(at + 1);
163
+ const colon = range.indexOf(':');
164
+ if (colon !== -1 && range.slice(0, colon) === 'npm') {
165
+ range = range.slice(colon + 1);
166
+ }
167
+ return { name, range };
168
+ }
169
+ /**
170
+ * Picks the best version from the yarn resolutions matching our package, given
171
+ * a single declared range.
172
+ *
173
+ * yarn keys resolutions by descriptor, and a workspace may resolve several
174
+ * versions of the same package (one per declared range). We prefer the entry
175
+ * whose declared range exactly matches — that's the precise answer, since yarn
176
+ * records the descriptor verbatim from package.json. If there's no exact match
177
+ * we fall back to the highest version that satisfies the range, and finally to
178
+ * the sole entry when the package resolves to just one version.
179
+ */
180
+ function pickYarnVersion(resolutions, declaredRange) {
181
+ if (resolutions.length === 0) {
182
+ return undefined;
183
+ }
184
+ if (declaredRange !== undefined) {
185
+ const exact = resolutions.find(resolution => resolution.ranges.includes(declaredRange));
186
+ if (exact) {
187
+ return exact.version;
188
+ }
189
+ const satisfying = resolutions.filter(resolution => {
190
+ try {
191
+ return semver.satisfies(resolution.version, declaredRange);
192
+ }
193
+ catch {
194
+ return false;
195
+ }
196
+ });
197
+ if (satisfying.length > 0) {
198
+ return satisfying.reduce((best, candidate) => semver.gt(candidate.version, best.version) ? candidate : best).version;
199
+ }
200
+ }
201
+ if (resolutions.length === 1) {
202
+ return resolutions[0].version;
203
+ }
204
+ return undefined;
205
+ }
206
+ /**
207
+ * Resolves a version from yarn resolutions across the importer chain.
208
+ *
209
+ * A yarn lockfile records no importer/placement information — only descriptor →
210
+ * version resolutions — so we can only disambiguate by declared range. We try
211
+ * each importer's declared range nearest → root, and finally fall back to the
212
+ * sole resolution when only one version exists. This is best-effort; the
213
+ * caller's node_modules fallback covers cases yarn's lockfile can't express.
214
+ */
215
+ function resolveYarnVersion(resolutions, query) {
216
+ for (const candidate of query.importers) {
217
+ if (candidate.declaredRange === undefined) {
218
+ continue;
219
+ }
220
+ const version = pickYarnVersion(resolutions, candidate.declaredRange);
221
+ if (version !== undefined) {
222
+ return version;
223
+ }
224
+ }
225
+ return pickYarnVersion(resolutions, undefined);
226
+ }
227
+ /**
228
+ * Parses the resolutions for `packageName` from a yarn berry (v2+) `yarn.lock`,
229
+ * which is YAML. Entries are keyed by one or more comma-separated descriptors
230
+ * (`"@playwright/test@npm:^1.40.0"`) and carry a `version` field.
231
+ */
232
+ function parseYarnBerryResolutions(content, packageName) {
233
+ const data = parseYaml(content);
234
+ if (typeof data !== 'object' || data === null) {
235
+ return [];
236
+ }
237
+ const resolutions = [];
238
+ for (const [key, value] of Object.entries(data)) {
239
+ if (key === '__metadata') {
240
+ continue;
241
+ }
242
+ const version = value?.version;
243
+ if (typeof version !== 'string') {
244
+ continue;
245
+ }
246
+ const ranges = key
247
+ .split(',')
248
+ .map(descriptor => parseYarnDescriptor(descriptor.trim()))
249
+ .filter((parsed) => parsed !== undefined && parsed.name === packageName)
250
+ .map(parsed => parsed.range);
251
+ if (ranges.length > 0) {
252
+ resolutions.push({ ranges, version });
253
+ }
254
+ }
255
+ return resolutions;
256
+ }
257
+ /**
258
+ * Parses the resolutions for `packageName` from a yarn classic (v1) `yarn.lock`.
259
+ *
260
+ * The classic format is not YAML. Each resolution is a block whose header is an
261
+ * unindented, comma-separated list of (optionally quoted) descriptors ending in
262
+ * `:`, followed by indented fields including `version "x.y.z"`.
263
+ */
264
+ function parseYarnClassicResolutions(content, packageName) {
265
+ const resolutions = [];
266
+ const lines = content.split(/\r?\n/);
267
+ let index = 0;
268
+ while (index < lines.length) {
269
+ const line = lines[index];
270
+ // A header is an unindented, non-comment line ending with ':'.
271
+ const isHeader = line.length > 0
272
+ && !line.startsWith(' ')
273
+ && !line.startsWith('#')
274
+ && line.trimEnd().endsWith(':');
275
+ if (!isHeader) {
276
+ index++;
277
+ continue;
278
+ }
279
+ const header = line.trimEnd().slice(0, -1);
280
+ const ranges = header
281
+ .split(',')
282
+ .map(descriptor => parseYarnDescriptor(descriptor.trim().replace(/^"|"$/g, '')))
283
+ .filter((parsed) => parsed !== undefined && parsed.name === packageName)
284
+ .map(parsed => parsed.range);
285
+ // Scan the indented body for the version field, stopping at the next
286
+ // header (the next unindented, non-empty line).
287
+ let version;
288
+ index++;
289
+ while (index < lines.length) {
290
+ const bodyLine = lines[index];
291
+ if (bodyLine.length > 0 && !bodyLine.startsWith(' ')) {
292
+ break;
293
+ }
294
+ const match = bodyLine.match(/^\s+version:?\s+"?([^"]+?)"?\s*$/);
295
+ if (match) {
296
+ version = match[1];
297
+ }
298
+ index++;
299
+ }
300
+ if (ranges.length > 0 && version !== undefined) {
301
+ resolutions.push({ ranges, version });
302
+ }
303
+ }
304
+ return resolutions;
305
+ }
306
+ /**
307
+ * Resolves a package version from a `yarn.lock`, dispatching to the classic or
308
+ * berry parser. Berry lockfiles carry a `__metadata:` block; classic ones do
309
+ * not. The lockfile is parsed once, then resolved across the importer chain.
310
+ */
311
+ export function parseYarnLockfileVersion(content, query) {
312
+ const resolutions = /^__metadata:/m.test(content)
313
+ ? parseYarnBerryResolutions(content, query.packageName)
314
+ : parseYarnClassicResolutions(content, query.packageName);
315
+ return resolveYarnVersion(resolutions, query);
316
+ }
317
+ //# sourceMappingURL=lockfile-package-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockfile-package-version.js","sourceRoot":"","sources":["../../../../src/services/check-parser/package-files/lockfile-package-version.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { PackageJsonFile } from './package-json-file.js';
2
2
  import { Workspace } from './workspace.js';
3
+ import { LockfilePackageQuery } from './lockfile-package-version.js';
3
4
  export declare class Runnable {
4
5
  executable: string;
5
6
  args: string[];
@@ -18,6 +19,14 @@ export interface PackageManager {
18
19
  addCommand(options: AddCommandOptions): Runnable;
19
20
  execCommand(args: string[]): Runnable;
20
21
  lookupWorkspace(dir: string): Promise<Workspace | undefined>;
22
+ /**
23
+ * Resolves the version of a single package as recorded in the package
24
+ * manager's lockfile, scoped to a workspace importer. Returns `undefined`
25
+ * when the lockfile can't be read or parsed, the package isn't present, or
26
+ * the format isn't supported — the caller is expected to fall back to
27
+ * another source (e.g. reading the installed package).
28
+ */
29
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
21
30
  detector(): PackageManagerDetector;
22
31
  }
23
32
  export type DetectionMethod = 'userAgent' | 'runtime' | 'lockfile' | 'configFile' | 'executable';
@@ -41,6 +50,11 @@ export declare abstract class PackageManagerDetector {
41
50
  abstract addCommand(options: AddCommandOptions): Runnable;
42
51
  abstract execCommand(args: string[]): Runnable;
43
52
  abstract lookupWorkspace(dir: string): Promise<Workspace | undefined>;
53
+ /**
54
+ * Default: lockfile parsing is unsupported, so callers fall back. Package
55
+ * managers that can parse their lockfile override this.
56
+ */
57
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
44
58
  detector(): PackageManagerDetector;
45
59
  }
46
60
  export declare class NpmDetector extends PackageManagerDetector implements PackageManager {
@@ -56,6 +70,7 @@ export declare class NpmDetector extends PackageManagerDetector implements Packa
56
70
  addCommand(options: AddCommandOptions): Runnable;
57
71
  execCommand(args: string[]): Runnable;
58
72
  lookupWorkspace(dir: string): Promise<Workspace | undefined>;
73
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
59
74
  }
60
75
  export declare class CNpmDetector extends PackageManagerDetector implements PackageManager {
61
76
  get name(): string;
@@ -70,6 +85,7 @@ export declare class CNpmDetector extends PackageManagerDetector implements Pack
70
85
  addCommand(options: AddCommandOptions): Runnable;
71
86
  execCommand(args: string[]): Runnable;
72
87
  lookupWorkspace(dir: string): Promise<Workspace | undefined>;
88
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
73
89
  }
74
90
  export declare class PNpmDetector extends PackageManagerDetector implements PackageManager {
75
91
  get name(): string;
@@ -84,6 +100,7 @@ export declare class PNpmDetector extends PackageManagerDetector implements Pack
84
100
  addCommand(options: AddCommandOptions): Runnable;
85
101
  execCommand(args: string[]): Runnable;
86
102
  lookupWorkspace(dir: string): Promise<Workspace | undefined>;
103
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
87
104
  }
88
105
  export declare class YarnDetector extends PackageManagerDetector implements PackageManager {
89
106
  get name(): string;
@@ -98,6 +115,7 @@ export declare class YarnDetector extends PackageManagerDetector implements Pack
98
115
  addCommand(options: AddCommandOptions): Runnable;
99
116
  execCommand(args: string[]): Runnable;
100
117
  lookupWorkspace(dir: string): Promise<Workspace | undefined>;
118
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
101
119
  }
102
120
  export declare class DenoDetector extends PackageManagerDetector implements PackageManager {
103
121
  get name(): string;
@@ -126,6 +144,7 @@ export declare class BunDetector extends PackageManagerDetector implements Packa
126
144
  addCommand(options: AddCommandOptions): Runnable;
127
145
  execCommand(args: string[]): Runnable;
128
146
  lookupWorkspace(dir: string): Promise<Workspace | undefined>;
147
+ resolvePackageVersionFromLockfile(lockfilePath: string, query: LockfilePackageQuery): Promise<string | undefined>;
129
148
  }
130
149
  /**
131
150
  * Inspiration taken from https://github.com/otiai10/lookpath.
@@ -7,6 +7,7 @@ import { PackageJsonFile } from './package-json-file.js';
7
7
  import { JsonSourceFile } from './json-source-file.js';
8
8
  import { Package, Workspace } from './workspace.js';
9
9
  import { Err, Ok } from './result.js';
10
+ import { parseBunLockfileVersion, parseNpmLockfileVersion, parsePnpmLockfileVersion, parseYarnLockfileVersion, } from './lockfile-package-version.js';
10
11
  export class Runnable {
11
12
  executable;
12
13
  args;
@@ -20,6 +21,26 @@ export class Runnable {
20
21
  }
21
22
  class NotDetectedError extends Error {
22
23
  }
24
+ /**
25
+ * Reads a lockfile and runs a format-specific parser over it, swallowing IO
26
+ * and parse errors so detection degrades to the caller's fallback rather than
27
+ * throwing on an unreadable or unexpected lockfile.
28
+ */
29
+ async function parseLockfileWith(lockfilePath, query, parse) {
30
+ let content;
31
+ try {
32
+ content = await fs.readFile(lockfilePath, 'utf8');
33
+ }
34
+ catch {
35
+ return undefined;
36
+ }
37
+ try {
38
+ return parse(content, query);
39
+ }
40
+ catch {
41
+ return undefined;
42
+ }
43
+ }
23
44
  export class PackageManagerDetector {
24
45
  async detectLockfile(dir) {
25
46
  for (const lockfile of this.representativeLockfiles) {
@@ -32,6 +53,16 @@ export class PackageManagerDetector {
32
53
  }
33
54
  throw new NotDetectedError();
34
55
  }
56
+ /**
57
+ * Default: lockfile parsing is unsupported, so callers fall back. Package
58
+ * managers that can parse their lockfile override this.
59
+ */
60
+ // eslint-disable-next-line require-await
61
+ async resolvePackageVersionFromLockfile(lockfilePath, query) {
62
+ void lockfilePath;
63
+ void query;
64
+ return undefined;
65
+ }
35
66
  detector() {
36
67
  return this;
37
68
  }
@@ -82,6 +113,9 @@ export class NpmDetector extends PackageManagerDetector {
82
113
  async lookupWorkspace(dir) {
83
114
  return await lookupNearestPackageJsonWorkspace(this, dir);
84
115
  }
116
+ async resolvePackageVersionFromLockfile(lockfilePath, query) {
117
+ return await parseLockfileWith(lockfilePath, query, parseNpmLockfileVersion);
118
+ }
85
119
  }
86
120
  export class CNpmDetector extends PackageManagerDetector {
87
121
  get name() {
@@ -129,6 +163,10 @@ export class CNpmDetector extends PackageManagerDetector {
129
163
  async lookupWorkspace(dir) {
130
164
  return await lookupNearestPackageJsonWorkspace(this, dir);
131
165
  }
166
+ async resolvePackageVersionFromLockfile(lockfilePath, query) {
167
+ // cnpm shares npm's package-lock.json format.
168
+ return await parseLockfileWith(lockfilePath, query, parseNpmLockfileVersion);
169
+ }
132
170
  }
133
171
  export class PNpmDetector extends PackageManagerDetector {
134
172
  get name() {
@@ -223,6 +261,9 @@ export class PNpmDetector extends PackageManagerDetector {
223
261
  });
224
262
  }
225
263
  }
264
+ async resolvePackageVersionFromLockfile(lockfilePath, query) {
265
+ return await parseLockfileWith(lockfilePath, query, parsePnpmLockfileVersion);
266
+ }
226
267
  }
227
268
  export class YarnDetector extends PackageManagerDetector {
228
269
  get name() {
@@ -266,6 +307,9 @@ export class YarnDetector extends PackageManagerDetector {
266
307
  async lookupWorkspace(dir) {
267
308
  return await lookupNearestPackageJsonWorkspace(this, dir);
268
309
  }
310
+ async resolvePackageVersionFromLockfile(lockfilePath, query) {
311
+ return await parseLockfileWith(lockfilePath, query, parseYarnLockfileVersion);
312
+ }
269
313
  }
270
314
  export class DenoDetector extends PackageManagerDetector {
271
315
  get name() {
@@ -384,6 +428,14 @@ export class BunDetector extends PackageManagerDetector {
384
428
  async lookupWorkspace(dir) {
385
429
  return await lookupNearestPackageJsonWorkspace(this, dir);
386
430
  }
431
+ async resolvePackageVersionFromLockfile(lockfilePath, query) {
432
+ // The legacy binary lockfile (bun.lockb) isn't parseable here; only the
433
+ // text format (bun.lock) is. Skip the binary form so the caller falls back.
434
+ if (lockfilePath.endsWith('.lockb')) {
435
+ return undefined;
436
+ }
437
+ return await parseLockfileWith(lockfilePath, query, parseBunLockfileVersion);
438
+ }
387
439
  }
388
440
  async function accessR(filePath) {
389
441
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../../../src/services/check-parser/package-files/package-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../../../src/services/check-parser/package-files/package-manager.ts"],"names":[],"mappings":"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"}
@@ -14,4 +14,15 @@ export declare class PlaywrightProjectBundler {
14
14
  }
15
15
  export declare function normalizeVersion(v?: string | undefined): string | undefined;
16
16
  export declare function getAutoIncludes(basePath: string, globCwd: string, packageManager: PackageManager, existingIncludes: string[]): string[];
17
+ /**
18
+ * Resolves the @playwright/test version that should run in the cloud.
19
+ *
20
+ * The project's lockfile is the source of truth: the version it pins is what
21
+ * CI and other developers resolve, and it stays correct even when the local
22
+ * node_modules has drifted (e.g. after switching branches without
23
+ * reinstalling). When no usable lockfile answer is available — no lockfile, an
24
+ * unsupported/unparseable format, or the package isn't pinned for the relevant
25
+ * workspace member — we fall back to reading the installed package.
26
+ */
27
+ export declare function resolvePlaywrightVersion(cwd: string): Promise<string>;
17
28
  export declare function getPlaywrightVersionFromPackage(cwd: string): Promise<string>;