-
Notifications
You must be signed in to change notification settings - Fork 57
Expand file tree
/
Copy path.gitignore
More file actions
164 lines (139 loc) · 4.72 KB
/
Copy path.gitignore
File metadata and controls
164 lines (139 loc) · 4.72 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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# dependencies
node_modules/
**/node_modules/
.pnp/
.pnp.js
# builds
dist/
build/
*.tsbuildinfo
# desktop .exe (PyInstaller) — built on demand / in CI, never committed
dist_desktop/
build_desktop/
dist_sidecar/
build_sidecar/
# Tauri sidecar binary (built per-platform by build_sidecar.py / CI)
apps/web/src-tauri/binaries/
# python
__pycache__/
*.py[cod]
.venv/
venv/
*.egg-info/
.pytest_cache/
.mypy_cache/
.ruff_cache/
# env / secrets
.env
.env.*
!.env.example
# data / artifacts (do NOT commit models or tiles)
*.ifc
*.rvt
*.frag
*.xkt
# but track the small demo tiles the web app + GitHub Pages demo ship
!apps/web/public/*.frag
*.bcfzip
/data/
/tmp/
# The sample library SHIPS — it is the showcase a first run opens, and `samples.py` serves `.mass`
# containers only. So track the containers and the README, and keep the multi-hundred-megabyte source
# IFC/frag fixtures out: they are dev inputs, not library entries, and two of them are 52 MB each.
#
# This was `samples/` outright until v0.3.769, which meant `test_samples` -- whose comment read
# "samples/ is committed" -- passed locally because the directory happened to exist on the machine
# that wrote it, and failed in CI on every run. The rationale in a test is a claim like any other.
samples/*
!samples/README.md
!samples/*.mass
# object storage local volumes
minio-data/
postgres-data/
# backup tarballs (scripts/backup.sh)
/backups/
# dev databases & local storage
*.db
storage/
test_storage/
test_storage_*/
_storage_*/
samples/out/
# generated offline assets (recreated by copy-wasm on predev/prebuild)
apps/web/public/wasm/*.wasm
# local editor/agent settings
.claude/settings.local.json
# converter drop dir (IFCs in / .frag out) — keep the dir, not the contents
data/*
!data/.gitkeep
# editor / os
.vscode/
.idea/
.DS_Store
Thumbs.db
# logs
*.log
npm-debug.log*
# Tauri updater signing keys — private key goes in a CI secret, never committed
apps/web/src-tauri/aec-updater.key
apps/web/src-tauri/aec-updater.key.pub
# Capacitor native platforms (generated by 'cap add android/ios')
apps/web/android/
apps/web/ios/
.watch_release.sh
services/api/*.db
services/api/_*.db
services/api/*.db-journal
# transient demo-capture artifacts (build_demo_data.py)
services/api/_demo_capture_storage/
services/api/_demo_capture.db
# scale-test harness artifacts (seed_scale.py writes the project id here)
services/api/_scale_pid.txt
# live-server scratch storage from drawings/e2e testing
services/api/_e2e_storage/
services/api/_sg_storage/
# local dev-server storage backends (filesystem object store when running the API locally)
services/api/dev_*_storage/
# COST/demo: generated artifacts under services/api/_models (regenerable from generate_quay_tower.py)
services/api/_models/*.svg
services/api/_models/*.json
services/api/_models/*.ifc
services/api/_models/*.frag
services/api/_models/*.pdf
# dev-run artifacts (local API against sqlite/minio)
services/api/_oapi.json
services/api/_store_dev/
services/api/_ifc_dev/
services/api/aec_dev.db
*.stackdump
# local dev-API preview state (created by the .claude/launch.json `api` target)
preview_storage/
preview.db
# design prototypes / external audit bundles dropped in for interactive review.
# Inside the repo so the browser preview will actually RUN them (files outside the project folder
# only render as static snapshots); ignored so they never reach a commit.
_prototypes/
# Agent-harness scaffold written into the clone by a coding-agent init (2026-08-01): AGENTS.md,
# .codex/ (hooks) and .agents/skills/. Ignored so a pathspec-less `git add -A` from any of the
# sessions sharing this checkout cannot publish them to a PUBLIC repo by accident — that was a live
# path: `git ls-files --others --exclude-standard` listed 16 such files.
#
# NOT a judgement that they should never be committed. `AGENTS.md` is a real convention some repos
# commit deliberately, and it is currently byte-identical to the tracked CLAUDE.md. If you want any
# of them in the repo, `git add -f <path>` still works and this rule does not stand in the way.
#
# The argument against committing `.agents/skills/`: it MIRRORS `.claude/skills/`, which is already
# tracked (14 files, all five skills overlapping by name), so committing it duplicates this repo's
# own skill tree with nothing gating the two against drift.
#
# NB `git check-ignore -q <dir>/` is not a reliable way to test this. Before these rules existed it
# returned exit-0 "ignored" for `.codex/` and `.agents/` while every file inside was NOT ignored,
# citing `.gitignore:134` — a blank line, with an empty pattern field. Ask the command that does the
# work instead: `git ls-files --others --exclude-standard`.
AGENTS.md
.codex/
.agents/
# coverage artifacts (services/api COVERAGE=1 gate mode)
.coverage
.coverage.*
coverage.xml