accessibility-as-code
Pass
Audited by Gen Agent Trust Hub on Oct 18, 2026
Risk Level: SAFEDYNAMIC_EXECUTIONCOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [DYNAMIC_EXECUTION]: In
scripts/lib/load-ts-constants.mjs, the functionloadTsConstantsemploysvm.runInNewContextto evaluate code extracted from TypeScript palette files. This allow the checker to read project color tables without requiring a full build system or riskyrequirecalls, utilizing a sandboxed context (Object.create(null)) with a 1-second timeout. - [DYNAMIC_EXECUTION]: The helper script
scripts/check-lib.mjsuses dynamicimport()within itsimportPackagefunction to load local tooling modules from the repository's.skill-toolingorscriptsdirectories. This is used to resolve pinned dependencies required by the analysis scripts. - [COMMAND_EXECUTION]: The function
runNodeinscripts/check-lib.mjsuseschild_process.spawnSyncto execute shell commands. This is primarily used by the self-test suite (scripts/selftest.mjs) to verify that the checkers correctly handle various test fixtures. - [INDIRECT_PROMPT_INJECTION]: The skill implements an analysis engine that ingests and processes source code and configuration files from the target repository, creating a vulnerability surface for indirect influence if malicious content is present in the analyzed codebase.
- Ingestion points: Source files (
.ts,.tsx,.json) and color tables read by analysis scripts inscripts/check-a11y-code.mjsandscripts/check-contrast.mjs. - Boundary markers: The skill employs character-based masking for comments and literals (via
maskCodeinscripts/lib/source-scan.mjs) to attempt to isolate executable patterns from natural language data. - Capability inventory: Extensive file system operations (read/write/delete/rename) in
scripts/check-lib.mjs, dynamic evaluation inscripts/lib/load-ts-constants.mjs, and subprocess execution inscripts/check-lib.mjs. - Sanitization: Use of Node.js VM isolation for data extraction and selective masking of code components during regex-based scanning.
Audit Metadata