HermitCrab: no word reaches the MaxApplicationCount gate, and the mutant stack-overflow path has no end-to-end test

Ouverte
#616 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

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
18/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
csharp
Domaine
backend

Piste de recherche

Start in the HermitCrab engine where MaxApplicationCount is checked during analysis and synthesis, and compare the cap sites in each pass. The open question is whether the synthesis cap sites are dead code or only lack a trace call, so the first step is the proposed mutation that removes the check and records whether any word's output changes. Done means either the dead sites are removed or a word is shown to hit the limit, with the stack-overflow path covered end to end.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Hermit Crab

Two conformance points stay in machine because they concern its engine and runner, not the grammars now in sillsdev/fieldworks-parser-conformance.

  1. MaxApplicationCount: no word reaches this gate. Analysis stops at the cap with a bare return and no trace call; synthesis re-applies only rules analysis un-applied, so the synthesis cap sites never see a count at the cap. Decide: remove the dead sites, or add the trace call so a word can witness the limit. The behaviour to witness is stated in sillsdev/fieldworks-parser-conformance#8.
  2. The mutant stack-overflow path is tested only at its classification, by unit tests. The real overflow reproduced only on a fixture that was deleted.

Not known: whether the synthesis cap sites are dead code or only lack a trace call.

Related: #613 (closed, origin); #615 (runner, open); sillsdev/fieldworks-parser-conformance#8.

Next: run a mutation that removes the cap check at the synthesis sites and record whether any word changes.

🤖 Generated with Claude Code

Langage dominant
C#
Étoiles
29
Forks
16
Merge moyen
5 j 11 h
PR mergées (30 j)
15

Préparer son environnement

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de sillsdev/machine

Toutes les issues de sillsdev/machine

Issues similaires

Plus d'issues C#

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.