fix: add shlex fallback parser and heredoc warning

- Add _extract_primary_command() fallback when shlex.split() fails on complex nested quotes (e.g., docker exec with PHP)

- Returns primary command instead of empty list, allowing valid commands to proceed

- Add heredoc warning to coding prompt - sandbox blocks /tmp access for here documents

- All 162 security tests pass
This commit is contained in:
cabana8471
2026-01-29 08:04:01 +01:00
parent a12e4aa3b8
commit d47028d97a
2 changed files with 58 additions and 10 deletions

View File

@@ -202,17 +202,23 @@ Use the feature_mark_passing tool with feature_id=42
### STEP 7: COMMIT YOUR PROGRESS
Make a descriptive git commit:
Make a descriptive git commit.
**Git Commit Rules:**
- ALWAYS use simple `-m` flag for commit messages
- NEVER use heredocs (`cat <<EOF` or `<<'EOF'`) - they fail in sandbox mode with "can't create temp file for here document: operation not permitted"
- For multi-line messages, use multiple `-m` flags:
```bash
git add .
git commit -m "Implement [feature name] - verified end-to-end
git commit -m "Implement [feature name] - verified end-to-end" -m "- Added [specific changes]" -m "- Tested with browser automation" -m "- Marked feature #X as passing"
```
- Added [specific changes]
- Tested with browser automation
- Marked feature #X as passing
- Screenshots in verification/ directory
"
Or use a single descriptive message:
```bash
git add .
git commit -m "feat: implement [feature name] with browser verification"
```
### STEP 8: UPDATE PROGRESS NOTES