# Extension Census — ledger Extracted from `repo_files.tsv` (curated 3,344-row file census) in `/root/troupe-standup`. Rule: basename = final path component; extension = substring after the LAST dot, lowercased; dotfiles (leading dot, e.g. `.gitignore`, `.hermes-tmp.GOYIwZ`) and files with no dot are grouped as `(none)`. | rank | extension | file_count | |---|---|---| | 1 | md | 829 | | 2 | png | 803 | | 3 | py | 653 | | 4 | txt | 551 | | 5 | json | 230 | | 6 | sh | 56 | | 7 | html | 55 | | 8 | csv | 43 | | 9 | svg | 31 | | 10 | (none) | 18 | | 11 | age | 16 | | 12 | tsv | 15 | | 13 | xml | 12 | | 14 | log | 5 | | 15 | sha256 | 4 | | 16 | pdf | 4 | | 17 | jsonl | 3 | | 18 | mp3 | 3 | | 19 | c | 2 | | 20 | jpg | 2 | | 21 | diff | 2 | | 22 | py""" | 1 | | 23 | check | 1 | | 24 | md5 | 1 | | 25 | dl | 1 | | 26 | rc | 1 | | 27 | yaml | 1 | | 28 | gz | 1 | *Total files: **3344** (matches the 3344 data rows in repo_files.tsv).* ## Verification notes - `repo_exts.tsv` (the existing table) lists 29 rows but carries a duplicated header line and two spurious rows — `goyiwz` (a parse artifact of the dotfile `.hermes-tmp.GOYIwZ`) and `py""""` (a parse artifact of the escaped `wizard-work/beam/CHECK` row). - Existing `json` (231) vs this table (230): existing classified the dotfile `.chk.json` as json; under the dotfile rule shown above it is `(none)`. - Existing `(none)` (16) vs this table (18): two dotfiles (`.chk.json`, `.hermes-tmp.GOYIwZ`) are counted as `(none)` here. - `py""""` appears in both tables at count 1, so it is a shared value, not a discrepancy; its source row is the escaped beam CHECK row. - `repo_files.tsv` records the beam CHECK script twice (rank 1 is an escaped duplicate of rank 620); both rows are included as-is.