writeDeps

private fun writeDeps(symJar: Path)

Harvest the EXTERNAL types referenced by symJar's class SIGNATURES and write them, one dotted class name per line (sorted), to <symJar dir>/deps.txt.

External means "not a class this jar defines" — the entry set, not a package prefix: MC is not all under net.minecraft (com.mojang.blaze3d/realmsclient/math are MC too), and a name that slips through resolves to the RUNTIME MC jar, putting a second intermediary-named Minecraft on the compile classpath.

symJar is body-stripped (BodyStripper), so its constant pool holds only signature references — a raw CONSTANT_Class scan therefore equals the signature closure, with NO ClassVisitor, no descriptor parsing and no member walk. ReplBridge probes each name on the game loader to recover MC's API-dependency jars (DFU/Brigadier/JOML/authlib/fastutil/...) that a production runtime's classpath enumeration misses. The list is a superset of what a dedicated server needs (the symbol jar is client-mappings-derived): client-only entries just fail to resolve there and are skipped. Published atomically so a half-written list can never be seen as a cache hit.