Skip to content

(Feature Request): allowed-files is an allowlist, not an "additionally allow" list — undocumented and counterintuitive #20515

@arezero

Description

@arezero

Severity: Major — caused us to block ALL source code modifications

Reproduction: Set safe-outputs: create-pull-request: { allowed-files: [".github/workflows/*"] }. The agent modifies both .github/workflows/deploy.yml and src/app/Component.tsx.

Expected: Both .github/ files AND normal source files are allowed (i.e., allowed-files adds exceptions to the protected_files/protected_path_prefixes lists).

Actual: ONLY .github/workflows/* files are allowed. All other files (including normal source code like src/**) are blocked: Cannot create pull request: patch modifies files outside the allowed-files list (src/app/Component.tsx).

Impact: We set allowed-files to unblock .github/ files, which then blocked all normal source code. Multiple implementation runs failed before we understood the semantics.

Suggestion: Either rename to only-allow-files to make the semantics clear, or change the behavior so allowed-files acts as exceptions to the protected lists rather than a global allowlist. The current behavior is a footgun.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions