Context
From PR #452 review: the Python (utf-8-sig) and Ruby (r:bom|utf-8) BOM-stripping codecs are not directly tested with BOM-bearing fixtures. A regression in these encoding settings would slip through undetected.
Proposal
Add end-to-end tests that write fixtures with a UTF-8 BOM prefix (\xEF\xBB\xBF) and verify ctx.ast() parses them correctly for both Python and Ruby. This can go in either tests/engine/ast-support.test.ts (serializer-level) or tests/engine/runner-ast.test.ts (integration-level).
References
Context
From PR #452 review: the Python (
utf-8-sig) and Ruby (r:bom|utf-8) BOM-stripping codecs are not directly tested with BOM-bearing fixtures. A regression in these encoding settings would slip through undetected.Proposal
Add end-to-end tests that write fixtures with a UTF-8 BOM prefix (
\xEF\xBB\xBF) and verifyctx.ast()parses them correctly for both Python and Ruby. This can go in eithertests/engine/ast-support.test.ts(serializer-level) ortests/engine/runner-ast.test.ts(integration-level).References
tests/engine/ast-support.test.ts,tests/engine/runner-ast.test.tsPYTHON_AST_PROGRAM(utf-8-sig),RUBY_AST_PROGRAM(r:bom|utf-8)