Fix patternProperties regex character classes misinterpreted as array index in dev-mode schema check#8577
Merged
Merged
Conversation
…#8522) Agent-Logs-Url: https://github.com/pubkey/rxdb/sessions/832b1569-3c4f-442b-b40a-dcd34bbca5ed Co-authored-by: pubkey <8926560+pubkey@users.noreply.github.com>
Copilot created this pull request from a session on behalf of
pubkey
May 26, 2026 14:17
View session
Contributor
✅ Verify Test Reproduction: Tests FAILED without the fix (expected)This confirms the changed tests correctly reproduce the bug that the source changes fix. This workflow runs the changed tests without the source fix to verify they reproduce the bug. Show output |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When a schema uses
patternPropertieswith regex character classes (e.g.^[a-z]\w*$), the dev-mode schema validator incorrectly interprets the square brackets as array index notation, causing a crash when creating the collection.Changes
src/plugins/dev-mode/check-schema.ts: Filter out flattened schema key paths containing.patternProperties.before the legacyindex: truecheck, preventing regex pattern strings from being parsed as array accessors.test/unit/rx-schema.test.ts: Added regression test#8522— schema withpatternProperties: { '^[a-z]\\w*$': ... }must successfully create a collection, insert, and retrieve a document.orga/changelog/fix-pattern-properties-character-class.md: Changelog entry.Example
Previously this schema would throw in dev mode: