-
Notifications
You must be signed in to change notification settings - Fork 219
Description
Conformance Check Failure
Check ID: SEC-005
Severity: HIGH
Category: Security
Date: 2026-02-14
Run ID: §22025666977
Problem Description
The conformance checker identified 7 handlers that support cross-repository operations (target-repo or targetRepo parameters) but do not implement allowlist validation. This violates the Safe Outputs specification requirement that cross-repository operations must validate target repositories against an allowlist to prevent unauthorized access.
Security Impact: Without allowlist validation, agents could potentially perform operations on unauthorized repositories, leading to:
- Unauthorized data access
- Privilege escalation across repositories
- Potential for supply chain attacks
Affected Handlers
assign_to_agent.cjscheckout_pr_branch.cjscreate_agent_session.cjsget_repository_url.cjspr_review_buffer.cjspush_repo_memory.cjstemporary_id.cjs
Current Behavior
These handlers accept target-repo or targetRepo parameters but do not validate the target repository against an allowlist before performing operations. This allows cross-repository operations without proper authorization checks.
Expected Behavior
Per the Safe Outputs specification, all handlers that support cross-repository operations MUST:
- Validate target repositories against a configured allowlist
- Reject operations on non-allowlisted repositories with clear error messages
- Log allowlist validation attempts for security auditing
Remediation Steps
For each affected handler:
- Add allowlist validation function call before any cross-repository operation
- Use a centralized
validateTargetRepo()orcheckAllowedRepo()function - Ensure the allowlist is configurable via workflow configuration
- Add appropriate error handling with E004 (validation error) code
- Include security logging for validation failures
Example pattern:
if (targetRepo && !validateTargetRepo(targetRepo, allowedRepos)) {
throw new Error(`E004: Target repository ${targetRepo} not in allowlist`);
}Verification
After remediation, verify the fix by running:
bash scripts/check-safe-outputs-conformance.shThe check SEC-005 should pass without errors.
References
- Safe Outputs Specification:
docs/src/content/docs/reference/safe-outputs-specification.md - Conformance Checker:
scripts/check-safe-outputs-conformance.sh
Generated by Daily Safe Outputs Conformance Checker
- expires on Feb 15, 2026, 11:01 PM UTC