A functional toolkit for authoring resource-leveling algorithms — compose constraint and scoring blocks, enumerate feasible schedules

feat(csv): export escapeCsvField, the shared field escaper master

Consolidated downstream on 2026-06-10 because three CSV producers (CsvWriter here, two exports in a consuming workspace) had drifted on the formula-trigger list — CsvWriter's private copy did not defang cells starting with a newline. Upstreamed now so the consumers can import it instead of re-growing their own copies: the downstream workspace's vendored copy imports { escapeCsvField } from "levelset" and a re-vendor without this export fails to typecheck. Behavior change in CsvWriter: a cell whose value starts with "\n" is now apostrophe-defanged as well as quoted. typecheck clean, lint exits 0, bun test 584 pass / 12 skip / 1 fail (the pre-existing XlsxWriter named-range failure). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>


+52 -28
3 changed files