hwc-stimulus-fundamentals
Pass
Audited by Gen Agent Trust Hub on Nov 1, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADSDYNAMIC_EXECUTIONDATA_EXFILTRATION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill provides examples of Stimulus controllers that process data from external sources (such as JSON values or WebSocket messages) and render it directly to the page.
- Ingestion points: The
JobDashboardControllerinreferences/2023-12-19-stimulus-outlets-api.mdprocesses ajobsarray containing job objects. - Boundary markers: No explicit boundary markers or instructions to ignore embedded HTML/scripts are present in the provided templates.
- Capability inventory: The controller uses
insertAdjacentHTMLto inject generated HTML strings into thelistTarget. - Sanitization: The implementation uses
String.prototype.replaceAll()for templating without escaping or sanitizing the values ofjob.idorjob.type, which could lead to cross-site scripting (XSS) if these values are attacker-controlled. - [DYNAMIC_EXECUTION]: The skill demonstrates the generation of HTML elements at runtime through string concatenation and template manipulation.
- Evidence: In
references/2023-12-19-stimulus-outlets-api.md, theJobDashboardControllerclones a template's content and performs string replacements on itsouterHTMLbefore inserting it into the DOM. - [EXTERNAL_DOWNLOADS]: The skill's HTML examples reference external JavaScript libraries from a Content Delivery Network (CDN).
- Evidence: The
references/2024-06-18-fundamentals-core-web-vitals.mdfile contains an import map that fetches@hotwired/turboand@hotwired/stimulusfrom the jspm.io CDN. - [DATA_EXFILTRATION]: The skill includes examples of network operations that target dynamic URLs provided via controller state.
- Evidence: In
references/2025-11-25-stimulus-web-share-api.md, thegetFile()method performs afetch()request onthis.fileValue, which is a value that can be set to any arbitrary URL via HTML data attributes.
Audit Metadata