Repository navigation
Description
I don't expect to get a CI failure on a squad-itized repo when I haven't done anything to change how squad deals with its own files.
Run actions/github-script@v7
Error: ## 🚫 Forbidden files detected in PR to main
The following files must NOT be merged into `main`.
`.ai-team/` is legacy team state — it belongs on dev branches only.
`.ai-team-templates/` is Squad's internal planning — it belongs on dev branches only.
`.squad/orchestration-log/`, `.squad/log/`, `.squad/decisions/inbox/`, `.squad/sessions/` are noisy runtime state — they belong on dev branches only.
> Note: Other `.squad/` files (charters, history, decisions, skills, templates) ARE allowed on main to enable team knowledge sharing.
`team-docs/` is internal team content — it belongs on dev branches only.
`docs/proposals/` is internal design proposals — it belongs on dev branches only.
### Forbidden files found:
- `.squad/log/2026-03-06T16-31Z-readme-packagejson-update.md`
- `.squad/orchestration-log/2026-03-06T16-31Z-inara.md`
- `.squad/orchestration-log/2026-03-06T16-31Z-kaylee.md`
### How to fix:
```bash
# Remove tracked .ai-team/ files (keeps local copies):
git rm --cached -r .ai-team/
# Remove noisy .squad/ runtime files (keeps local copies):
git rm --cached -r .squad/orchestration-log/ .squad/log/ .squad/decisions/inbox/ .squad/sessions/
# Remove tracked team-docs/ files:
git rm --cached -r team-docs/
# Commit the removal and push:
git commit -m "chore: remove forbidden runtime paths from PR"
git push
> ⚠️ `.squad/` knowledge files (charters, history, decisions.md, skills, templates) flow through main by design.
> Only noisy runtime state (logs, sessions, inbox) is blocked.
> The guard workflow enforces this boundary. `git rm --cached` untracks files from this PR without deleting local copies.
Here is squad's review of the problem:
Issue: PR guard flags .squad/log/ and .squad/orchestration-log/ files
The forbidden-files-guard workflow correctly flagged 3 runtime state files in my PR
to main:
- .squad/log/2026-03-06T16-31Z-readme-packagejson-update.md
- .squad/orchestration-log/2026-03-06T16-31Z-inara.md
- .squad/orchestration-log/2026-03-06T16-31Z-kaylee.md
Root cause: Scribe committed these files to the feature branch during normal session
work. When the PR targeted main, the guard caught them as forbidden runtime state
(which is correct behavior — the guard is working as designed).
Fix applied:
git rm --cached -r .squad/orchestration-log/ .squad/log/
git commit -m "chore: remove forbidden runtime paths from PR"
git push
git rm --cached untracks the files from the branch without deleting local copies. The
guard passed after this push.
Suggestion: Scribe could be taught to skip git add on paths that match the guard's
forbidden list (orchestration-log/, log/, decisions/inbox/, sessions/), or those
paths could be added to .gitignore on the main-targeting branch. This would prevent
the guard from firing in the first place rather than requiring a cleanup commit.

Activity
fix: prevent Scribe from staging runtime state files (#228)
chore(squad): log issue #228 fix — Scribe runtime state exclusion
bradygaster commentedon Mar 7, 2026
✅ Fixed by PR #232 (merged commit 86598f4) — squad guard no longer blocks runtime state.
Closed as part of v0.8.21 release wave cleanup.
test: add 13 CRLF normalization test cases across all parsers
docs: update hockney history with github#228 CRLF test learnings
docs(ai-team): Epic github#181 completion — session log + decision merge