forked from ChaiHao/BPOS-MVP
A6 放行选了 lost,却始终走不到 A7。三处各断一截: ① 装配输出口只看**必交付口**。A6 根本没有必交付口(它的输出是选择组 won/revise/lost),于是得到一张空表,下游连判据都读不到。改为必交付口与 选择组的口一并装配。 ② `onTaskTerminal` 只取**第一口**的载荷做路由作用域;没有必交付口时就什么都拿不到。 改为各口载荷合并成一份。 ③ 网关拿到的是**边映射装配后**的载荷,而 A6→G4 这条边没有映射,装配出来是空的 —— 判据依据在这一步整个丢掉,异或网关一条分支都选不中,流悄无声息地停住。 改为:网关按**到达的东西**路由(上游载荷原样穿过);活动与审批点仍只收装配后的载荷, 它们有契约,不该被上游多余字段污染。 另立一条约定并写进注释:**选择组发射的那一口就是这次运行的 outcome** (「恰发一口,随放行一并确认」),下游异或网关的判据读的就是它。 现在:A6 放行选 lost → G4 按 `outcome = "lost"` 判定 → **A7 情报归档起到冯兵工位**。 gates: tsc / eslint / depcruise / 399 测试 全绿 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KeDBx2PHLavbURXB8LJJ7m