# Compiled output *.out # Python cache __pycache__/ *.pyc *.pyo # Log files *.log # Training logs *.jsonl # Test binaries (but keep .nim source files) **/tests/test_* !**/tests/test_*.nim !**/tests/test_*.nims # User-specific dev environment .envrc devbox.json devbox.lock # Compiled bot binaries — all builds go to *_garage/out/ *_garage/out/ # Java compiled classes *.class # Log and snapshot directories **/logs/ **/snapshots/ # Git worktrees worktrees/ # Nimble puts the bot binary at the garage root (out/ is ignored, this was not) *_garage/ModularBot # Test fixtures are data, not logs - the *.jsonl rule above was written for # training logs and silently excluded the entire gun-range fixture set. !tools/fixtures/**/*.jsonl # Compiled test harnesses have no extension; the test_* rule misses them common_libs/tests/tm_measure common_libs/tests/run_range common_libs/tests/gen_synthetic_fixtures common_libs/tests/acceptance_offline_vs_online common_libs/tests/measure_power_policy common_libs/tests/test_tsetlin_gun common_libs/tests/test_tsetlin_live common_libs/tests/test_tm_pattern_learning # measurement tool binaries (no extension); sources are measure_*.nim tr_bots/ # Measurement-tool binaries (extensionless; their .nim/.py/.txt sources stay tracked) common_libs/tests/measure_tm_readapt common_libs/tests/measure_tm_pattern_cost common_libs/tests/measure_cornering_guns common_libs/tests/measure_vbullet_admit_gate common_libs/tests/measure_tm_miss_shrink common_libs/tests/audit_wave_pairing common_libs/tests/compare_pairing common_libs/tests/diag_synthetic common_libs/tests/diag_automata_validation common_libs/tests/diag_tm_pattern_offline # Primary source archive kept locally, NOT tracked (12 MB) docs/BitBrain_C_code.zip