#27413·coder

将 template_usage_stats *_mins 合并到 app_usage_mins JSONB 中

作者: EhabY创建于 2026年7月22日更新于 2026年9月17日
标签featurevs-code

第 4 阶段的 可扩展的方法来添加新的 IDE 会话类型 RFC。持久性的 template_usage_stats 表中仍然有专用的 vscode_mins/jetbrains_mins/ssh_mins/reconnecting_pty_mins 列,因此添加 IDE 仍然需要更改方案;此阶段还使持久性汇总层变得动态。范围(RFC:“template_usage_stats 必须也进行迁移”):

  • UpsertTemplateUsageStats: 让 agent_stats_buckets CTE 生成 app_name/app_minutes 项,将其流入现有的 app_usage_mins JSONB,与当前存储 Web 应用程序的方式相同
  • 密钥方案:内置会话名称将与 Web 应用程序 slug 共享 app_usage_mins;在写入回填之前,确认分析查询如何区分它们
  • 一次性迁移:将专用的 *_mins 值回填到 app_usage_mins 中,用于现有行,然后删除专用列,包括始终为零的 sftp_mins(自其 TODOs 无法实现以来就已停用)
  • GetTemplateInsights: 从 app_usage_mins 中读取 IDE 分钟数,而不是从专用列中读取;convertTemplateInsightsApps 动态构建内置应用程序列表
  • GetTemplateAppInsights 保持独立(它通过 workspace_apps 进行过滤,内置 IDE 会话从未加入此列表)

完成此阶段后,新的 IDE 会流程如下:代理 → 标准化表 → JSONB 汇总,无任何方案更改,这就是 RFC 的要点。