Parsimony: an allomorph form repeated on one entry with different environments is not flagged
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 54/100
Research direction
Start by reading DecideDuplicateAllomorphs in MeasureRunner.cs and its grouping and limitation text to understand the current finding identities and disposition behavior. Then inspect the Grammar-group Measure patterns and the seeded-defect fixture setup. Done means the new Measure reports repeated forms with differing environment lists, identifies empty or subset lists, and passes both the seeded-defect fixture and clean control.
Written by the indexing model from the issue text.
Description
P-allo-duplicate-form misses an allomorph listed twice on one entry when the two copies have different environment lists. A 25,000-entry grammar has one suffix form listed once with no environment and once with / [V] _; the conditioned copy adds nothing, and Parsimony reported 0 of 25,920 allomorphs. Three nasal-prefix entries show the same shape.
What we know:
DecideDuplicateAllomorphs(MeasureRunner.cs) groups by entry, morph type, forms and the ordered environment list, so differing lists never group. Its limitation text says so.- Changing that Measure's grouping would change its finding identities and orphan recorded Dispositions.
Proposed change: a separate Grammar-group Measure P-allo-repeated-form, one finding per entry whose allomorphs repeat a form with different environment lists, saying whether one list is empty or a subset of the other (the copy is then subsumed). Static; under 1 s at 25,000 entries.
Next: build it with a seeded-defect fixture and a clean control.
- Dominant language
- C#
- Stars
- 1
- Forks
- 0
- Avg merge
- 3h 55m
- Merged PRs (30d)
- 36
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from sillsdev/motif
-
Difficulty 2/5 1-3 hours Newbie friendliness 87/100
Maintainers usually reply within 1 day
-
Playground selection bar: comes back after Apply or scrolling while focus is in the Markdown paneOpentextediting
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day
-
textediting
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
textediting
Difficulty 2/5 1-3 hours Newbie friendliness 69/100
Maintainers usually reply within 1 day
-
textediting
Difficulty 1/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
Similar issues
-
bug emitter:client:csharp
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
microsoft/typespec#12572 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
needs-area-label
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 2 days
-
AWS Lambda: KeyNotFoundException drops HTTP-triggered transactions when allowAllHeaders is disabledOpenbug
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
newrelic/newrelic-dotnet-agent#3949 · 1 comment ·
Maintainers usually reply within 1 day
-
area-networking
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
dotnet/aspnetcore#70545 · 1 comment ·
Maintainers usually reply within 1 day
-
priority:P2
Difficulty 2/5 1-3 hours Newbie friendliness 80/100