Summary
Investigate whether removing or simplifying Wave's allow/deny permission lists improves pipeline execution quality. The hypothesis is that permission restrictions cause inconsistent outcomes, confuse the Claude Code adapter, and trigger unnecessary permission errors.
Background
Wave currently enforces tool permissions via allow and deny lists in persona definitions, which are projected into both settings.json and runtime CLAUDE.md. However:
- Inconsistent outcomes — permission denials may cause personas to take suboptimal alternative paths
- Adapter confusion — Claude Code may misinterpret restrictions or lose tool access entirely (see:
deny: ["Bash(*)"] removes Write AND Edit)
- Permission errors — overly restrictive lists block legitimate operations
Existing mitigations (worktree isolation, bubblewrap sandbox) already limit blast radius.
Original description:
we want to investigate and try to narrow down the core functionalities of wave and reduce any noise, that makes the outcome 1. inconsistent 2. confuses the adapter (claude code) 3. and leads to permission issues
we have already worktrees and running in a sandbox, so the blast radius should be enough reduced
Experiment Design
Acceptance Criteria
Related
- Known issue:
deny: ["Bash(*)"] removes Write AND Edit tools entirely
- Worktree isolation already prevents cross-workspace contamination
- Bubblewrap sandbox restricts filesystem and network access at OS level
Summary
Investigate whether removing or simplifying Wave's allow/deny permission lists improves pipeline execution quality. The hypothesis is that permission restrictions cause inconsistent outcomes, confuse the Claude Code adapter, and trigger unnecessary permission errors.
Background
Wave currently enforces tool permissions via
allowanddenylists in persona definitions, which are projected into bothsettings.jsonand runtimeCLAUDE.md. However:deny: ["Bash(*)"]removes Write AND Edit)Existing mitigations (worktree isolation, bubblewrap sandbox) already limit blast radius.
Original description:
Experiment Design
deny: [](no restrictions) and behavioral-only CLAUDE.md guidanceAcceptance Criteria
go test -race ./...passes after any changesRelated
deny: ["Bash(*)"]removes Write AND Edit tools entirely