rhdh-release-date-update
Pass
Audited by Gen Agent Trust Hub on Oct 30, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONEXTERNAL_DOWNLOADS
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill processes release date information retrieved from external sources like Jira and project spreadsheets via the /rhdh-release-schedule skill. This ingestion of untrusted data creates a potential attack surface for indirect prompt injection.\n
- Ingestion points: Data is transcribed from the output of the /rhdh-release-schedule skill into a source.json file as described in workflows/sync-release-dates.md (Step 2).\n
- Boundary markers: The agent is instructed to follow specific transcription rules in workflows/sync-release-dates.md, and the scripts/release_dates.py script serves as a technical boundary by enforcing strict data validation.\n
- Capability inventory: The skill can perform branch pushes to GitHub and GitLab repositories using content APIs and initiate pull/merge requests via the gh and glab CLI tools (found in scripts/release_dates.py).\n
- Sanitization: The scripts/release_dates.py script implements rigorous validation, including regex checks for version formats (e.g., x.y.0) and datetime.strptime validation for date strings in YYYY-MM-DD format to prevent malformed or malicious data from being written to target files.\n- [DYNAMIC_EXECUTION]: The skill utilizes the subprocess.run function in scripts/release_dates.py to execute GitHub (gh) and GitLab (glab) CLI commands for repository management.\n
- Evidence: Multiple calls to subprocess.run are used to check authentication status, fetch file metadata, and push content updates.\n
- Safeguards: The script follows security best practices by passing arguments as lists to subprocess.run, which prevents shell injection vulnerabilities. Additionally, it includes a _refuse_protected_branch function that blocks attempts to push directly to sensitive branches like main or master.\n- [EXTERNAL_DOWNLOADS]: The skill fetches configuration and data files from remote repository hosting platforms to perform comparisons.\n
- Evidence: Functions fetch_github_file and fetch_gitlab_file in scripts/release_dates.py retrieve YAML content from github.com and gitlab.cee.redhat.com.\n
- Context: These downloads target established vendor repositories (e.g., redhat-developer/rhdh-plugin-export-overlays) and are necessary for the skill's primary function of synchronizing release schedules.
Audit Metadata