Skip to content

[1148] telemetry 实现迁移至 telemetry 插件(启动 434ms → 416ms)#4038

Merged
da-liii merged 2 commits into
mainfrom
da/1148/func
Jul 20, 2026
Merged

[1148] telemetry 实现迁移至 telemetry 插件(启动 434ms → 416ms)#4038
da-liii merged 2 commits into
mainfrom
da/1148/func

Conversation

@da-liii

@da-liii da-liii commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • 把 telemetry 实现(telemetry-utils / telemetry-track / init-telemetry)从启动期 eager 加载的 TeXmacs/progs/telemetry/ 迁到 TeXmacs/plugins/telemetry/progs/plugin/,由插件在事件循环 ~3s 后懒加载,不在启动关键路径上
  • init-research.scm 顶部注入 rootlet 的 pending 队列(telemetry-pending-events / telemetry-track-or-enqueue / telemetry-drain-pending!),让启动期 C++ 上报(OPEN/LOGIN/HEART_BEAT)经队列在插件加载后由 init-telemetry 内的 telemetry-drain-pending! 一次性补 track,关键事件 0 丢失
  • src/Mogan/Telemetry/telemetry.hpp 改为 eval_scheme("(telemetry-track-or-enqueue ...)")init-telemetry / track-eventdefine-publictm-define 以绑定 rootlet

Test plan

  • xmake b stem 编译通过
  • headless 启动:Starting event loop... (416 ms)(1146 基线 434 ms),日志可见 enqueue LOGIN/OPEN → drain 2 pending events → track LOGIN/OPEN → init: enabled
  • xmake r 200_64:92 correct, 0 failed
  • xmake r 2013:9 correct, 0 failed
  • gf fmt --changed-since=main 全部已格式化

🤖 Generated with Claude Code

da-liii and others added 2 commits July 20, 2026 16:49
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- TeXmacs/progs/telemetry/ → TeXmacs/plugins/telemetry/progs/plugin/
  作为 (plugin telemetry-*) 模块,由插件 init 在事件循环 ~3s 后懒加载
- init-research.scm 移除 eager 加载;顶部注入 rootlet 的
  telemetry-pending-events / telemetry-track-or-enqueue /
  telemetry-drain-pending!,让启动期 C++ 上报(OPEN/LOGIN 等)不丢失
- src/Mogan/Telemetry/telemetry.hpp C++ 调用改为
  telemetry-track-or-enqueue,插件加载前入队、加载后由
  init-telemetry 内的 telemetry-drain-pending! 一次性补 track
- init-telemetry / track-event 由 define-public 改 tm-define
  以绑定 rootlet
- generic-edit.scm 调用点 (when (defined? 'track-event) ...) 兜底

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@da-liii
da-liii merged commit 74766b0 into main Jul 20, 2026
6 checks passed
@da-liii
da-liii deleted the da/1148/func branch July 20, 2026 09:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant