HermitCrab synthesis: 98% of Mbugwe synthesis work goes to candidates whose root lookup hits but never match the surface
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 52/100
Piste de recherche
Start with docs/hermitcrab-2026-10-21-search-cost-round.md, lines 319–330, then review the failure-reason trace from #534 and the related discussion in #560. Identify where synthesis failures are traced and determine how to classify candidates whose lexical lookup hits but whose surface does not match. Done means the failures are classified by rejecting rule in work steps; do not add pruning.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Claude-drafted.
98% of Mbugwe's synthesis work goes to candidates whose lexical lookup hits but whose synthesis never matches the surface form. It is the largest unaddressed bucket on Mbugwe, and no sound prune is known. The same share was 86% on the private deletion variant, but that figure was measured before a port fix (fix B) that cut the variant's total work by 94.7%, so it does not describe the current port or hc.dll.
Status: open research lead, not started.
What we know (HC-Rust port, synthesis work in work steps):
- 98% on Mbugwe; the record does not give the sample or the fix state for that figure.
- 86% on the private deletion variant, before fix B (303,966,311 work steps then, 16,220,190 after).
- A lexical oracle cannot prune these candidates: the root is reachable, so lexical-reachability pruning (ledger rows 10 and 11) cannot reach them.
- The 2026-10-27 census on
hc.dllattributes steps by failure reason (SurfaceFormMismatchis 27.2% of Mbugwe synthesis steps) but does not split root-reachable failures.
Not known: which rules reject these candidates, and whether a sound condition exists.
Proposed change: classify these failures by the rule that rejects them, in work steps. Do not add a prune until a sound condition is found.
Related: #534 (PR, closed, not merged), #560 (open). The failure-reason trace that would do the classification is #534's; the census harness (branch research/failure-reason-stats at af97348b) is test-only. PanGloss: sillsdev/PanGloss#109 (pointer, open), which depends on sillsdev/PanGloss#34 (open, ports #534).
Next: revive the #534 failure-reason trace, or extend the census harness, and report work steps per rejecting rule on Mbugwe.
Evidence -- what the record states
- Open lead 4: 86% (deletion variant, before fix B) and 98% (Mbugwe) of synthesis work goes to candidates whose lookup hits but whose synthesis never matches the surface (L338-L341); the same sentence appears in the C1 verdict (L160-L162).
- Fix B: a re-inserted segment-class node keeps its members on a featureless grammar. It was a bug in the Rust port; C# was already exact. Deletion variant, held list: 303,966,311 to 16,220,190 work steps, 94.7% less (L51).
- Before fix B, a two-word profile of the deletion variant put synthesis at about 90% of parser work (L101-L103).
Sources -- pinned to 2eba2f50 (closed PR #490 record)
- Search-cost round, open lead 4, L338-L341.
- Census by failure reason: synthesis round L96-L150; ledger row 31, L152; rows 10 and 11: L95-L96.
What would reopen this
A sound condition that rejects a root-reachable failure class before it is synthesised, with a work-step ceiling worth its cost.
- Langage dominant
- C#
- Étoiles
- 29
- Forks
- 16
- Merge moyen
- 6 j 7 h
- PR mergées (30 j)
- 14
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de sillsdev/machine
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour
-
Hermit Crab
Difficulté 2/5 1-3 heures Accessibilité débutants 45/100
Les mainteneurs répondent en général sous 1 jour
-
porting
Difficulté 3/5 Une demi-journée Accessibilité débutants 25/100
sillsdev/machine#617 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Hermit Crab
Difficulté 4/5 3-5 jours Accessibilité débutants 18/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de sillsdev/machine
Issues similaires
-
enhancement needs-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
microsoft/microsoft-ui-reactor#1460 ·
Les mainteneurs répondent en général sous 1 jour
-
t/bug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
dotnet/maui#39950 · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
CommunityToolkit/Datasync#600 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
NimblePros/deviq-hugo#121 ·
Les mainteneurs répondent en général sous 1 jour
-
RANDOM_REPLACE does not keep the date format when the month abbreviation has a trailing periodOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
philterd/phileas-dotnet#188 ·