feat(snippets): add snippets entity, crud, and auto-browser-per-run

- add Snippet entity with name, description, code; full CRUD backend
- add snippets pages (list, create, edit, detail) and nav entry
- add runSnippet helper in code-executor using new Function with args array
- add result param to execute() so validateCode can access exec output
- remove sessionName from steps; each run now spawns its own fresh browser
- fix waitForURL race by polling localStorage for token instead
This commit is contained in:
2026-04-10 00:22:51 +03:00
parent 1efbbb38a3
commit 1164289173
26 changed files with 876 additions and 89 deletions
+4
View File
@@ -19,6 +19,8 @@ import { ScenarioRunStepEntity } from "./scenario/scenario-run-step.entity";
import { ScenarioRunLogEntity } from "./scenario/scenario-run-log.entity";
import { ScenarioCredentialEntity } from "./scenario/scenario-credential.entity";
import { ScenarioModule } from "./scenario/scenario.module";
import { SnippetEntity } from "./snippet/snippet.entity";
import { SnippetModule } from "./snippet/snippet.module";
@Module({
imports: [
@@ -43,6 +45,7 @@ import { ScenarioModule } from "./scenario/scenario.module";
ScenarioRunStepEntity,
ScenarioRunLogEntity,
ScenarioCredentialEntity,
SnippetEntity,
],
synchronize: true,
}),
@@ -52,6 +55,7 @@ import { ScenarioModule } from "./scenario/scenario.module";
EnvironmentModule,
CredentialModule,
ScenarioModule,
SnippetModule,
McpModule,
HealthModule,
],