-
Notifications
You must be signed in to change notification settings - Fork 488
Expand file tree
/
Copy path.gitattributes
More file actions
57 lines (47 loc) · 2.5 KB
/
Copy path.gitattributes
File metadata and controls
57 lines (47 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# Squad: union merge for append-only team state files
.squad/decisions.md merge=union
.squad/agents/*/history.md merge=union
.squad/log/** merge=union
.squad/orchestration-log/** merge=union
# NOTE: .squad/casting/* files are AUTHORITATIVE IDENTITY (team-defined agent
# universe/roles, persistent name registry, universe assignment history).
# They are committed to 'main' like team.md and routing.md, not to squad-state.
# They do NOT need union merge and are intentionally NOT listed above.
# Squad: union merge for append-only team state files
.squad/decisions/decisions.md merge=union
# Squad: union merge for append-only team state files
.squad/rai/audit-trail.md merge=union
# Squad: pin LF for YAML to prevent CRLF<->LF flip on Windows checkouts (PR #1200 concern G)
*.yml text eol=lf
*.yaml text eol=lf
# Squad: shell scripts must stay LF — CRLF breaks the shebang on Linux/macOS.
*.sh text eol=lf
# Squad: ESM scripts must stay LF — a CRLF shebang survives Vite's shebang
# stripping as a bare `#`, so any .mjs imported by a vitest suite fails to parse
# ("SyntaxError: Invalid or unexpected token") and the whole suite loads zero
# tests. Green on Linux CI, silently dead on Windows checkouts (#1788).
*.mjs text eol=lf
# Squad: same hazard, remaining shebanged file types (#1788). A CRLF shebang is
# never correct -- the \r joins the interpreter argument on POSIX ("env: node\r:
# No such file or directory"). Enforced by scripts/check-shebang-eol.mjs.
*.js text eol=lf
*.cjs text eol=lf
*.ps1 text eol=lf
# Deliberately NOT "*.ts text eol=lf": only 3 tracked .ts files carry a shebang,
# but a blanket rule would renormalize 95 CRLF-storing .ts blobs in one commit.
# Pinning the shebanged entrypoints by path keeps the invariant without the churn.
packages/squad-cli/src/cli-entry.ts text eol=lf
samples/autonomous-pipeline/index.ts text eol=lf
test-fixtures/dogfood/node-monorepo/packages/cli/src/cli.ts text eol=lf
# Squad: CRLF breaks RUN line-continuations when the image builds on Linux.
Dockerfile text eol=lf
Dockerfile.* text eol=lf
.dockerignore text eol=lf
# Squad: vitest writes snapshots with LF unconditionally. Without a rule these
# check out as CRLF on Windows, so `npm test` dirties a tracked file on every
# run -- and a broad `git add` then commits pure line-ending noise. Same CRLF
# class as the .mjs rule above, different symptom: not a load failure, a
# perpetually dirty tree (#1788).
*.snap text eol=lf
# Squad: union merge for append-only team state files
.squad/fact-checker/audit-trail.md merge=union