@alwaysmeticulous/cli 2.297.1 → 2.298.1
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/dist/command-utils/common-options.d.ts +1 -0
- package/dist/command-utils/common-options.d.ts.map +1 -0
- package/dist/command-utils/download-session.utils.d.ts +3 -2
- package/dist/command-utils/download-session.utils.d.ts.map +1 -0
- package/dist/command-utils/download-session.utils.js +2 -2
- package/dist/command-utils/download-session.utils.js.map +1 -1
- package/dist/command-utils/parse-rewrites.d.ts +2 -1
- package/dist/command-utils/parse-rewrites.d.ts.map +1 -0
- package/dist/command-utils/sentry.utils.d.ts +1 -0
- package/dist/command-utils/sentry.utils.d.ts.map +1 -0
- package/dist/command-utils/sentry.utils.js +4 -4
- package/dist/command-utils/sentry.utils.js.map +1 -1
- package/dist/commands/agent/index.d.ts +2 -1
- package/dist/commands/agent/index.d.ts.map +1 -0
- package/dist/commands/agent/js-coverage-diff.command.d.ts +2 -1
- package/dist/commands/agent/js-coverage-diff.command.d.ts.map +1 -0
- package/dist/commands/agent/js-coverage.command.d.ts +2 -1
- package/dist/commands/agent/js-coverage.command.d.ts.map +1 -0
- package/dist/commands/agent/js-coverage.command.js +13 -10
- package/dist/commands/agent/js-coverage.command.js.map +1 -1
- package/dist/commands/agent/screenshot-dom-diff.command.d.ts +2 -1
- package/dist/commands/agent/screenshot-dom-diff.command.d.ts.map +1 -0
- package/dist/commands/agent/screenshot-image-files.command.d.ts +2 -1
- package/dist/commands/agent/screenshot-image-files.command.d.ts.map +1 -0
- package/dist/commands/agent/screenshot-image.command.d.ts +2 -1
- package/dist/commands/agent/screenshot-image.command.d.ts.map +1 -0
- package/dist/commands/agent/test-run-diffs.command.d.ts +6 -2
- package/dist/commands/agent/test-run-diffs.command.d.ts.map +1 -0
- package/dist/commands/agent/test-run-diffs.command.js +71 -53
- package/dist/commands/agent/test-run-diffs.command.js.map +1 -1
- package/dist/commands/agent/test-run-diffs.utils.d.ts +44 -0
- package/dist/commands/agent/test-run-diffs.utils.d.ts.map +1 -0
- package/dist/commands/agent/test-run-diffs.utils.js +65 -0
- package/dist/commands/agent/test-run-diffs.utils.js.map +1 -0
- package/dist/commands/agent/test-run-diffs.utils.spec.d.ts +2 -0
- package/dist/commands/agent/test-run-diffs.utils.spec.d.ts.map +1 -0
- package/dist/commands/agent/test-run-diffs.utils.spec.js +186 -0
- package/dist/commands/agent/test-run-diffs.utils.spec.js.map +1 -0
- package/dist/commands/agent/test-run-for-commit.command.d.ts +2 -2
- package/dist/commands/agent/test-run-for-commit.command.d.ts.map +1 -0
- package/dist/commands/agent/test-run-for-commit.command.js +9 -19
- package/dist/commands/agent/test-run-for-commit.command.js.map +1 -1
- package/dist/commands/agent/timeline.command.d.ts +2 -1
- package/dist/commands/agent/timeline.command.d.ts.map +1 -0
- package/dist/commands/auth/index.d.ts +2 -1
- package/dist/commands/auth/index.d.ts.map +1 -0
- package/dist/commands/auth/logout.command.d.ts +2 -1
- package/dist/commands/auth/logout.command.d.ts.map +1 -0
- package/dist/commands/auth/logout.command.js +5 -4
- package/dist/commands/auth/logout.command.js.map +1 -1
- package/dist/commands/auth/set-project.command.d.ts +2 -1
- package/dist/commands/auth/set-project.command.d.ts.map +1 -0
- package/dist/commands/auth/set-project.command.js +2 -2
- package/dist/commands/auth/set-project.command.js.map +1 -1
- package/dist/commands/auth/unset-project.command.d.ts +2 -1
- package/dist/commands/auth/unset-project.command.d.ts.map +1 -0
- package/dist/commands/auth/unset-project.command.js +4 -3
- package/dist/commands/auth/unset-project.command.js.map +1 -1
- package/dist/commands/auth/whoami.command.d.ts +2 -1
- package/dist/commands/auth/whoami.command.d.ts.map +1 -0
- package/dist/commands/ci/index.d.ts +2 -1
- package/dist/commands/ci/index.d.ts.map +1 -0
- package/dist/commands/ci/prepare.command.d.ts +3 -2
- package/dist/commands/ci/prepare.command.d.ts.map +1 -0
- package/dist/commands/ci/resolve-git-options.d.ts +1 -0
- package/dist/commands/ci/resolve-git-options.d.ts.map +1 -0
- package/dist/commands/ci/resolve-git-options.js +8 -3
- package/dist/commands/ci/resolve-git-options.js.map +1 -1
- package/dist/commands/ci/run-local.command.d.ts +4 -3
- package/dist/commands/ci/run-local.command.d.ts.map +1 -0
- package/dist/commands/ci/run-local.command.js +2 -2
- package/dist/commands/ci/run-local.command.js.map +1 -1
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts +2 -1
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts.map +1 -0
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js +2 -2
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js.map +1 -1
- package/dist/commands/ci/run.command.d.ts +2 -1
- package/dist/commands/ci/run.command.d.ts.map +1 -0
- package/dist/commands/ci/run.command.js +10 -4
- package/dist/commands/ci/run.command.js.map +1 -1
- package/dist/commands/ci/start-tunnel.command.d.ts +2 -1
- package/dist/commands/ci/start-tunnel.command.d.ts.map +1 -0
- package/dist/commands/ci/start-tunnel.command.js +3 -3
- package/dist/commands/ci/start-tunnel.command.js.map +1 -1
- package/dist/commands/ci/upload-asset-chunk.command.d.ts +2 -1
- package/dist/commands/ci/upload-asset-chunk.command.d.ts.map +1 -0
- package/dist/commands/ci/upload-assets.command.d.ts +2 -1
- package/dist/commands/ci/upload-assets.command.d.ts.map +1 -0
- package/dist/commands/ci/upload-assets.command.js +3 -3
- package/dist/commands/ci/upload-assets.command.js.map +1 -1
- package/dist/commands/ci/upload-container.command.d.ts +3 -2
- package/dist/commands/ci/upload-container.command.d.ts.map +1 -0
- package/dist/commands/ci/upload-container.command.js +2 -2
- package/dist/commands/ci/upload-container.command.js.map +1 -1
- package/dist/commands/debug/clean-workspaces.d.ts +1 -0
- package/dist/commands/debug/clean-workspaces.d.ts.map +1 -0
- package/dist/commands/debug/index.d.ts +2 -1
- package/dist/commands/debug/index.d.ts.map +1 -0
- package/dist/commands/debug/index.js +2 -2
- package/dist/commands/debug/index.js.map +1 -1
- package/dist/commands/debug/present-workspace.d.ts +1 -0
- package/dist/commands/debug/present-workspace.d.ts.map +1 -0
- package/dist/commands/debug/present-workspace.js +2 -2
- package/dist/commands/debug/present-workspace.js.map +1 -1
- package/dist/commands/debug/project-worktree.d.ts +2 -1
- package/dist/commands/debug/project-worktree.d.ts.map +1 -0
- package/dist/commands/deprecated-aliases.d.ts +2 -1
- package/dist/commands/deprecated-aliases.d.ts.map +1 -0
- package/dist/commands/download/index.d.ts +2 -1
- package/dist/commands/download/index.d.ts.map +1 -0
- package/dist/commands/download/replay.command.d.ts +2 -1
- package/dist/commands/download/replay.command.d.ts.map +1 -0
- package/dist/commands/download/session.command.d.ts +2 -1
- package/dist/commands/download/session.command.d.ts.map +1 -0
- package/dist/commands/download/test-run.command.d.ts +2 -1
- package/dist/commands/download/test-run.command.d.ts.map +1 -0
- package/dist/commands/download/test-run.command.js +2 -2
- package/dist/commands/download/test-run.command.js.map +1 -1
- package/dist/commands/local/get-edited-files.utils.d.ts +2 -1
- package/dist/commands/local/get-edited-files.utils.d.ts.map +1 -0
- package/dist/commands/local/get-edited-files.utils.js +3 -3
- package/dist/commands/local/get-edited-files.utils.js.map +1 -1
- package/dist/commands/local/get-edited-files.utils.spec.d.ts +1 -0
- package/dist/commands/local/get-edited-files.utils.spec.d.ts.map +1 -0
- package/dist/commands/local/index.d.ts +2 -1
- package/dist/commands/local/index.d.ts.map +1 -0
- package/dist/commands/local/relevant-sessions.command.d.ts +2 -1
- package/dist/commands/local/relevant-sessions.command.d.ts.map +1 -0
- package/dist/commands/local/relevant-sessions.command.js +2 -2
- package/dist/commands/local/relevant-sessions.command.js.map +1 -1
- package/dist/commands/project/index.d.ts +2 -1
- package/dist/commands/project/index.d.ts.map +1 -0
- package/dist/commands/project/index.js +7 -3
- package/dist/commands/project/index.js.map +1 -1
- package/dist/commands/project/show.command.d.ts +2 -1
- package/dist/commands/project/show.command.d.ts.map +1 -0
- package/dist/commands/project/show.command.js +2 -2
- package/dist/commands/project/show.command.js.map +1 -1
- package/dist/commands/project/upload-source.command.d.ts +2 -1
- package/dist/commands/project/upload-source.command.d.ts.map +1 -0
- package/dist/commands/record/index.d.ts +2 -1
- package/dist/commands/record/index.d.ts.map +1 -0
- package/dist/commands/record/login.command.d.ts +2 -1
- package/dist/commands/record/login.command.d.ts.map +1 -0
- package/dist/commands/record/login.command.js +2 -2
- package/dist/commands/record/login.command.js.map +1 -1
- package/dist/commands/record/session.command.d.ts +2 -1
- package/dist/commands/record/session.command.d.ts.map +1 -0
- package/dist/commands/record/session.command.js +2 -2
- package/dist/commands/record/session.command.js.map +1 -1
- package/dist/commands/replay-debugger.ui.d.ts +4 -3
- package/dist/commands/replay-debugger.ui.d.ts.map +1 -0
- package/dist/commands/replay-debugger.ui.js +2 -2
- package/dist/commands/replay-debugger.ui.js.map +1 -1
- package/dist/commands/replay.command.d.ts +4 -3
- package/dist/commands/replay.command.d.ts.map +1 -0
- package/dist/commands/replay.command.js +8 -4
- package/dist/commands/replay.command.js.map +1 -1
- package/dist/commands/schema.command.d.ts +2 -1
- package/dist/commands/schema.command.d.ts.map +1 -0
- package/dist/commands/schema.command.js +4 -3
- package/dist/commands/schema.command.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/main.d.ts +1 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +2 -2
- package/dist/main.js.map +1 -1
- package/dist/utils/__tests__/handle-auth-failure.spec.d.ts +1 -0
- package/dist/utils/__tests__/handle-auth-failure.spec.d.ts.map +1 -0
- package/dist/utils/__tests__/handle-auth-failure.spec.js +2 -2
- package/dist/utils/__tests__/handle-auth-failure.spec.js.map +1 -1
- package/dist/utils/__tests__/resolve-project-identifier.spec.d.ts +1 -0
- package/dist/utils/__tests__/resolve-project-identifier.spec.d.ts.map +1 -0
- package/dist/utils/__tests__/resolve-test-run-from-commit.spec.d.ts +2 -0
- package/dist/utils/__tests__/resolve-test-run-from-commit.spec.d.ts.map +1 -0
- package/dist/utils/__tests__/resolve-test-run-from-commit.spec.js +65 -0
- package/dist/utils/__tests__/resolve-test-run-from-commit.spec.js.map +1 -0
- package/dist/utils/cli-user-error.d.ts +1 -0
- package/dist/utils/cli-user-error.d.ts.map +1 -0
- package/dist/utils/constants.d.ts +1 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/environment.utils.d.ts +1 -0
- package/dist/utils/environment.utils.d.ts.map +1 -0
- package/dist/utils/format-coverage-ranges.d.ts +2 -1
- package/dist/utils/format-coverage-ranges.d.ts.map +1 -0
- package/dist/utils/handle-auth-failure.d.ts +1 -0
- package/dist/utils/handle-auth-failure.d.ts.map +1 -0
- package/dist/utils/out-of-date-client-error.d.ts +2 -1
- package/dist/utils/out-of-date-client-error.d.ts.map +1 -0
- package/dist/utils/resolve-project-identifier.d.ts +1 -0
- package/dist/utils/resolve-project-identifier.d.ts.map +1 -0
- package/dist/utils/resolve-test-run-from-commit.d.ts +29 -11
- package/dist/utils/resolve-test-run-from-commit.d.ts.map +1 -0
- package/dist/utils/resolve-test-run-from-commit.js +64 -24
- package/dist/utils/resolve-test-run-from-commit.js.map +1 -1
- package/package.json +14 -14
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common-options.d.ts","sourceRoot":"","sources":["../../src/command-utils/common-options.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AAGjE,eAAO,MAAM,aAAa,eAAe,CAAC;AAE1C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmIV,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;CAInC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmBjC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { StructuredSessionSummary, MeticulousClient } from "@alwaysmeticulous/client";
|
|
2
|
-
import { initLogger } from "@alwaysmeticulous/common";
|
|
1
|
+
import type { StructuredSessionSummary, MeticulousClient } from "@alwaysmeticulous/client";
|
|
2
|
+
import type { initLogger } from "@alwaysmeticulous/common";
|
|
3
3
|
export declare const downloadSingleSession: (client: MeticulousClient, sessionId: string, outputDir: string, logger: ReturnType<typeof initLogger>) => Promise<StructuredSessionSummary>;
|
|
4
|
+
//# sourceMappingURL=download-session.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"download-session.utils.d.ts","sourceRoot":"","sources":["../../src/command-utils/download-session.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG3D,eAAO,MAAM,qBAAqB,WACxB,gBAAgB,aACb,MAAM,aACN,MAAM,UACT,UAAU,CAAC,OAAO,UAAU,CAAC,KACpC,OAAO,CAAC,wBAAwB,CAKlC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="39b1dae6-d5b8-537b-8420-f65ddf9973f2")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.downloadSingleSession = void 0;
|
|
@@ -13,4 +13,4 @@ const downloadSingleSession = async (client, sessionId, outputDir, logger) => {
|
|
|
13
13
|
};
|
|
14
14
|
exports.downloadSingleSession = downloadSingleSession;
|
|
15
15
|
//# sourceMappingURL=download-session.utils.js.map
|
|
16
|
-
//# debugId=
|
|
16
|
+
//# debugId=39b1dae6-d5b8-537b-8420-f65ddf9973f2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download-session.utils.js","sources":["../../src/command-utils/download-session.utils.ts"],"sourceRoot":"","names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"download-session.utils.js","sources":["../../src/command-utils/download-session.utils.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAIA,qDAAoE;AAEpE,+EAAmF;AAE5E,MAAM,qBAAqB,GAAG,KAAK,EACxC,MAAwB,EACxB,SAAiB,EACjB,SAAiB,EACjB,MAAqC,EACF,EAAE;IACrC,MAAM,WAAW,GAAG,MAAM,IAAA,iCAAwB,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,IAAA,gDAA0B,EAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,IAAI,CAAC,wBAAwB,SAAS,EAAE,CAAC,CAAC;IACjD,OAAO,WAAW,CAAC,OAAO,CAAC;AAC7B,CAAC,CAAC;AAVW,QAAA,qBAAqB,yBAUhC","debugId":"39b1dae6-d5b8-537b-8420-f65ddf9973f2"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { AssetUploadMetadata } from "@alwaysmeticulous/api";
|
|
1
|
+
import type { AssetUploadMetadata } from "@alwaysmeticulous/api";
|
|
2
2
|
/**
|
|
3
3
|
* Parses the `--rewrites` CLI flag's JSON string into the structured array
|
|
4
4
|
* `AssetUploadMetadata["rewrites"]` expects. Exits the process with a clear
|
|
5
5
|
* error message on malformed input rather than throwing.
|
|
6
6
|
*/
|
|
7
7
|
export declare const parseRewrites: (rewritesString?: string) => AssetUploadMetadata["rewrites"];
|
|
8
|
+
//# sourceMappingURL=parse-rewrites.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-rewrites.d.ts","sourceRoot":"","sources":["../../src/command-utils/parse-rewrites.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAGjE;;;;GAIG;AACH,eAAO,MAAM,aAAa,oBACP,MAAM,KACtB,mBAAmB,CAAC,UAAU,CAyChC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sentry.utils.d.ts","sourceRoot":"","sources":["../../src/command-utils/sentry.utils.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAE9C,CAAC;AAEF,eAAO,MAAM,WAAW,GAAyB,CAAC,WACvC,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,KAClC,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CA4B3B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="aa00a45a-22cf-50b2-bc86-117e11744c4a")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
5
|
if (k2 === undefined) k2 = k;
|
|
@@ -60,7 +60,7 @@ const wrapHandler = function wrapHandler_(handler) {
|
|
|
60
60
|
process.exit(0);
|
|
61
61
|
})
|
|
62
62
|
.catch(async (error) => {
|
|
63
|
-
const exitCode =
|
|
63
|
+
const exitCode = reportHandlerError(error);
|
|
64
64
|
const currentSpan = Sentry.getActiveSpan();
|
|
65
65
|
if (currentSpan) {
|
|
66
66
|
currentSpan.setStatus({ code: 2 });
|
|
@@ -73,7 +73,7 @@ const wrapHandler = function wrapHandler_(handler) {
|
|
|
73
73
|
};
|
|
74
74
|
};
|
|
75
75
|
exports.wrapHandler = wrapHandler;
|
|
76
|
-
const reportHandlerError =
|
|
76
|
+
const reportHandlerError = (error) => {
|
|
77
77
|
const logger = (0, common_1.initLogger)();
|
|
78
78
|
logger.info("");
|
|
79
79
|
// User-facing errors: message already explains what to do, and the
|
|
@@ -104,4 +104,4 @@ const reportHandlerError = async (error) => {
|
|
|
104
104
|
return 1;
|
|
105
105
|
};
|
|
106
106
|
//# sourceMappingURL=sentry.utils.js.map
|
|
107
|
-
//# debugId=
|
|
107
|
+
//# debugId=aa00a45a-22cf-50b2-bc86-117e11744c4a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sentry.utils.js","sources":["../../src/command-utils/sentry.utils.ts"],"sourceRoot":"","names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAwD;AACxD,qDAAsD;AACtD,qDAAgE;AAChE,qDAAuC;AACvC,4DAAuD;AAEhD,MAAM,UAAU,GAA+B,CAAC,OAAO,EAAE,EAAE;IAChE,MAAM,CAAC,UAAU,CAAC,gBAAgB,EAAE,OAAkC,CAAC,CAAC;AAC1E,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEK,MAAM,WAAW,GAAG,SAAS,YAAY,CAC9C,OAAmC;IAEnC,OAAO,KAAK,EAAE,IAAO,EAAE,EAAE;QACvB,MAAM,OAAO,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;gBACnC,WAAW,CAAC,GAAG,EAAE,CAAC;YACpB,CAAC;YACD,MAAM,MAAM,CAAC,KAAK,CAAC,6BAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEpD,iEAAiE;YACjE,mDAAmD;YACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"sentry.utils.js","sources":["../../src/command-utils/sentry.utils.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"aa00a45a-22cf-50b2-bc86-117e11744c4a"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAU3C,eAAO,MAAM,YAAY,EAAE,aAkB1B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CommandModule } from "yargs";
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
replayDiffId: string;
|
|
@@ -7,3 +7,4 @@ interface Options {
|
|
|
7
7
|
}
|
|
8
8
|
export declare const jsCoverageDiffCommand: CommandModule<unknown, Options>;
|
|
9
9
|
export {};
|
|
10
|
+
//# sourceMappingURL=js-coverage-diff.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-coverage-diff.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/js-coverage-diff.command.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAI3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAyDD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAuBjE,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CommandModule } from "yargs";
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
replayId: string | undefined;
|
|
@@ -9,3 +9,4 @@ interface Options {
|
|
|
9
9
|
}
|
|
10
10
|
export declare const jsCoverageCommand: CommandModule<unknown, Options>;
|
|
11
11
|
export {};
|
|
12
|
+
//# sourceMappingURL=js-coverage.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-coverage.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/js-coverage.command.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAW3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAmMD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAiC7D,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6e22ce6b-5928-5c94-a6e4-0f4e122122e9")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.jsCoverageCommand = void 0;
|
|
@@ -41,7 +41,11 @@ const handler = async ({ apiToken, replayId, testRunId, commitSha, screenshotNam
|
|
|
41
41
|
// or, when neither is given, from the local checkout's HEAD. Either way the
|
|
42
42
|
// run must have finished for coverage to exist.
|
|
43
43
|
if (testRunId != null) {
|
|
44
|
-
|
|
44
|
+
// Coverage only exists once a run has finished with a verdict; guard an
|
|
45
|
+
// explicitly passed testRunId, mirroring the check for runs resolved from
|
|
46
|
+
// a commit.
|
|
47
|
+
const { status } = await (0, client_1.getTestRun)({ client, testRunId });
|
|
48
|
+
(0, resolve_test_run_from_commit_1.assertTestRunComplete)(testRunId, status, { resultName: "coverage" });
|
|
45
49
|
await printTestRunCoverage(client, testRunId, json);
|
|
46
50
|
}
|
|
47
51
|
else {
|
|
@@ -51,13 +55,11 @@ const handler = async ({ apiToken, replayId, testRunId, commitSha, screenshotNam
|
|
|
51
55
|
}
|
|
52
56
|
};
|
|
53
57
|
// Resolves a commit to a test run for coverage. Coverage only exists once a run
|
|
54
|
-
// has finished, so an
|
|
55
|
-
// than queried.
|
|
58
|
+
// has finished with a usable verdict, so an unfinished or failed run is
|
|
59
|
+
// reported as not-yet-available rather than queried.
|
|
56
60
|
const resolveCompletedTestRunIdForCommit = async (client, apiToken, commitSha) => {
|
|
57
61
|
const { testRunId, status } = await (0, resolve_test_run_from_commit_1.resolveTestRunForCommitOrThrow)(client, apiToken, commitSha);
|
|
58
|
-
|
|
59
|
-
throw new cli_user_error_1.CliUserError(`Test run ${testRunId} for this commit is still in progress (status: ${status}); coverage is not available yet.`);
|
|
60
|
-
}
|
|
62
|
+
(0, resolve_test_run_from_commit_1.assertTestRunComplete)(testRunId, status, { resultName: "coverage" });
|
|
61
63
|
return testRunId;
|
|
62
64
|
};
|
|
63
65
|
const printReplayCoverage = async (client, apiToken, { replayId, screenshotName, testRunId, commitSha, json, }) => {
|
|
@@ -81,8 +83,9 @@ const printReplayCoverage = async (client, apiToken, { replayId, screenshotName,
|
|
|
81
83
|
// original (actionable "pass testRunId") error unchanged.
|
|
82
84
|
if (effectiveTestRunId == null && isAmbiguousTestRunError(error)) {
|
|
83
85
|
const fallback = await (0, resolve_test_run_from_commit_1.tryResolveTestRunForCommit)(client, apiToken, undefined);
|
|
84
|
-
// Only retry against a
|
|
85
|
-
|
|
86
|
+
// Only retry against a run that finished with a verdict — an unfinished
|
|
87
|
+
// or failed one has no usable coverage.
|
|
88
|
+
if (fallback != null && (0, resolve_test_run_from_commit_1.isTestRunComplete)(fallback.status)) {
|
|
86
89
|
try {
|
|
87
90
|
const result = await (0, client_1.getReplayJsCoverage)(client, replayId, {
|
|
88
91
|
screenshotName,
|
|
@@ -165,4 +168,4 @@ exports.jsCoverageCommand = {
|
|
|
165
168
|
handler: (0, sentry_utils_1.wrapHandler)(handler),
|
|
166
169
|
};
|
|
167
170
|
//# sourceMappingURL=js-coverage.command.js.map
|
|
168
|
-
//# debugId=
|
|
171
|
+
//# debugId=6e22ce6b-5928-5c94-a6e4-0f4e122122e9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"js-coverage.command.js","sources":["../../../src/commands/agent/js-coverage.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"js-coverage.command.js","sources":["../../../src/commands/agent/js-coverage.command.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"6e22ce6b-5928-5c94-a6e4-0f4e122122e9"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CommandModule } from "yargs";
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
replayDiffId: string;
|
|
@@ -8,3 +8,4 @@ interface Options {
|
|
|
8
8
|
}
|
|
9
9
|
export declare const domDiffCommand: CommandModule<unknown, Options>;
|
|
10
10
|
export {};
|
|
11
|
+
//# sourceMappingURL=screenshot-dom-diff.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenshot-dom-diff.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/screenshot-dom-diff.command.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AA6CD,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CA2B1D,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CommandModule } from "yargs";
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
replayDiffId: string;
|
|
@@ -6,3 +6,4 @@ interface Options {
|
|
|
6
6
|
}
|
|
7
7
|
export declare const imageFilesCommand: CommandModule<unknown, Options>;
|
|
8
8
|
export {};
|
|
9
|
+
//# sourceMappingURL=screenshot-image-files.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenshot-image-files.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/screenshot-image-files.command.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAyFD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAkB7D,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CommandModule } from "yargs";
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
replayDiffId: string;
|
|
@@ -6,3 +6,4 @@ interface Options {
|
|
|
6
6
|
}
|
|
7
7
|
export declare const imageUrlsCommand: CommandModule<unknown, Options>;
|
|
8
8
|
export {};
|
|
9
|
+
//# sourceMappingURL=screenshot-image.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenshot-image.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/screenshot-image.command.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AA8BD,eAAO,MAAM,gBAAgB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAiB5D,CAAC"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import { CommandModule } from "yargs";
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
testRunId: string | undefined;
|
|
5
5
|
commitSha: string | undefined;
|
|
6
6
|
waitForTestRunToComplete: boolean;
|
|
7
|
-
includeMatches: boolean;
|
|
8
7
|
includeReplayIds: boolean;
|
|
8
|
+
includeDomDiffIds: boolean;
|
|
9
|
+
includeAllDiffs: boolean;
|
|
10
|
+
includeMatches: boolean;
|
|
11
|
+
orderByReplayDiffs: boolean;
|
|
9
12
|
verbose: boolean;
|
|
10
13
|
}
|
|
11
14
|
export declare const testRunDiffsCommand: CommandModule<unknown, Options>;
|
|
12
15
|
export {};
|
|
16
|
+
//# sourceMappingURL=test-run-diffs.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-run-diffs.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/test-run-diffs.command.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAgB3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,wBAAwB,EAAE,OAAO,CAAC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;CAClB;AA0JD,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAyD/D,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5321980a-12dc-57c6-bf03-3ca418b37962")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.testRunDiffsCommand = void 0;
|
|
@@ -8,10 +8,12 @@ const common_1 = require("@alwaysmeticulous/common");
|
|
|
8
8
|
const sentry_utils_1 = require("../../command-utils/sentry.utils");
|
|
9
9
|
const cli_user_error_1 = require("../../utils/cli-user-error");
|
|
10
10
|
const resolve_test_run_from_commit_1 = require("../../utils/resolve-test-run-from-commit");
|
|
11
|
+
const test_run_diffs_utils_1 = require("./test-run-diffs.utils");
|
|
11
12
|
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
12
|
-
|
|
13
|
+
/** Give up polling the diffs summary after this long, rather than forever. */
|
|
14
|
+
const SUMMARY_POLL_TIMEOUT_MS = 10 * 60_000;
|
|
13
15
|
const log = (...args) => process.stderr.write(args.join(" ") + "\n");
|
|
14
|
-
const handler = async ({ apiToken, testRunId, commitSha, waitForTestRunToComplete, includeMatches,
|
|
16
|
+
const handler = async ({ apiToken, testRunId, commitSha, waitForTestRunToComplete, includeReplayIds, includeDomDiffIds, includeAllDiffs, includeMatches, orderByReplayDiffs, verbose, }) => {
|
|
15
17
|
(0, common_1.initLogger)();
|
|
16
18
|
if (testRunId != null && commitSha != null) {
|
|
17
19
|
throw new cli_user_error_1.CliUserError("Pass either --testRunId or --commitSha, not both.");
|
|
@@ -34,32 +36,49 @@ const handler = async ({ apiToken, testRunId, commitSha, waitForTestRunToComplet
|
|
|
34
36
|
resolvedTestRunId = run.testRunId;
|
|
35
37
|
status = run.status;
|
|
36
38
|
}
|
|
37
|
-
// Diffs are only meaningful once the run has finished
|
|
38
|
-
//
|
|
39
|
-
// the
|
|
40
|
-
if ((0, resolve_test_run_from_commit_1.isTestRunInProgress)(status)
|
|
41
|
-
|
|
42
|
-
"pass --waitForTestRunToComplete to block until it finishes and then show diffs.");
|
|
43
|
-
return;
|
|
39
|
+
// Diffs are only meaningful once the run has finished with a verdict
|
|
40
|
+
// (Success/Failure). Wait if asked and the run is still in progress, then
|
|
41
|
+
// classify the resulting status.
|
|
42
|
+
if (waitForTestRunToComplete && (0, resolve_test_run_from_commit_1.isTestRunInProgress)(status)) {
|
|
43
|
+
status = await (0, resolve_test_run_from_commit_1.awaitTestRunCompletion)(client, resolvedTestRunId);
|
|
44
44
|
}
|
|
45
|
-
if (
|
|
46
|
-
|
|
45
|
+
if ((0, resolve_test_run_from_commit_1.isTestRunInProgress)(status)) {
|
|
46
|
+
// Reached only when the caller didn't wait (waiting resolves in-progress
|
|
47
|
+
// above), so the hint is always worth showing. Diffs aren't available yet,
|
|
48
|
+
// so report and stop rather than error out.
|
|
49
|
+
log(`Test run ${resolvedTestRunId} is not complete (status: ${status}). ` +
|
|
50
|
+
"Pass --waitForTestRunToComplete to block until it finishes and then show diffs.");
|
|
51
|
+
return;
|
|
47
52
|
}
|
|
53
|
+
// Reject fatal failures (Aborted/ExecutionError) and session-pool bases
|
|
54
|
+
// (Partial, which never finish on their own and aren't tied to a change).
|
|
55
|
+
(0, resolve_test_run_from_commit_1.assertTestRunComplete)(resolvedTestRunId, status, { resultName: "diffs" });
|
|
48
56
|
const t0 = performance.now();
|
|
49
57
|
log(`Fetching diffs summary for test run ${resolvedTestRunId}...`);
|
|
50
|
-
|
|
58
|
+
// --includeMatches implies --includeAllDiffs (matches are never part of the
|
|
59
|
+
// selected subset, so they only make sense alongside the full set). Use the
|
|
60
|
+
// effective value for both the request and the isSelected column.
|
|
61
|
+
const allDiffs = (0, test_run_diffs_utils_1.resolveIncludeAllDiffs)({ includeAllDiffs, includeMatches });
|
|
62
|
+
const diffsSummaryOptions = {
|
|
51
63
|
includeReplayIds,
|
|
64
|
+
includeDomDiffIds,
|
|
65
|
+
includeAllDiffs: allDiffs,
|
|
52
66
|
includeMatches,
|
|
53
|
-
|
|
54
|
-
|
|
67
|
+
orderByReplayDiffs,
|
|
68
|
+
};
|
|
69
|
+
let response = await (0, client_1.getTestRunDiffsSummary)(client, resolvedTestRunId, diffsSummaryOptions);
|
|
70
|
+
// Poll until complete (or give up after the timeout, rather than forever).
|
|
71
|
+
const summaryDeadline = performance.now() + SUMMARY_POLL_TIMEOUT_MS;
|
|
55
72
|
while (response.status === "pending" || response.status === "processing") {
|
|
56
73
|
if (verbose)
|
|
57
74
|
log(`Status: ${response.status}`);
|
|
75
|
+
if (performance.now() >= summaryDeadline) {
|
|
76
|
+
log(`Diffs summary for test run ${resolvedTestRunId} did not complete within 10 minutes ` +
|
|
77
|
+
`(status: ${response.status}). Something may have gone wrong — try again later.`);
|
|
78
|
+
process.exit(1);
|
|
79
|
+
}
|
|
58
80
|
await sleep(2000);
|
|
59
|
-
response = await (0, client_1.getTestRunDiffsSummary)(client, resolvedTestRunId,
|
|
60
|
-
includeReplayIds,
|
|
61
|
-
includeMatches,
|
|
62
|
-
});
|
|
81
|
+
response = await (0, client_1.getTestRunDiffsSummary)(client, resolvedTestRunId, diffsSummaryOptions);
|
|
63
82
|
}
|
|
64
83
|
if (response.status !== "complete") {
|
|
65
84
|
log(`Error: unexpected status "${response.status}"`);
|
|
@@ -70,38 +89,22 @@ const handler = async ({ apiToken, testRunId, commitSha, waitForTestRunToComplet
|
|
|
70
89
|
log("No replay diffs found for this test run.");
|
|
71
90
|
return;
|
|
72
91
|
}
|
|
73
|
-
//
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
if (includeReplayIds)
|
|
84
|
-
headerFields.push("baseReplayId", "headReplayId");
|
|
85
|
-
console.log(headerFields.join("\t"));
|
|
92
|
+
// The backend sets `index` to the priority rank by default, or the
|
|
93
|
+
// within-replay position (with `total`) when orderByReplayDiffs is set.
|
|
94
|
+
const rows = (0, test_run_diffs_utils_1.flattenDiffRows)(data, orderByReplayDiffs);
|
|
95
|
+
const columns = {
|
|
96
|
+
orderByReplayDiffs,
|
|
97
|
+
includeDomDiffIds,
|
|
98
|
+
includeAllDiffs: allDiffs,
|
|
99
|
+
includeReplayIds,
|
|
100
|
+
};
|
|
101
|
+
console.log((0, test_run_diffs_utils_1.buildDiffsSummaryHeader)(columns).join("\t"));
|
|
86
102
|
let totalDiffScreenshots = 0;
|
|
87
|
-
for (const
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
totalDiffScreenshots++;
|
|
91
|
-
}
|
|
92
|
-
const fields = [
|
|
93
|
-
rd.replayDiffId,
|
|
94
|
-
s.screenshotName,
|
|
95
|
-
s.index,
|
|
96
|
-
s.total,
|
|
97
|
-
s.outcome,
|
|
98
|
-
fmtMismatch(s.mismatchFraction),
|
|
99
|
-
s.domDiffIds,
|
|
100
|
-
];
|
|
101
|
-
if (includeReplayIds)
|
|
102
|
-
fields.push(rd.baseReplayId ?? "", rd.headReplayId ?? "");
|
|
103
|
-
console.log(fields.join("\t"));
|
|
103
|
+
for (const row of rows) {
|
|
104
|
+
if (row.screenshot.userVisibleOutcome === "difference") {
|
|
105
|
+
totalDiffScreenshots++;
|
|
104
106
|
}
|
|
107
|
+
console.log((0, test_run_diffs_utils_1.formatDiffRow)(row, columns).join("\t"));
|
|
105
108
|
}
|
|
106
109
|
const tEnd = performance.now();
|
|
107
110
|
log(`${data.length} replay diff(s), ${totalDiffScreenshots} screenshot diff(s), total ${((tEnd - t0) / 1000).toFixed(1)}s`);
|
|
@@ -124,14 +127,29 @@ exports.testRunDiffsCommand = {
|
|
|
124
127
|
default: false,
|
|
125
128
|
description: "If the test run is still in progress, block until it finishes before fetching diffs (otherwise an in-progress run is reported and the command exits).",
|
|
126
129
|
},
|
|
130
|
+
includeReplayIds: {
|
|
131
|
+
boolean: true,
|
|
132
|
+
description: "Include base and head replay IDs per replay diff",
|
|
133
|
+
default: false,
|
|
134
|
+
},
|
|
135
|
+
includeDomDiffIds: {
|
|
136
|
+
boolean: true,
|
|
137
|
+
description: "Add a domDiffIds column grouping screenshots by structural DOM change",
|
|
138
|
+
default: false,
|
|
139
|
+
},
|
|
140
|
+
includeAllDiffs: {
|
|
141
|
+
boolean: true,
|
|
142
|
+
description: "Return every diff instead of only the selected representative subset; adds an isSelected column",
|
|
143
|
+
default: false,
|
|
144
|
+
},
|
|
127
145
|
includeMatches: {
|
|
128
146
|
boolean: true,
|
|
129
|
-
description: "Include
|
|
147
|
+
description: "Include matching screenshots (matches, known flakes), not just differences. Implies --includeAllDiffs.",
|
|
130
148
|
default: false,
|
|
131
149
|
},
|
|
132
|
-
|
|
150
|
+
orderByReplayDiffs: {
|
|
133
151
|
boolean: true,
|
|
134
|
-
description: "
|
|
152
|
+
description: "Order rows by replay diff then event index (instead of by selection priority) and include the index/total columns",
|
|
135
153
|
default: false,
|
|
136
154
|
},
|
|
137
155
|
verbose: {
|
|
@@ -143,4 +161,4 @@ exports.testRunDiffsCommand = {
|
|
|
143
161
|
handler: (0, sentry_utils_1.wrapHandler)(handler),
|
|
144
162
|
};
|
|
145
163
|
//# sourceMappingURL=test-run-diffs.command.js.map
|
|
146
|
-
//# debugId=
|
|
164
|
+
//# debugId=5321980a-12dc-57c6-bf03-3ca418b37962
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-run-diffs.command.js","sources":["../../../src/commands/agent/test-run-diffs.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AACA,qDAKkC;AAClC,qDAAsD;AAEtD,mEAA+D;AAC/D,+DAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"test-run-diffs.command.js","sources":["../../../src/commands/agent/test-run-diffs.command.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"5321980a-12dc-57c6-bf03-3ca418b37962"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { DiffsSummaryReplayDiff, DiffsSummaryScreenshot } from "@alwaysmeticulous/client";
|
|
2
|
+
/** A single (replay diff, screenshot) pair — one row of the TSV output. */
|
|
3
|
+
export interface DiffRow {
|
|
4
|
+
replayDiff: DiffsSummaryReplayDiff;
|
|
5
|
+
screenshot: DiffsSummaryScreenshot;
|
|
6
|
+
}
|
|
7
|
+
/** Which optional columns the TSV output includes. */
|
|
8
|
+
export interface DiffsSummaryColumns {
|
|
9
|
+
/** Order by replay diff then event index; adds the index/total columns. */
|
|
10
|
+
orderByReplayDiffs: boolean;
|
|
11
|
+
/** Add the domDiffIds column. */
|
|
12
|
+
includeDomDiffIds: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Effective "all diffs" — true when --includeAllDiffs or --includeMatches is
|
|
15
|
+
* set (see {@link resolveIncludeAllDiffs}); adds the isSelected column.
|
|
16
|
+
*/
|
|
17
|
+
includeAllDiffs: boolean;
|
|
18
|
+
/** Add the base/head replay ID columns. */
|
|
19
|
+
includeReplayIds: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* --includeMatches implies --includeAllDiffs: matches are never part of the
|
|
23
|
+
* selected representative subset, so they only make sense alongside the full
|
|
24
|
+
* set of diffs.
|
|
25
|
+
*/
|
|
26
|
+
export declare const resolveIncludeAllDiffs: ({ includeAllDiffs, includeMatches, }: {
|
|
27
|
+
includeAllDiffs: boolean;
|
|
28
|
+
includeMatches: boolean;
|
|
29
|
+
}) => boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Flattens replay diffs into one list of rows. By default the backend's `index`
|
|
32
|
+
* is a flat cross-replay-diff priority rank, so we sort by it (a flat order the
|
|
33
|
+
* grouped response can't express). With orderByReplayDiffs the backend already
|
|
34
|
+
* returns rows grouped by replay diff in event order, which we preserve.
|
|
35
|
+
*/
|
|
36
|
+
export declare const flattenDiffRows: (data: DiffsSummaryReplayDiff[], orderByReplayDiffs: boolean) => DiffRow[];
|
|
37
|
+
/**
|
|
38
|
+
* Builds the TSV header. index/total are only meaningful with orderByReplayDiffs;
|
|
39
|
+
* by default rows are already in priority order, so the index is omitted.
|
|
40
|
+
*/
|
|
41
|
+
export declare const buildDiffsSummaryHeader: (columns: DiffsSummaryColumns) => string[];
|
|
42
|
+
/** Formats a single row's fields, gated by the same columns as the header. */
|
|
43
|
+
export declare const formatDiffRow: ({ replayDiff, screenshot }: DiffRow, columns: DiffsSummaryColumns) => (string | number)[];
|
|
44
|
+
//# sourceMappingURL=test-run-diffs.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-run-diffs.utils.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/test-run-diffs.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAElC,2EAA2E;AAC3E,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,sBAAsB,CAAC;IACnC,UAAU,EAAE,sBAAsB,CAAC;CACpC;AAED,sDAAsD;AACtD,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,2CAA2C;IAC3C,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAKD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,yCAGhC;IACD,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;CACzB,KAAG,OAA4C,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,eAAe,SACpB,sBAAsB,EAAE,sBACV,OAAO,KAC1B,OAAO,EAQT,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,YACzB,mBAAmB,KAC3B,MAAM,EAQR,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,aAAa,+BACI,OAAO,WAC1B,mBAAmB,KAC3B,CAAC,MAAM,GAAG,MAAM,CAAC,EAcnB,CAAC"}
|