Skip to content

docs(chat): define original project peer recipient delivery boundary - #7182

Merged
huangruiteng merged 1 commit into
mainfrom
codex/project-peer-ingress-plan
Oct 24, 2026
Merged

huangruiteng merged 1 commit into
mainfrom
codex/project-peer-ingress-plan

Conversation

@loopx-agent

Copy link
Copy Markdown
Collaborator

A bound project conversation can be discovered and continued by its human owner, but it still cannot be selected as a collaboration recipient while retaining goal_id=null. The request, grant, peer and request-control owners currently assume registered Goal/Agent identities. Reusing the human Web input path would change provenance instead of supplying the missing collaboration contract.

This bilingual RFC update specifies the next complete implementation path: an explicit original-conversation recipient shared by discovery, grants, publication, FIFO dispatch, receiver assessment and requester return. It preserves existing Goal addresses and receipts, prevents all_registered from silently widening to project conversations, and distinguishes the requester lifetime from the recipient Session. It also names the missing worker-time and request-revision/cancellation work, which an enqueue-only change would miss.

The decisive regression is an authorized request to an existing Goal-less Session through separate Chat/coordination roots, including human input interleaving, restart, independent assessment, exact requester return, and revocation/replay/response-loss controls. This is a design prerequisite for that implementation, not runtime, packaged UI, installation or live-provider qualification. The existing conversation UI and CLI remain part of the delivered journey; no new inbox database, executor or approval round is proposed.

Validation:

  • English/Chinese paired-diff check and git diff --check pass; translation reviewed against the same five steps and failure matrix.
  • Public boundary scanner reports both changed documents clean. The combined loopx check command exits nonzero on unrelated local Goal migration checks; those are not reported as passing or included here.
  • Diff-scoped semantic advisory reports no changed source files. No runtime code or machine-enforced vocabulary changed, so no runtime suite was rerun.

Scope review: retain recipient semantics in the existing collaboration owner and compose with the original Chat queue. Runtime implementation and packaged adoption remain open; this proposal does not relax their acceptance.

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent | gpt-6.1-sol | OpenAI | runtime_reported | reasoning_effort=max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机

需要把工作交给已有项目会话并在原请求处收到结果的用户。过去可发现并由本人继续原会话,却不能把无 Goal 的会话选为协作接收者;本方案把原身份、授权、排队、接收方决定和结果返回连成同一条实现路径。本次验证了设计与现有源码边界相符;它交付下一段实现的可执行验收规格,不代表项目 peer 投递已经运行。本 PR 不交付运行时、打包界面、安装态或真实模型/provider 验收。剩余工作由现有 collaboration 与 Chat owner 完成整条纵向实现,再资格化原会话接收、执行前检查、修订取消及原路返回。不做这一补充,后续实现很容易继续修复本人输入,却把协作来源、独立决定或返回链路留在实现之外。

改动思路

接收者身份和来源授权仍归既有协作所有者,原 Chat 只承接同一 Session 的队列与执行;不增加项目专用收件库或第二执行器。当前交付边界是双语实现规格与决定性测试,而非运行时先接入 enqueue 再留下采用、控制和回传缺口。我对照了当前代码:请求规范确实需要 Goal/Agent,现有 peer 验证双方同属一个 Goal;原绑定会话的发现仅提供目标,本人 Web 输入仍保留本人的来源。这说明不能靠给 Goal 填空值或把 peer 伪装成本人消息完成适配。新计划要求先保存原请求方回传路径,再进入原 FIFO,派发前重新校验权限,最后独立记录接收方决定与请求方采用,覆盖的是一份工作的完整生命周期。

按计划,普通任务依次经过“核实原接收者→显式来源授权→不可变请求与原路返回身份→同一会话排队/执行前复核→独立决定及结果返回”。这些是源自正文的设计路径说明,当前没有运行时执行证据;已有发现和发送入口不被当成闭环验收。

具体改动

整个 diff 只有既有 RFC 的中英镜像,英文增加74行、中文增加51行,合计+125/-0;没有新数据库、模块、CLI、权限开关或状态迁移。逐段核对后,中文保留了英文五个步骤、请求方 lifetime 与接收会话的区别、已有 Goal 地址与历史回执兼容,以及最后的多 root 隔离验收矩阵,没有把“已发现”改写成“已授权”。

关键内容讲解

  1. 身份与授权:一个接收者身份贯穿发现、授权、发布、读取与返回。保留原 Session、native thread 和 null Goal;Session ID、路径、工作区授权或 all_registered 都不能单独扩张为新接收者授权。
  2. 发布、队列与控制:稳定 operation 绑定不可变请求方、接收者、来源和内容;先持久化返回,再经明确 peer 来源进入同一 FIFO。正文特意要求 worker-time 校验、修订和取消,避免只放行 enqueue 就交付。独立采用、延期或拒绝无需伪造 Goal/Todo。
  3. 返回与决定性验收:结果沿已保存的 requester route 返回,不能顺势发给项目会话外部受众;丢失回执不重跑模型。测试要求不同 Chat/coordination roots、普通本人输入穿插、重启、独立判断和精确返回,并保留已注册接收者与本人输入兼容对照。

判断依据是更改前的原会话交付合同,完整版本 385771e56371315976ebe1166a3c07fea8b539df。original-return implemented 指设计明确原请求方返回、无需人工转述;authority implemented 指明确来源授权、执行前复核及接收/采用/执行分离;continuity implemented 指同一 operation、请求、Session/Turn 和历史回执兼容;runtime-qualification deferred,原 collaboration/Chat owner 的隔离真实后端、打包发现和实际接收方采用仍未完成。这些 implemented 仅说明该设计条目写全,没有把实现阶段预先判为通过。

对主干的风险

当前没有阻断项。最强反例是“发现了正确的项目会话,入队测试也通过,但实际 worker 因来源不合法拒绝,或结果只留在项目里没有回到请求方”。新增计划明确覆盖执行前来源检查、exact-Goal 控制扩展和原 requester route,因此没有保留这个 enqueue-only 交付漏洞。另一个风险是把通用 all_registered 扩张到全部项目会话;正文明确要求原 lineage 与当前 binding 下的新类型显式授权,缺失授权只阻断相关投递,已有授权不增加确认轮次。

独立标准 premerge 的4项直接检查与11项选中检查全部通过,零人工 hold;中英 paired-diff 与差异空白检查也分别通过,公开边界扫描两份文档干净。独立全局 check 曾报告两个既有本地 Goal 的 canonical Todo authority 不可用;不可变基线与当前头在同一源码 CLI、同一扫描路径上有相同错误身份和细节,和本次文档无因果关系,未对活动 Goal 做迁移。它不是通过的全局健康证明,也不应成为要求此文档修复私有运行状态的理由。未查询或等待远程 CI,未运行实际模型或宣称新运行时已测试。

语义与 CI 对齐

本次是在既有协作所有者中规划显式接收者词汇扩展,没有实际改变机器协议或已生效默认值。diff advisory 的零变更源码与实际 diff 一致;完整语义检查通过不替代后续实现中的类型、版本和授权负例。文中的 worker 检查和身份限制是将来实现必须满足的契约,当前仍是设计要求;已有旧地址、请求 hash 和回执不能被静默重新解释。这里没有第二份权限权威或新审批流程。

我的整体评价

APPROVE,仅针对 6dc620ac1ff032a2c8fd2c572b37f9b506be07da 的完整双语设计增量。 long_horizon=preserved 指计划保留原身份、重放、撤权、修订取消、独立采用与结果恢复,避免通过新增队列制造重复工作;user_experience=preserved 指原协作/连接 UI 和 CLI 需呈现排队、不可用、决定及返回,并不强迫用户再找内部 ID 或重复确认。没有渲染界面变化,因此无需伪造页面截图;正文和条目已对照中英阅读。

这是一段有明确下一实施者和决定性验收的必要前置规格。它没有提前声称完成真实原会话协作、安装态采用或模型质量,下一步仍需按完整纵向路径实现和资格化。新增内容的规模与边界相称,复用原协作和 Chat owner 的简化方向合理,不应为此引入项目专属收件库。既有持久化兼容是实际要求,未来协议版本和混合入口必须继续证明;本次文档批准不替代实现评审、原生 merge readiness 或合并授权。

English verdict: APPROVE — 6dc620ac1ff032a2c8fd2c572b37f9b506be07da, design-only. Both RFC mirrors specify one original-conversation recipient through explicit source grants, stable publication, the original FIFO, worker-time validation, independent assessment/control and exact requester return. Four direct and11 selected premerge checks pass; unrelated existing local Goal authority errors match the immutable base. Runtime, packaged discovery and actual receiver adoption remain explicitly unqualified. No merge authority is granted.

@huangruiteng
huangruiteng merged commit 3758272 into main Oct 24, 2026
25 checks passed
@huangruiteng
huangruiteng deleted the codex/project-peer-ingress-plan branch October 24, 2026 00:51
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.

2 participants