You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
WebStudio works with the distributed `test_goals` folder for the selected workspace.
366
+
367
+
Changing the selected workspace changes the Test Goals tree. WebStudio must not mix Test Goals from different workspaces in the same view.
368
+
369
+
### Supported Goal Files
370
+
371
+
Managed executable test goals use YAML files.
372
+
373
+
Allowed executable extensions:
374
+
375
+
-`.yaml`
376
+
-`.yml`
377
+
378
+
### YAML Contract
379
+
380
+
Each executable goal file must use this shape:
381
+
382
+
```yaml
383
+
version: 1
384
+
goals:
385
+
- id: unique-goal-id
386
+
title: Human readable title
387
+
category: functional
388
+
narrative: >
389
+
Optional user story or context.
390
+
objective: Clear objective the agent must complete.
391
+
inputs:
392
+
platform: webdriver
393
+
sut: https://example.org/
394
+
prerequisites:
395
+
- Optional setup condition.
396
+
expected_outcomes:
397
+
- Observable expected outcome.
398
+
validation_notes:
399
+
- Optional validation guidance.
400
+
```
401
+
402
+
Required fields:
403
+
404
+
- `version`
405
+
- `goals`
406
+
- `goals[].id`
407
+
- `goals[].title`
408
+
- `goals[].objective`
409
+
- `goals[].expected_outcomes`
410
+
411
+
Recommended fields:
412
+
413
+
- `goals[].category`
414
+
- `goals[].inputs.platform`
415
+
- `goals[].inputs.sut`
416
+
- `goals[].validation_notes`
417
+
418
+
Goal identifiers should use kebab-case.
419
+
420
+
### Authoring Behavior
421
+
422
+
WebStudio should provide a dedicated `Test Goals` view.
423
+
424
+
The view should support:
425
+
426
+
- browsing folders and YAML goal files under the selected workspace `test_goals` folder
427
+
- creating folders
428
+
- creating YAML goal files
429
+
- editing YAML goal files
430
+
- deleting folders and files with confirmation
431
+
- saving edited YAML goal files
432
+
- discarding unsaved edits
433
+
- validating the required YAML shape before saving or before execution
434
+
435
+
All file operations must stay inside the selected workspace `test_goals` folder.
436
+
437
+
Path traversal, absolute paths, and unsafe symlink escapes must be rejected.
438
+
439
+
If the selected workspace has no Test Goals yet, the view should show a stable empty state and allow creating folders or YAML files under that workspace.
440
+
441
+
### CLI Mode Integration
442
+
443
+
Test Goals are not selected for execution in the authoring view.
444
+
445
+
The `Test Goals` view is only responsible for creating, editing, deleting, and organizing YAML goal files and directories.
446
+
447
+
CLI Mode remains prompt-driven.
448
+
449
+
The user prompt can instruct the agent to execute:
450
+
451
+
- one named YAML test goal file
452
+
- multiple named YAML test goal files
453
+
- the YAML test goals in one named directory
454
+
- the YAML test goals in multiple named directories
455
+
- all YAML test goals under a named parent directory
456
+
457
+
WebStudio must include the selected workspace `test_goals` root path in the generated Agent CLI prompt so the agent can resolve the user-requested goal files or directories.
458
+
459
+
The Agent CLI prompt contract must tell the agent:
460
+
461
+
- to resolve user-referenced goal paths relative to the selected workspace `test_goals` root
462
+
- to read the requested YAML goal files before execution
463
+
- to execute every goal defined in each requested YAML file
464
+
- to execute all matching YAML goal files when the user instruction is broad or matches multiple goals
465
+
- to use recursive directory execution when the user asks for all goals in a directory
466
+
467
+
Directory execution means recursive YAML discovery when the user asks for all goals in a directory.
468
+
469
+
Agent CLI execution must still finalize each goal session with `LLM_COMPLETE` or `LLM_INVALID` and execute `shutdownDaemon` after the final goal session.
470
+
350
471
### Agent CLI Settings
351
472
352
473
Agent CLI settings are stored in the selected workspace `test.settings` file with `AgentCLI...` names.
0 commit comments