Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

[TS] Integrate computed class members without mixing symbol and string keys

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

Les mainteneurs répondent en général sous 1 jour

@CaelmBleidd y travaille déjà.

Depuis le 16/10/2026.

  • #578 par @CaelmBleidd — ouverte

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
15/100
Type d'issue
Refactorisation
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
kotlin, typescript

Piste de recherche

Start from the member-name comparisons the issue lists: virtual/static lookup, overload selection, field metadata and property-presence checks, which compare names as plain strings. The work depends on the JacoDB frontend fix (UnitTestBot/jacodb#448) and is already under way in linked PR #578, so check that PR before starting. Done means symbol-marked declarations stay separate from same-named string keys, unsupported symbol operations still report explicit unsupported outcomes, and the plain, literal-key and iterator Counter tests pass along with the unchanged Matrix and SegmentTree scenarios.

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

Description

The two-phase PBT/USVM experiment (parent #345) needs the frontend fix in UnitTestBot/jacodb#448 (UnitTestBot/jacodb#447). That frontend retains literal computed class keys and a recognized intrinsic Symbol.iterator key, preserving symbol/string identity through optional wellKnownSymbol metadata in field and method signatures.

USVM currently compares member names as strings in virtual/static lookup, overload selection, field metadata and property-presence logic. Updating the dependency alone could conflate [Symbol.iterator] with the ordinary string "Symbol.iterator".

Bounded implementation:

  • Update to a publicly resolvable immutable JacoDB snapshot containing the frontend fix.
  • Keep ordinary string lookups separate from symbol-marked declarations across current consumers.
  • Preserve explicit unsupported outcomes for symbol reads/writes/initialization not represented by existing runtime storage; do not silently use ordinary string storage or drop initializer effects.
  • Prove ordinary methods on plain/literal-key/iterator Counter classes through source-level symbolic tests and native replay.
  • Check original frozen Matrix and SegmentTree ordinary scenarios, preserving any next unsupported outcomes and source hashes.

General Symbol runtime and arbitrary symbol dispatch remain in #439. Path selector/priority queue changes are outside this issue.

Langage dominant
Kotlin
Étoiles
33
Forks
27
Merge moyen
3 j 21 h
PR mergées (30 j)
88

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

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 UnitTestBot/usvm

Toutes les issues de UnitTestBot/usvm

Issues similaires

Plus d'issues Kotlin

Recevez les nouvelles issues par e-mail

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