Background
packages/mds/src/browser.ts:95 currently exports compile, compileFile, check, checkFile, CheckOptions, and assertKnownKeys — but no lint-related symbols. lint, lintFile, and lintVirtual were added in v0.4.0 (PR #171) and their types were added to types.ts in PR #196, but neither landed a browser.ts export.
Ledger ID: #76 (typescript-browser.ts:95-no_lint_exports)
File: packages/mds/src/browser.ts:95
Originating reviewer: TypeScript (pre-existing; reviewer explicitly said "Separate PR")
Problem
Browser consumers using @mdscript/mds via the WASM backend cannot access lint, lintFile, or lintVirtual. They must import directly from @mdscript/mds-wasm, bypassing the universal wrapper and its option validation (assertKnownKeys).
Note: lintFile may not be meaningful for browser consumers (no filesystem), but lint and lintVirtual are straightforwardly usable with a WASM backend.
Why deferred from PR #196
Pre-existing gap not introduced by PR #196. Adding new browser exports (including potentially 5 new type re-exports) needs its own design decision about which symbols are browser-appropriate, its own test coverage, and possibly an opt-in init() guard on lintFile.
Acceptance Criteria
Deferred from: PR #196
Background
packages/mds/src/browser.ts:95currently exportscompile,compileFile,check,checkFile,CheckOptions, andassertKnownKeys— but no lint-related symbols.lint,lintFile, andlintVirtualwere added in v0.4.0 (PR #171) and their types were added totypes.tsin PR #196, but neither landed a browser.ts export.Ledger ID: #76 (
typescript-browser.ts:95-no_lint_exports)File:
packages/mds/src/browser.ts:95Originating reviewer: TypeScript (pre-existing; reviewer explicitly said "Separate PR")
Problem
Browser consumers using
@mdscript/mdsvia the WASM backend cannot accesslint,lintFile, orlintVirtual. They must import directly from@mdscript/mds-wasm, bypassing the universal wrapper and its option validation (assertKnownKeys).Note:
lintFilemay not be meaningful for browser consumers (no filesystem), butlintandlintVirtualare straightforwardly usable with a WASM backend.Why deferred from PR #196
Pre-existing gap not introduced by PR #196. Adding new browser exports (including potentially 5 new type re-exports) needs its own design decision about which symbols are browser-appropriate, its own test coverage, and possibly an opt-in
init()guard onlintFile.Acceptance Criteria
browser.tsexportslint,lintVirtual,LintOptions,LintDiagnostic,LintResult(or equivalent types)lintFileis omitted (no filesystem) or included with a clear note@mdscript/mdsbundle size assessed (WASM lint bindings are already included; this is a JS-side addition)Deferred from: PR #196