Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[TS] Convert supported symbolic numeric values to strings across shared language routes

未关闭
#496 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
12/100
Issue 类型
功能
描述清晰度
需要澄清
活跃度
活跃
技术栈
kotlin, typescript
领域
testing

调研方向

Start with the frozen ledger original/selection-ledger-v7.json and V7_INFRASTRUCTURE_FRONTIER.md under the real-class-campaign directory, then find the Stats caller that reports STRING_CONCAT_OPERAND_CONVERSION. The issue asks for a shared numeric-to-string conversion for concatenation, String(value) and Number.toString, plus a focused regression. Coordinate with #436 and #310 before writing code, since the issue says not to treat the concrete 42 example as the whole change.

由索引模型根据 Issue 内容生成。

描述

Part of https://github.com/UnitTestBot/usvm/issues/483.

Observed boundary

Priority: P1. confirmed Stats runtime boundary after admission.

Stats is admitted; this is execution/model capability work, not an explanation of the 197 pre-machine rejections.

Implementation scope

Implement a common supported numeric-to-string conversion for concatenation and String(value), and expose it to Number.toString where applicable. Start with explicitly bounded/proven numeric domains and preserve JavaScript formatting rules, including negative zero and nonfinite values in the supported contract. An unsupported formatting case must keep its feasible prefix, not become a fabricated exact string or false/UNSAT. Keep mandatory language behavior invariant across experiment profiles.

Acceptance criteria

  • The exact Stats caller that reports STRING_CONCAT_OPERAND_CONVERSION has a focused source/native regression for a supported symbolic numeric domain.
  • String(value), string + value and value + string use compatible semantics; symbolic fractions/exponent formatting outside support remain precise limitations.
  • Coordinate with #436 for receiver-proven Number.toString and #310 for mixed-kind addition; do not treat the concrete 42 example alone as this implementation.

Existing work to reuse or coordinate

Evidence and delivery rules

Use the frozen v7 200-class ledger and the source-linked reproducer; do not overwrite sealed experiment output. Reuse existing loaders, domain projection, source instrumentation, candidate/replay contracts and bounded observations. Keep original class members and independently frozen domain policies. Run focused source/native checks for the changed contract and leave broad suites to CI; unsupported and newly exposed later gates remain recorded.

Local evidence: iccq2026-paper/experiments/class-coverage-round-robin-20261002/real-class-campaign-20261014/{original/selection-ledger-v7.json,V7_INFRASTRUCTURE_FRONTIER.md} and real-class-machine-diagnostic-20261014/revised-protocol-v8/README.md.

主要语言
Kotlin
星标
33
派生
27
平均合并
3 天 21 小时
30 天内合并 PR
88

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

UnitTestBot/usvm 的其他 Issue

查看 UnitTestBot/usvm 的全部 Issue

相似的 Issue

更多 Kotlin Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。