@skyramp/mcp 0.0.51 → 0.0.53
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.
|
@@ -6,7 +6,7 @@ import { stripVTControlCharacters } from "util";
|
|
|
6
6
|
import { logger } from "../utils/logger.js";
|
|
7
7
|
const DEFAULT_TIMEOUT = 300000; // 5 minutes
|
|
8
8
|
const MAX_CONCURRENT_EXECUTIONS = 5;
|
|
9
|
-
const EXECUTOR_DOCKER_IMAGE = "skyramp/executor:v1.3.
|
|
9
|
+
const EXECUTOR_DOCKER_IMAGE = "skyramp/executor:v1.3.5";
|
|
10
10
|
const DOCKER_PLATFORM = "linux/amd64";
|
|
11
11
|
const EXECUTION_PROGRESS_INTERVAL = 10000; // 10 seconds between progress updates during execution
|
|
12
12
|
// Files and directories to exclude when mounting workspace to Docker container
|
|
@@ -3,7 +3,7 @@ import { SkyrampClient } from "@skyramp/skyramp";
|
|
|
3
3
|
import openProxyTerminalTracked from "../../utils/proxy-terminal.js";
|
|
4
4
|
import { TELEMETRY_entrypoint_FIELD_NAME } from "../../utils/utils.js";
|
|
5
5
|
import { logger } from "../../utils/logger.js";
|
|
6
|
-
import { basePlaywrightSchema, baseSchema,
|
|
6
|
+
import { basePlaywrightSchema, baseSchema, } from "../../types/TestTypes.js";
|
|
7
7
|
import { AnalyticsService } from "../../services/AnalyticsService.js";
|
|
8
8
|
import path from "path";
|
|
9
9
|
const TOOL_NAME = "skyramp_start_trace_collection";
|
|
@@ -94,11 +94,13 @@ For detailed documentation visit: https://www.skyramp.dev/docs/load-test/advance
|
|
|
94
94
|
outputDir: params.outputDir,
|
|
95
95
|
prompt: params.prompt,
|
|
96
96
|
});
|
|
97
|
-
// Resolve playwrightSaveStoragePath to outputDir if it's the default relative path
|
|
98
97
|
let saveStoragePath = params.playwrightSaveStoragePath;
|
|
99
|
-
if (
|
|
100
|
-
saveStoragePath
|
|
101
|
-
saveStoragePath
|
|
98
|
+
if (saveStoragePath) {
|
|
99
|
+
// If saveStoragePath is just a filename (no directory separators), use outputDir
|
|
100
|
+
if (params.outputDir && !saveStoragePath.includes(path.sep) && !path.isAbsolute(saveStoragePath)) {
|
|
101
|
+
saveStoragePath = path.join(params.outputDir, saveStoragePath);
|
|
102
|
+
}
|
|
103
|
+
logger.info("Session storage will be saved to:", { saveStoragePath });
|
|
102
104
|
}
|
|
103
105
|
try {
|
|
104
106
|
// Send initial progress
|
|
@@ -118,6 +120,9 @@ For detailed documentation visit: https://www.skyramp.dev/docs/load-test/advance
|
|
|
118
120
|
playwrightViewportSize: params.playwrightViewportSize,
|
|
119
121
|
entrypoint: TELEMETRY_entrypoint_FIELD_NAME,
|
|
120
122
|
};
|
|
123
|
+
if (saveStoragePath) {
|
|
124
|
+
generateOptions.playwrightSaveStoragePath = saveStoragePath;
|
|
125
|
+
}
|
|
121
126
|
// Send progress for configuration
|
|
122
127
|
const traceMode = params.playwright ? "UI + Backend" : "Backend-only";
|
|
123
128
|
await sendProgress(30, 100, `Configuring ${traceMode} trace collection...`);
|
package/build/types/TestTypes.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export const SESSION_STORAGE_FILENAME = "skyramp_session_storage.json";
|
|
3
|
-
export const DEFAULT_SESSION_STORAGE_PATH = `./${SESSION_STORAGE_FILENAME}`;
|
|
4
3
|
export var TestType;
|
|
5
4
|
(function (TestType) {
|
|
6
5
|
TestType["SMOKE"] = "smoke";
|
|
@@ -88,11 +87,11 @@ export const basePlaywrightSchema = z.object({
|
|
|
88
87
|
playwrightStoragePath: z
|
|
89
88
|
.string()
|
|
90
89
|
.optional()
|
|
91
|
-
.describe("Path to playwright session storage
|
|
90
|
+
.describe("Path to LOAD existing playwright session storage for trace collection with playwright enabled. THE PATH MUST BE AN ABSOLUTE PATH LIKE /Users/<path>/<filename>.json"),
|
|
92
91
|
playwrightSaveStoragePath: z
|
|
93
92
|
.string()
|
|
94
|
-
.
|
|
95
|
-
.describe(`Path to SAVE Playwright session storage after trace collection.
|
|
93
|
+
.optional()
|
|
94
|
+
.describe(`Path to SAVE Playwright session storage after trace collection. ONLY provide this when user explicitly says 'with session storage', 'save session', or similar. If user specifies this without a path, defaults to '${SESSION_STORAGE_FILENAME}' in the outputDir. This SAVES authentication state (cookies, localStorage, sessionStorage) when the browser closes. To LOAD existing auth state, use playwrightStoragePath instead. Can be relative (e.g., 'auth.json') or absolute path.`),
|
|
96
95
|
playwrightViewportSize: z
|
|
97
96
|
.string()
|
|
98
97
|
.default("")
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyramp/mcp",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.53",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@modelcontextprotocol/sdk": "^1.24.3",
|
|
48
|
-
"@skyramp/skyramp": "
|
|
48
|
+
"@skyramp/skyramp": "1.3.5",
|
|
49
49
|
"@playwright/test": "^1.55.0",
|
|
50
50
|
"dockerode": "^4.0.6",
|
|
51
51
|
"fast-glob": "^3.3.3",
|