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

[TS Calls] Build a real-project call census and model roadmap

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

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
35/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
活跃
技术栈
kotlin, typescript

调研方向

Start with the existing native frontend, runner, and observer, then review the inventory in #368 and the related work in #360, #364, and #385. Define the census profile, deterministic aggregation, machine-readable observations, and explicit limits described here. Done means a reviewed P0/P1/P2 model subset is ready for #385, with implementation split into bounded follow-up issues.

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

描述

Part of #360. Uses #364; contributes to #385.

Goal

Measure unknown calls reached on real TypeScript projects and select a small evidence-based model roadmap.

Scope

  • Freeze development-project revisions, licenses, selection criteria, analyzed methods, input domains, frontend/tool versions, seeds and budgets.
  • Reuse the existing native frontend, runner and observer. Aggregate decision events outside the engine; #373 snapshots are not required for a basic census.
  • Define the observation profile explicitly. A stop-on-first-unknown run cannot reveal later calls on that path. Use a fixed opaque-continuation census and/or a separately reported stop profile to distinguish encountered calls and stopping points.
  • Opaque exploration can include infeasible concrete paths and omit callee effects. Report a census of observed events under the profile, not an exhaustive list of all calls or all runtime blockers in a project.
  • Normalize API families/methods without conflating same-named user methods with proven built-ins.
  • Count projects, distinct call sites, distinct containing functions and dynamic events with explicit denominators. Rank primarily by project prevalence and distinct sites; report loop event counts separately.
  • Classify observations as model candidates, frontend/engine defects, external/user behavior or already supported semantics.
  • Use #368's inventory to avoid reimplementing existing models. Record candidate domains, residual cases and the rationale for source code versus a genuine engine intrinsic.
  • Produce a small P0/P1/P2 list. Select a finite experimental subset before final evaluation; held-out projects never select or tune it.

Definition of Done

  • Machine-readable observations preserve profile, limits, project/source examples and raw counts.
  • Source-site identity and aggregation are deterministic; repeated budget-limited runs report observed variability instead of promising identical explored events.
  • Stop-profile censoring and opaque-profile approximation are explicit.
  • A reviewed model subset is ready for #385; missing implementation work is split into bounded family issues with evaluation dependencies.
  • No catalog expansion is implemented in this issue.

The integration examples in #365/#366 are allowed before this roadmap; they validate the mechanism and must not be retroactively presented as census-selected models. Corpus selection and aggregation work can proceed independently of #383.

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

环境准备

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

从这里开始

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

UnitTestBot/usvm 的其他 Issue

查看 UnitTestBot/usvm 的全部 Issue

相似的 Issue

更多 Kotlin Issue

把新 issue 发到你的邮箱

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