feat: add saveSession flag to create scenario runs
- Add optional `saveSession` boolean parameter to CreateScenarioRunDto
- Add `saveSession` column to ScenarioRunEntity
- When saveSession=true and run completes, preserve the browser context as a named explore session instead of closing it
- Session name follows pattern: run-{runId}
- Automatically extracts token and localStorage for session persistence
- Injected SessionService and SessionContextService into ScenarioSchedulerService
- Updated MCP run_scenario tool to accept saveSession parameter
- Updated UI run dialog with checkbox to enable session preservation
- Client API updated to pass saveSession flag
This commit is contained in:
@@ -703,11 +703,12 @@ export class McpService {
|
||||
inputSchema: {
|
||||
id: z.uuid().describe("Scenario ID to run"),
|
||||
environmentId: z.uuid().describe("Environment ID to run the scenario in"),
|
||||
saveSession: z.boolean().optional().describe("Save session for explore mode after run completes"),
|
||||
},
|
||||
},
|
||||
async ({ id, environmentId }) => {
|
||||
async ({ id, environmentId, saveSession }) => {
|
||||
try {
|
||||
const run = await this.scenarioService.createRun(id, environmentId);
|
||||
const run = await this.scenarioService.createRun(id, environmentId, saveSession);
|
||||
return {
|
||||
content: [{ type: "text" as const, text: JSON.stringify(run) }],
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user