Skip to content

[TS] Model Array and String operations through EtsIR - #443

Merged
CaelmBleidd merged 10 commits into
mainfrom
caelmbleidd/stdlib-sequences-pr391
Oct 13, 2026
Merged

CaelmBleidd merged 10 commits into
mainfrom
caelmbleidd/stdlib-sequences-pr391

Conversation

@CaelmBleidd

@CaelmBleidd CaelmBleidd commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

String algorithms execute through ordinary EtsIR length, indexing, comparisons, loops and concatenation. UTF-16 reads support bounded symbolic strings and positions, with undefined for invalid or out-of-range indexes. The private length/range-copy intrinsics and unused initial-state callbacks are removed.

Private UTF-16 helper dispatch now checks the exact bundled artifact and class owner, preserving foreign same-named declarations. String and Array builtins ignore semantically unused extra arguments after ordinary source argument evaluation, including Array.pop.

Validation: the earlier published head passed the full local usvm-ts suite (1,190 passed, 142 skipped). The current cleanup passed 62 focused model/source/SDK regressions and detektMain/detektTest. Fresh CI for the current head is the broader gate.

Review focus: artifact identity, meaningful argument slots, canonical string indexes, backing bounds, symbolic search/slicing and sparse-array fallback. ASCII case conversion retains its bounded non-ASCII residual fallback. String-index writes remain outside this published change.

Based on main eb632e9 after #446. Preserve Array.isArray registration alongside the Array/String sequence models. All ten own commits are retained; the conflict changes only catalog expectations. Validation on bfa7cb8: 77 catalog, Array.isArray, sequence and fresh-string tests passed without skips; Detekt main/test passed. Full CI run 38381980353 is running on this exact head.

@CaelmBleidd CaelmBleidd changed the title [3/12] Add initial Array and String models [TS] Model Array and String operations with guarded fallback Oct 2, 2026
@CaelmBleidd
CaelmBleidd marked this pull request as ready for review October 2, 2026 16:13
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-numeric-pr391 branch from 2a9a019 to 22f46c6 Compare October 2, 2026 16:45
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-sequences-pr391 branch 2 times, most recently from 004570f to a928cc6 Compare October 7, 2026 23:02
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-numeric-pr391 branch from 22f46c6 to 5c0f812 Compare October 7, 2026 23:02
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-sequences-pr391 branch from a928cc6 to 7903bbd Compare October 11, 2026 06:51
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-numeric-pr391 branch 2 times, most recently from 525927c to d1eb704 Compare October 12, 2026 13:26
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-sequences-pr391 branch from 7903bbd to 625f41f Compare October 12, 2026 13:26
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-numeric-pr391 branch from d1eb704 to 1706fa2 Compare October 12, 2026 14:29
Base automatically changed from caelmbleidd/stdlib-numeric-pr391 to main October 12, 2026 14:30
@CaelmBleidd

Copy link
Copy Markdown
Member Author

@copilot resolve the merge conflicts in this pull request

Copilot AI commented Oct 12, 2026

Copy link
Copy Markdown

@copilot resolve the merge conflicts in this pull request

Resolved. I addressed the merge conflict in commit 8c95ba9 by restructuring the overlapping built-in model catalog assertions so the branch now merges cleanly with main without introducing a merge commit.

CaelmBleidd and others added 2 commits October 13, 2026 22:07
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/stdlib-sequences-pr391 branch from bfa7cb8 to ac52b31 Compare October 13, 2026 19:07
@CaelmBleidd
CaelmBleidd merged commit ad7e4eb into main Oct 13, 2026
6 checks passed
@CaelmBleidd
CaelmBleidd deleted the caelmbleidd/stdlib-sequences-pr391 branch October 13, 2026 19:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants