building-tests
Pass
Audited by Gen Agent Trust Hub on Oct 19, 2026
Risk Level: SAFECOMMAND_EXECUTIONDYNAMIC_EXECUTIONEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The bundled test runner (
runner/run.ts) and validation script (runner/check.ts) execute shell commands defined within the project'sindex.mdconfiguration. These commands are used for stack initialization (backend.start), health checks, and platform-specific test runners (e.g., Playwright or Maestro). Commands are executed using thenode:child_process.spawnAPI with the shell enabled. - [DYNAMIC_EXECUTION]: The runner uses dynamic
import()statements to load user-defined TypeScript modules from the project'ssupport/directory. This mechanism is used to integrate project-specific logic for state management (support/states/*.ts) and persona session handling (support/personas.ts) into the testing lifecycle. - [EXTERNAL_DOWNLOADS]: The skill's reference documentation (
references/configuring-ci.md) and contract templates provide examples for setting up GitHub Actions workflows that install the Maestro CLI using acurl | bashcommand from its official domain (get.maestro.mobile.dev). While this pattern involves remote script execution, it targets a well-known service for its intended functionality. - [INDIRECT_PROMPT_INJECTION]: The skill consumes Markdown test definitions that drive the execution logic and provide parameters for test cases. This creates a surface where malicious instructions embedded in test specifications could influence the agent's behavior or execution flow.
- Ingestion points: Markdown files for segments, journeys, and properties located in the project's tests directory (processed by
loadSegments,loadJourneys, andloadPropertiesinrunner/model.ts). - Boundary markers: Absent. Test definitions are parsed and their metadata is directly used to construct execution commands.
- Capability inventory: The system can execute shell commands, read and write files in the tests root, and dynamically import project-specific code.
- Sanitization: The runner includes a
quoteutility that applies POSIX-style single-quoting to parameter values before they are interpolated into shell command templates, mitigating basic shell injection through parameter values.
Audit Metadata