Fix review findings: type safety, error classes, cleanup
- Add setEstimatedBatchBytes? to Exporter interface, replacing 3 unsafe
duck-type casts with clean optional calls
- Replace isTimeoutError regex matching with LadderTimeoutError class
and instanceof check
- Move Deno.mkdir out of spawnLadder into createLadderExporter (once)
- Guard timeoutForBytes against negative input
- Move assetLabel helper above first use site
- Remove ineffective assetBytes * 2 doubling on deferred retry
- Rename exporter-subdivide.test.ts to exporter-timeout.test.ts
- Update CLI version string to 0.2.3