@adlc/merge-forecast

中文文档
1.12.0发布于 2026/10/10MITES Module构建来源已验证近 30 天下载 8136

冲突预测和并行出票时间表(D2).

中文使用文档
文档目录8 节
  1. 使用量
  2. 退出代码
  3. 信号
  4. 宽度分析
  5. 时间表
  6. 实例
  7. 与兄弟姐妹工具的关系
  8. 核心差距

@adlc/ commer- 前置

ADLC相: D2 — 时间拨/扇出力学

冲突预测+并行出票执行的调度时间表. 预想在任何代理运行前合并冲突,验证安全扇出宽度,并发布一个基础-第一合并时间表.

使用量

merge-forecast [options]

Options:
  --tickets <path>           Path to tickets JSON (default: .adlc/tickets.json)
  --width <N>                Desired fan-out width; gate fails (exit 2) if > firstWaveWidth
  --build-min <X>            Mean ticket build time in minutes (for backpressure width)
  --merge-min <Y>            Mean merge-rebase-regreen time in minutes
  --co-change-limit <N>      Git log depth for co-change mining (default: 500)
  --conflict-threshold <F>   Score >= this triggers SEQUENCE verdict (default: 0.5)
  --graph-coupling <path>    Path to semantic call/symbol graph coupling JSON
  --json                     Machine-readable JSON output
  --help                     Show this help

预测从 git 寄存器根上将树和地雷共同改变,从而得出任何子目录的相同结果; --tickets 财务报告和审定财务报表 --graph-coupling 从工作目录中解析路径。 在 git 寄存器外, 工作目录为根并用警告跳过 .

退出代码

代码含义
0 个出入口——时间表按建议的宽度安全
1个操作错误 — 糟糕的门票文件, 无法解答的输入
2个门失败—— --width 超过第一个WaveWidth,或否决/高风险对同时排定

信号

每对平行资格的票对(在DAG中都不是对方的祖先)被打出5个信号. 组合分数=单个信号的最大分数.

分数信号说明
1.0 国家scope-overlap难维多 ——门票申报范围重叠. 这些必须连载.
0.8 (简体中文)namespace-collision动态路由片段冲突([pk] 对 [voteKey] 或迁移前缀相撞(drizzle/0005_* 对 migrations/0005_*) (中文(简体) ).
0.7 (简体中文)graph-coupling语义调用/同义图相接(例如:斯潘纳图, mcp__spannercg,或导出图表组合.
0.6 (中文(简体) )import-radius匹配票A范围从票B范围导入的文件,反之亦然.
0-0.5 (英语)co-change历史共同承诺组合 : pairCount / min(fileCountA, fileCountB) × 0.5。 。 。 .

或以上对等 --conflict-threshold 得到一个 SEQUENCE 判决。 阈值以下: PARALLEL。 。 。 .

这个 --co-change-limit 选项必须是整数% 1。 当 git 历史输出为0 时, 合并预测输出为描述性警告 warnings。 。 。 .

无瞄准镜或空瞄准镜的入场券发出警告(ticket "<id>" has no scope defined),并且其宣布的范围与寄存器中零文件相匹配的门票发出警告(ticket "<id>" scope matches 0 files in repo) (中文(简体) ). 任何一对涉及无扫描或零相配的入场券均视为 SEQUENCE (分数1.0,信号) unscoped),并被排除在平行波宽计算之外.

宽度分析

  • 第一个WaveWidth ——贪婪最大的独立集聚地 电波-1 入场券(所有对子都低于门槛的入场券). 答复 我现在能发送多宽的信号数字 --width 被门对面.
  • 调度窗口 - 同样的计算适用于 每个 挥出最宽的一面 答复 这个时间表能走多远对于一个基金会第一DAG, 第1波持有单一的票,所以 firstWaveWidth 是 1 时 scheduleWidth 报告背后的粉丝.
  • 认证窗口 —— 说 折旧的别名 firstWaveWidth,保留给现有消费者。 追踪到一号波 scheduleWidth。 。 。 .
  • 后压风向 —— 说 round(buildMin / mergeMin) 当两旗被授予时. 从整流器-行道吞吐量中衍生出来:如果建成速度快于并吞吸收它们,队列深度化合物.
  • 建议 宽度 —— 说 min(firstWaveWidth, backpressureWidth?, --width?)。 。 。 .

时间表

时刻表取自由卡恩地貌波的车票DAG. 同一波中的所有门票都准备同时建造(它们的依赖性在更早的波浪中完成). 合并顺序是 基础第一 (线粒体依赖性在受抚养人之前合并;在一级之内,先排位后。).

实例

# Basic forecast (auto-detect .adlc/tickets.json)
merge-forecast

# Gate against fan-out width
merge-forecast --width 4

# With backpressure — 20-min builds, 4-min merges
merge-forecast --width 5 --build-min 20 --merge-min 4

# JSON output for orchestrators
merge-forecast --json

# Custom tickets path + looser threshold
merge-forecast --tickets plan/tickets.json --conflict-threshold 0.7

# Deep co-change history
merge-forecast --co-change-limit 1000

与兄弟姐妹工具的关系

  • 上游: 车票由 model-router (P2阶段)。 此工具在代理运行前验证分区质量 .
  • 下游地区数字 : rails-guard 执行合同铁路 merge-forecast 确定冲突表面.
  • 补充: 在完成平行分支之后, merge-forecast 可针对更新后的主干线重新运行以确认再基安全.

核心差距

@adlc/core 提供 activeTickets 过滤已完成的门票( 投放完成) 门票和条纹边缘指向它们,使剩下的DAG有效)所以 积压的清点器没有安排已完成的工作.

版本与发布记录

@adlc/merge-forecast 共发布 18 个版本,首次发布于 2026/06/14;过去 12 个月发布了 18 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.12.0latest2026/10/1027 天前
1.11.12026/09/091 个月前
1.11.02026/08/252 个月前
1.10.02026/08/112 个月前
1.9.02026/08/092 个月前
1.8.02026/08/082 个月前

关于 @adlc/merge-forecast 的常见问题

@adlc/merge-forecast 是什么?

冲突预测和并行出票时间表(D2).

如何安装 @adlc/merge-forecast?

在项目目录运行 npm install @adlc/merge-forecast,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 merge-forecast,可以用 npx merge-forecast 直接运行。

@adlc/merge-forecast 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/adlc__merge-forecast 是否存在。

@adlc/merge-forecast 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@adlc/merge-forecast 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@adlc/merge-forecast 可以商用吗?

@adlc/merge-forecast 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@adlc/merge-forecast 的下载量有多少?

根据 npm 官方下载统计,@adlc/merge-forecast 在 2026/10/05 – 2026/11/03 这 30 天内被下载 8,136 次,日均约 271 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@adlc/merge-forecast 还在维护吗?

最新版本 1.12.0 发布于 2026/10/10(27 天前);至今共发布 18 个版本,其中过去 12 个月发布了 18 个;首次发布于 2026/06/14。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。