The previous commit on this branch made `tools/zq.py` look for its database at `<repo root>/sylpheed.db`, and its refusal message tells people to put one there. Nothing ignored that path. The database is a build artefact of several hundred MB, so a single `git add -A` would have committed it into a public repository's history — the class of blob CONSOLIDATION.md's history-rewrite fork exists to argue about. Anchored (`/sylpheed.db`, plus DuckDB's `.wal`) so it covers only the default location, not any file of that name elsewhere. Verified by creating the files: both ignored, `git status` silent, and a `sylpheed.db` in a subdirectory is not swallowed by the rule. Found while writing the Phase 7 steps: moving the 336 MB database out of `xenia-rs` before that clone is deleted is exactly how someone would put it here. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
73 lines
2.4 KiB
Plaintext
73 lines
2.4 KiB
Plaintext
# Rust build artifacts
|
|
/target/
|
|
**/target/
|
|
/dist/
|
|
|
|
# Extracted game assets — never commit these
|
|
assets/
|
|
*.iso
|
|
*.xiso
|
|
|
|
# IDE / OS
|
|
.idea/
|
|
.vscode/
|
|
*.swp
|
|
.DS_Store
|
|
Thumbs.db
|
|
|
|
# Local dev overrides
|
|
.env
|
|
|
|
# The static-analysis database `tools/zq.py` reads by default. A build artefact
|
|
# of several hundred MB (`sylph-xexdb dis ... --db sylpheed.db`), and zq.py
|
|
# now tells people to put it exactly here -- so it must never be committable.
|
|
# One `git add -A` would otherwise put it in public history for good.
|
|
/sylpheed.db
|
|
/sylpheed.db.wal
|
|
|
|
# Trunk build output
|
|
dist/
|
|
__pycache__/
|
|
|
|
# ── The port ────────────────────────────────────────────────────────────────
|
|
# Generated from the user's own disc. This repo stays clean-room: code, schemas,
|
|
# authored mappings and documentation only -- never game content.
|
|
#
|
|
# BOTH names are ignored on purpose. `export/` is what the exporter writes and
|
|
# what `ExportTree.locate()` reads today; `data/base/` is the name MODDING.md
|
|
# gives that same tree. Only one of them existed here, and it was the one
|
|
# nothing writes -- so the live output directory was tracked while MISSION §4
|
|
# said it was ignored. Ignoring both means renaming the tree to match the docs
|
|
# cannot silently start committing the disc.
|
|
/export/
|
|
/data/base/
|
|
#
|
|
# ⚠️ Enumerating names is what FAILED. The two rules above were written --
|
|
# carefully, with the comment above -- while 850 files and 299 MB of extracted
|
|
# sprites, audio and transcoded video sat committed under `export-probe/` and
|
|
# `export-probe2/`, a third name nobody had thought to list. So ignore the
|
|
# SHAPE, not the instances: any top-level directory whose name starts `export`,
|
|
# and game media anywhere it lands.
|
|
/export*/
|
|
*.ogv
|
|
*.ogg
|
|
*.wav
|
|
*.xpr
|
|
*.pak
|
|
# Loose capture output at the repo root -- 246 MB of it arrived this way.
|
|
/*.tsv
|
|
/*.log
|
|
# Transient inter-agent files. Deliberately outside history: they are working
|
|
# artefacts with provenance in their manifest, not results.
|
|
/exchange/
|
|
!/exchange/.gitkeep
|
|
.godot/
|
|
port/.godot/
|
|
|
|
# A mod is usually an EDITED GAME ASSET, and this repository never holds game
|
|
# assets. `data/mods/` is the user's own directory -- the exporter never touches
|
|
# it and neither does git, except for the README that explains the rule.
|
|
/data/mods/*
|
|
!/data/mods/README.md
|
|
!/data/mods/.gitkeep
|