Why: I1 increment one - recognition output becomes a command list
for the host router, same-score ties resolve by priority (I5), and
CJK substring false positives get an opt-in boundary mode (I3).
Evidence: go vet clean; go test ./... all ok, including new command
(6), boundary (3), and tie-break tests; intentctl lint smoke run
shows boundary hints on short unbounded terms. Existing classifier
and ambiguity fixtures repointed to an equal-priority pair; the
greet corpus case now expects the I5 tie-break outcome.
Impact: Result gains Commands; recognizer derives them at one point
(guard/fallback stay empty); MatchSpec gains Boundary (default off,
legacy behavior unchanged); lint gains boundary hints. Top/Branch
stay for compatibility.
Refs: Documents proposal 2026-10-07-agent-stack-n1q1i1-plans.md I1 WP1/WP4/WP5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
I1 增量一(库侧):命令模型、同分决胜与词界匹配(WP1/WP5/WP4)
按 Documents 提案
2026-10-07-agent-stack-n1q1i1-plans.md§4.2 落地 I1 的库侧前三块。改动
intent/command.go——Command联合(start/set_slot/change_slot/cancel/clarify/chitchat/handoff)+ActionRef{Kind, ID}(auto/handler/blueprint,command/workflow 预留给 WP2 的 spec.action)。Result.Commands单点展开(deriveCommands):ActionRef 推导:metadata.blueprint → blueprint;Handler → handler;否则 auto(宿主在命令总线与工作流间裁决,与现网兼容)。Top/Branch 全部保留。
MatchSpec.Boundary(默认 false 零行为变化)。规则:右缘必须(「配置」不命中「配置项」、「write」不命中「rewrites」);左缘仅拉丁词条要求(「改配置」里的「配置」仍算命中——中文没有天然词界,右封左放)。intentctl lint新增词界提示:短词条(≤2 字符)且未开 boundary 的 spec 逐条列出(非错误,实测输出正常)。corpus.json的 greet 用例改述为 tie-break 结果 + 新增 tie_ambiguous 保 ambiguous 覆盖。验证
go vet ./...通过;go test -count=1 ./...6 包全 ok。主任务:Dev 仓
feature/agent-stack-i1。