@agent_forge/forge-linux-arm64 1.56.7 → 1.57.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/README.md CHANGED
@@ -29,7 +29,7 @@ Stop trusting AI-generated code. Start gating it.
29
29
  - [核心功能](#-核心功能)
30
30
  - [快速开始](#-快速开始)
31
31
  - [它如何工作](#-它如何工作)
32
- - [定位:Loop Engineering 的验证 / 状态层](#-定位loop-engineering-的验证--状态层)
32
+ - [定位:coding agent 循环的验证与状态层](#-定位coding-agent-循环的验证与状态层)
33
33
  - [工作流程](#-工作流程)
34
34
  - [Hook 系统](#-hook-系统)
35
35
  - [命令参考](#-命令参考)
@@ -128,25 +128,27 @@ forge init
128
128
 
129
129
  每轮 AI 编码循环都被门禁兜底:编译是否通过、断言有没有被弱化、改代码前是否真读过、文件有没有被绕道篡改——循环跑得越快,越需要自动化验证,而不是靠人盯着。
130
130
 
131
- ## 🎯 定位:Loop Engineering 的验证 / 状态层
131
+ ## 🎯 定位:coding agent 循环的验证与状态层
132
+
133
+ **Forge is the verification and state layer for coding agent loops.** 用 harness engineering 的话说(Böckeler):computational sensor suite + durable state——代码能验证的交给确定性传感器,Forge 补的是持久状态;用 loop engineering 的话说(Osmani):loop 五构件里公开缺的正是 verification 与 memory 组件,Forge 就是这两块。
132
134
 
133
135
  AI 编码是一个循环:写代码 → 运行 → 读反馈 → 修正 → 再写。这个循环由 coding agent(Claude Code、Codex)驱动,**Forge 不替代循环本身**——它补上循环最容易缺的两层:
134
136
 
135
- - **验证层** — 每一轮产出物经门禁检验:编译通过、断言没被弱化、改代码前确实读过代码、文件未被绕道篡改。循环跑得越快,越需要自动化验证兜底,而不是靠人盯着。
137
+ - **验证层** — 每一轮产出物经门禁检验:编译通过、断言没被弱化、改代码前确实读过代码、文件未被绕道篡改、高危操作经人确认。循环跑得越快,越需要自动化验证兜底,而不是靠人盯着。
136
138
  - **状态层** — 跨循环的任务状态:3 道门禁(实现 → 验证 → 完成)、活跃任务追踪、门禁历史。"做到哪了 / 是否达标"有持久化、可审计的记录,而不是只活在 agent 的上下文里(上下文一压缩就丢)。
137
139
 
138
- 换言之,coding agent 负责**跑循环**,Forge 负责**让每一轮循环产出可信、状态可追**。Forge discovery、不规划需求——那些是循环前端的事;Forge 守的是循环的执行质量。
140
+ 换言之,coding agent 负责**跑循环**,Forge 负责**让每一轮循环产出可信、状态可追**。Forge deterministic 的——范围是 "deterministic where code can verify":行为/意图正确性是任何传感器的 remit 之外,那部分留给 review 与人。验证的判据与证据链归产品而非模型厂商,所以这一层不随模型代际贬值——模型变强时该删的是脚手架(feedforward),不是传感器(feedback)。
139
141
 
140
142
  <details>
141
143
  <summary><b>📖 为什么是确定性门禁,而不是让模型自检?</b></summary>
142
144
 
143
145
  代码可执行(executable)是编码域相对研究/对话域的结构性优势——跑一遍 test / lint / compiler 拿到的退出码是**事实**,模型自评只是**概率判断**。Forge 的门禁尽量把判定交给确定性检查器,而非 LLM-as-judge:
144
146
 
145
- - **Sonar AC/DC 两段式验证**:「a failing build is a fact; an opinion is a starting point」——LLM 审查作 advisory,deterministic build/test 作 hard gate。
147
+ - **分层共识**("If code can verify it, don't ask an LLM to judge it"):LLM 审查作 advisory,deterministic build/test 作 hard gate。 Sonar 的 AC/DC(Agent Centric Development Cycle)是 Guide→Verify→Solve 三段闭环——同一确定性引擎前移进 agent 内环做 maker-checker 分离。
146
148
  - **Code-as-Harness 宣言**(arXiv:2605.18747):「termination should be governed by verification rather than by model confidence」——结束条件由验证决定,不由模型自信度决定。
147
149
  - **反直觉但关键**:模型越强、自主循环越长,越需要非模型的客观检查兜底——产出越快,无人复核的代码就越多;门禁是把吞吐量从 liability 变回 leverage 的那一个组件。
148
150
 
149
- Forge 退出码三态(`BLOCKED` 硬阻断 / `ADVISORY` 软信号)即这一思路的落地:LLM 判定走 advisory,deterministic 事实走 hard。机械可判的模式(cheat-scan / scope-drift / read-before-edit / verify-acceptance)优先抽成 deterministic 扫描器,LLM-reviewer 退到只做语义判断。
151
+ Forge 退出码三态(`BLOCKED` 硬阻断 / `ADVISORY` 软信号 / 无前缀干净通过)即这一思路的落地:LLM 判定走 advisory,deterministic 事实走 hard。机械可判的模式(cheat-scan / scope-drift / read-before-edit / verify-acceptance)优先抽成 deterministic 扫描器,LLM-reviewer 退到只做语义判断。
150
152
 
151
153
  </details>
152
154
 
@@ -304,6 +306,10 @@ Agent 无法通过 `node -e "fs.writeFileSync()"`、`cat > file`、直接编辑
304
306
  | task-complete 自报一致性门禁(自动) | checklist 已勾选项里声称执行过的验证类命令(go test/pytest/cargo test 等)与 toollog 实测 Bash 集比对:测试类声称任务全程零匹配 = 虚报进度形态(arXiv 2605.29442)→ 拒绝完成;非测试类差集只留 advisory 痕;toollog 缺失(宿主遥测未接)跳过——区分"无法验证"与"验证通过";逃生(留痕)`FORGE_SELF_REPORT=disable` |
305
307
  | `forge docs lint [paths...] [--base <rev>]` | 文档产物 L1 确定性 lint(D1-D7:禁令短语/无证据结论/复述 diff/通过断言无证据/必填章节/结论枚举/篇幅);`--base` 改扫该基线以来变更的 .md。exit code:0=通过 2=硬失败。禁令清单单一真相源在 `internal/doclint`,同步渲染进 forge-quality skill |
306
308
  | `forge eval card [--render]` | 治理披露卡:Forge 占 ETCSOVG 哪四层、hook/门禁/逃生舱清单与已知盲区(缺节 BLOCKED)。评测体系:docs/design/forge-evaluation-system.md |
309
+ | `forge eval dead-checks [--window 90d] [--json]` | W0.1 死检查报告:聚合 checklog+hazard 台账,按检查分 live / dead-candidate / insufficient-data(hook 瘦身的数据面;嵌入式 hook 的 PASS 不逐次落账,触发率为下界——输出内明示) |
310
+ | `forge eval friction [--corpus <dir>] [--timeout 120s] [--json]` | W2 摩擦净值实验(脚本化双臂):诱饵语料在「门禁开 / 既有逃生舱全开」两臂下实跑,量拦截率、残余与检查器开销(ON-OFF 墙钟);端到端 agent 臂走 FORGE_EVAL_MODEL 通道 |
311
+ | `forge eval rule-ledger --record --rule <id> --claim <预测> --probe <命令>` / `--verify --rule <id>` / `--list` | W5 门禁规则可证伪台账:规则变更带预测声明 + 可执行 probe,verify 实跑落账结论(`evals/rule-ledger.jsonl` 随库提交;损坏行 fail-closed) |
312
+ | `forge init --profile <lite\|standard\|full>` | W0.3 接线档位:lite=拦截+管线+状态最小集(12 hook/6 事件),standard=完整现行(默认),full=预留位;持久化 `~/.forge/profile`,FORGE_PROFILE env 可覆盖,运行时门即时生效 |
307
313
  | `forge eval dashboard [--dry-run] [--json]` | Track B 遥测(C4/C7):escape 率/off_churn/自举通过率(Wilson 95% CI + 误用注记;样本低于字典下限只出 INSUFFICIENT)。快照落 `~/.forge/evals/forge/snapshots/` |
308
314
  | `forge eval harness-audit [--json]` | A–G harness 修复的事前/事后度量(docs/design/harness-fixes-a-g-2026-09.md M):checklog × toollog(2s 双记去重)× 任务 × hazard 一次算出 skill-trigger 日均触发/按通道转化/inline 跟随/verification-driver 精度、next-hint 采纳、门禁命令形态 C1–C3、refs-critical 下钻(按 host)、封印后归因泄漏、hazard 双投递、coverage 拦后转 pass;`--json` 带口径字段,两机回测只比同口径基线(`evals/harness-audit-*-baseline-*.json`) |
309
315
  | `forge eval golden run [--dir <dir>] [--repeats N] [--rewrite-manifest] [--json]` | 门禁 golden 标注集重放:precision/fpr(Wilson 区间)+ 确定性重放一致率;用例集指纹钉在 `evals/forge/golden/MANIFEST.sha256`,不符拒绝运行(`--rewrite-manifest` 仅限显式轮换) |
package/bin/forge CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent_forge/forge-linux-arm64",
3
- "version": "1.56.7",
3
+ "version": "1.57.1",
4
4
  "description": "Forge native binary for linux-arm64. Auto-installed via optionalDependencies of @agent_forge/forge; do not depend on directly.",
5
5
  "os": [
6
6
  "linux"