Repository navigation
fix: remove duplicate declarations from bad 3edd608↔ae96462 rebase merge - #93
Conversation
NFA.java had duplicate atomicEntry/atomicExit fields and getAtomicGroupCount(). GlushkovAutomaton.java had duplicate findLastRequiredChar(). PatternAnalyzer.java had duplicate AtomicGroupDetector inner class and hasAtomicGroups() method. PikeVMMatcher.java had a conflated merge of two competing atomic-group tracking approaches; restored to the CI-validated PR #92 (ae96462) state. All three gates clean: build GREEN, fuzz 34/34, meta-test 0 mismatches. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #93 +/- ##
========================================
Coverage 82.5% 82.6%
Complexity 1 1
========================================
Files 128 130 +2
Lines 39439 39979 +540
Branches 5150 5225 +75
========================================
+ Hits 32574 33042 +468
- Misses 5230 5282 +52
- Partials 1635 1655 +20
... and 5 files with indirect coverage changes Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: df070b45df
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
What does this PR do?
Removes duplicate declarations introduced by a bad rebase of
3edd608(COUNTING_GLUSHKOV) ontoae96462(atomic groups / possessive quantifiers). Both commits independently added atomic group support; the rebase conflict resolution left both versions in place, breaking compilation.Motivation
3edd608was pushed directly tomainwith bypass permissions. Whenae96462had already merged via PR #92, the rebase conflict left duplicate fields/methods in five files, causing build failures on a clean./gradlew clean build.Related Issue(s)
Follows
3edd608/ PR #92 (ae96462).Change Type
Checklist
./gradlew build)Performance Impact
None — removes dead/duplicate code only.
Additional Notes
Files fixed:
atomicEntry/atomicExitfields andgetAtomicGroupCount()— removed the earlier, less complete version; kept the one that checks both entry and exit states.findLastRequiredChar()— removed the first occurrence; kept the one with the fuller inline comment.AtomicGroupDetectorinner class andhasAtomicGroups()static method — removed the earlier versions; kept the better-documented ones fromae96462.clistAtomicPos-based from PR fix(#41,#42,#74): atomic groups, possessive quantifiers, first-byte skip #92 vsatomicEnteredInClosure-based from our branch). Restored to the CI-validated PR fix(#41,#42,#74): atomic groups, possessive quantifiers, first-byte skip #92 state (ae96462) which was reviewed and green.Gates after fix: build GREEN, fuzz 34/34, meta-test 0 mismatches.