Skip to content

fix(cli): handle recoverable errors gracefully and remove panics #4798#4816

Open
Shivampal157 wants to merge 2 commits intoboa-dev:mainfrom
Shivampal157:main
Open

fix(cli): handle recoverable errors gracefully and remove panics #4798#4816
Shivampal157 wants to merge 2 commits intoboa-dev:mainfrom
Shivampal157:main

Conversation

@Shivampal157
Copy link
Copy Markdown

This PR addresses issue #4798 by refactoring the CLI module to eliminate potential panics on recoverable errors. I have replaced several instances of .unwrap() and .expect() with proper Rust error handling patterns, specifically using the ? operator for error propagation and map_err for context-aware reporting.
Key Changes:
Error Propagation in main.rs: Converted AST serialization and runtime registration paths to return Result. This ensures that issues like circular references or initialization failures are caught and reported instead of crashing the process.
Robust Mutex Handling in logger.rs: Switched from .expect() to unwrap_or_else when locking the printer mutex. This allows the CLI to remain functional even if a previous thread left the mutex in a poisoned state.
Safe Regex in helper.rs: Handled regex compilation results gracefully. If a pattern fails to compile (e.g., due to invalid characters), the CLI now simply disables highlighting for that segment rather than panicking.
Debug Module Refactor: Updated init_boa_debug_object to propagate errors back to the caller, ensuring a clean exit on failure.
Verification & Testing:
I have manually verified these fixes against the reproduction steps provided in the issue:
Missing Files: Verified that ./boa nonexistent.js now outputs a clean "failed to read file" error with an exit code of 1.
Malformed JS: Confirmed that syntax errors are caught and reported without triggering a panic.
Permissions: Tested with restricted file access to ensure the I/O error path works as expected.

@Shivampal157 Shivampal157 requested a review from a team as a code owner March 2, 2026 18:07
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 2, 2026

Test262 conformance changes

Test result main count PR count difference
Total 52,963 52,862 -101
Passed 49,902 49,506 -396
Ignored 2,222 2,263 +41
Failed 839 1,093 +254
Panics 0 0 0
Conformance 94.22% 93.65% -0.57%
Fixed tests (2):
test/built-ins/RegExp/regexp-modifiers/remove-ignoreCase-affects-slash-upper-b.js (previously Failed)
test/built-ins/RegExp/regexp-modifiers/remove-ignoreCase-affects-slash-lower-b.js (previously Failed)
Broken tests (305):
test/intl402/default-locale-is-canonicalized.js (previously Passed)
test/intl402/fallback-locales-are-supported.js (previously Passed)
test/intl402/constructors-taint-Object-prototype.js (previously Passed)
test/intl402/constructors-taint-Object-prototype-2.js (previously Passed)
test/intl402/DateTimeFormat/test-option-localeMatcher.js (previously Passed)
test/intl402/DateTimeFormat/constructor-options-toobject.js (previously Passed)
test/intl402/DateTimeFormat/test-option-formatMatcher.js (previously Passed)
test/intl402/DateTimeFormat/numbering-system-calendar-options.js (previously Passed)
test/intl402/DateTimeFormat/constructor-options-timeStyle-valid.js (previously Passed)
test/intl402/DateTimeFormat/constructor-options-dateStyle-valid.js (previously Passed)
test/intl402/DateTimeFormat/taint-Object-prototype-date-time-components.js (previously Passed)
test/intl402/DateTimeFormat/constructor-default-value.js (previously Passed)
test/intl402/DateTimeFormat/taint-Object-prototype-dayPeriod.js (previously Passed)
test/intl402/DateTimeFormat/taint-Object-prototype-fractionalSecondDigits.js (previously Passed)
test/intl402/DateTimeFormat/casing-numbering-system-calendar-options.js (previously Passed)
test/intl402/DateTimeFormat/taint-Object-prototype.js (previously Passed)
test/intl402/DateTimeFormat/ignore-invalid-unicode-ext-values.js (previously Passed)
test/intl402/DateTimeFormat/prototype/formatToParts/temporal-zoneddatetime-not-supported.js (previously Passed)
test/intl402/DateTimeFormat/prototype/formatRangeToParts/temporal-zoneddatetime-not-supported.js (previously Passed)
test/intl402/DateTimeFormat/prototype/formatRange/temporal-zoneddatetime-not-supported.js (previously Passed)
test/intl402/DateTimeFormat/prototype/format/temporal-zoneddatetime-not-supported.js (previously Passed)
test/intl402/DateTimeFormat/prototype/resolvedOptions/length.js (previously Passed)
test/intl402/DateTimeFormat/prototype/resolvedOptions/builtin.js (previously Passed)
test/intl402/DateTimeFormat/prototype/resolvedOptions/name.js (previously Passed)
test/intl402/DateTimeFormat/prototype/resolvedOptions/resolved-hour-cycle-unicode-extensions-and-options.js (previously Passed)
test/intl402/DateTimeFormat/prototype/resolvedOptions/prop-desc.js (previously Passed)
test/intl402/Temporal/ZonedDateTime/links.js (previously Passed)
test/intl402/Temporal/ZonedDateTime/prototype/with/mutually-exclusive-fields-chinese.js (previously Passed)
test/intl402/Temporal/ZonedDateTime/prototype/with/mutually-exclusive-fields-dangi.js (previously Passed)
test/intl402/Temporal/ZonedDateTime/prototype/equals/canonicalize-timezone.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/era-boundary-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-persian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-buddhist.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-roc.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/era-boundary-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-months-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/era-boundary-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-dangi.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-indian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-months-dangi.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/era-boundary-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-months-chinese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-persian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-japanese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/era-boundary-roc.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-chinese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-gregory.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-buddhist.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-indian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/leap-year-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/add/basic-roc.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/era-boundary-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-persian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-buddhist.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-roc.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/era-boundary-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-months-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/era-boundary-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-dangi.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-indian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-months-dangi.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/era-boundary-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-months-chinese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-persian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-japanese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/era-boundary-roc.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-chinese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-gregory.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-buddhist.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-indian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/leap-year-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/subtract/basic-roc.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/with/dangi-calendar-leap-dates.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/with/chinese-calendar-leap-dates.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/intercalary-month-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/era-boundary-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/era-boundary-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-dangi.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/intercalary-month-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/era-boundary-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-persian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-chinese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/basic-indian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/until/intercalary-month-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-hebrew.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/intercalary-month-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/era-boundary-islamic-tbla.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/era-boundary-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-dangi.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/intercalary-month-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/era-boundary-islamic-civil.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-ethioaa.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-persian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-chinese.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/dangi-calendar-dates.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-coptic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-ethiopic.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/chinese-calendar-dates.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-islamic-umalqura.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/basic-indian.js (previously Passed)
test/intl402/Temporal/PlainYearMonth/prototype/since/intercalary-month-coptic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lisu.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Garay.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Extender.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Changes_When_Casemapped.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/XID_Continue.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tangut.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kaithi.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bengali.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Tai_Yo.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Decimal_Number.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Beria_Erfe.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Common.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Uppercase.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Cyrillic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Lowercase.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Elbasan.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kawi.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Latin.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Permic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Khitan_Small_Script.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Case_Ignorable.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Changes_When_NFKC_Casefolded.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Avestan.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Carian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Changes_When_Titlecased.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Meroitic_Hieroglyphs.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Modifier_Letter.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mongolian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Common.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Kirat_Rai.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Sidetic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gunjala_Gondi.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Myanmar.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Grapheme_Extend.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tulu_Tigalari.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Extended_Pictographic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Cased_Letter.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Lowercase_Letter.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Symbol.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Latin.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gothic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tolong_Siki.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gurung_Khema.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Letter.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Kawi.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Balinese.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bopomofo.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/ID_Start.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Thai.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Symbol.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Myanmar.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Georgian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Assigned.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Math.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Math_Symbol.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Glagolitic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Turkic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Emoji_Presentation.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Samaritan.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Todhri.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Nonspacing_Mark.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Changes_When_Uppercased.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Ideographic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Sunuwar.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Cased.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Katakana.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Changes_When_Casefolded.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tibetan.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Dash_Punctuation.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cherokee.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ethiopic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Beria_Erfe.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Changes_When_Lowercased.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Letter_Number.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Telugu.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Greek.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Adlam.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Han.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mahajani.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Egyptian_Hieroglyphs.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ol_Onal.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lycian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Tolong_Siki.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sharada.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Emoji.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tifinagh.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Garay.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Punctuation.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lydian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Phags_Pa.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Number.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Egyptian_Hieroglyphs.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Shavian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Telugu.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/ID_Continue.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Runic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tai_Yo.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Newa.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kirat_Rai.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Han.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Bidi_Mirrored.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Punctuation.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Arabic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Dash.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kannada.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Ol_Onal.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Coptic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Kannada.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Todhri.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Nandinagari.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Alphabetic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cyrillic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sunuwar.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Syriac.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Diacritic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Sentence_Terminal.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Osage.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Gurung_Khema.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tirhuta.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Tangut.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Hungarian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Tulu_Tigalari.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Sharada.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Terminal_Punctuation.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Inherited.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Khitan_Small_Script.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Grapheme_Base.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Unassigned.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Toto.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Armenian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tai_Le.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Devanagari.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Uppercase_Letter.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Arabic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/XID_Start.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Mark.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Duployan.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Letter.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Spacing_Mark.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sidetic.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hebrew.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Caucasian_Albanian.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Balinese.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/General_Category_-_Currency_Symbol.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Script_-_Inherited.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/Unified_Ideograph.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Modifier_Sequence.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_Flag_Sequence.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/strings/Basic_Emoji.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji.js (previously Passed)
test/built-ins/RegExp/property-escapes/generated/strings/RGI_Emoji_ZWJ_Sequence.js (previously Passed)
test/built-ins/RegExp/regexp-modifiers/add-ignoreCase-affects-slash-upper-w.js (previously Passed)
test/built-ins/RegExp/regexp-modifiers/add-ignoreCase-affects-slash-lower-w.js (previously Passed)
test/built-ins/Object/freeze/typedarray-backed-by-resizable-buffer.js (previously Passed)
test/built-ins/Temporal/Duration/prototype/round/rounding-window.js (previously Passed)
test/built-ins/Temporal/Duration/prototype/round/zero-duration.js (previously Passed)
test/built-ins/Temporal/Duration/prototype/total/precision-exact-mathematical-values-5.js (previously Passed)
test/built-ins/Temporal/Duration/prototype/total/rounding-window.js (previously Passed)
test/built-ins/Temporal/ZonedDateTime/prototype/with/object-must-contain-at-least-one-property.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/add/overflow.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/add/subtract-from-last-representable-month.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/add/options-read-before-algorithmic-validation.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/add/argument-lower-units.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/subtract/overflow.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/subtract/subtract-from-last-representable-month.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/subtract/options-read-before-algorithmic-validation.js (previously Passed)
test/built-ins/Temporal/PlainYearMonth/prototype/subtract/argument-lower-units.js (previously Passed)
test/staging/sm/RegExp/unicode-ignoreCase.js (previously Passed)
test/staging/sm/RegExp/unicode-ignoreCase-word-boundary.js (previously Passed)
test/staging/sm/String/string-upper-lower-mapping.js (previously Passed)

Tested main commit: cf48c75d45aeaece9ada406250030e28184b1acd
Tested PR commit: b06849c9cc1f9605bd4220f2f410b891b8931941
Compare commits: cf48c75...b06849c

@jedel1043
Copy link
Copy Markdown
Member

Needs a rebase first

@jedel1043 jedel1043 added A-Technical Debt Changes related to technical debt C-CLI Issues and PRs related to the Boa command line interface. labels Mar 16, 2026
@jedel1043 jedel1043 added this to the v1.0.0 milestone Mar 16, 2026
@jedel1043 jedel1043 added the Waiting On Author Waiting on PR changes from the author label Mar 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Technical Debt Changes related to technical debt C-CLI Issues and PRs related to the Boa command line interface. Waiting On Author Waiting on PR changes from the author

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants