fix(cypher): resumeFromPaused 漏 node-id namespace 導致下游模板找不到 paused 結果
mira 7B.3f PATCH 測試踩到:classify 跟 compose 都是 claude_api(兩次 paused/resumed),
upsert_index_entry config 寫 `{{compose_index_entry.data.text}}`,但 PATCH 跑出的
block content 是字面 `{{compose_index_entry.data.text}}` —— 模板沒被替換。
根因:resumeFromPaused 把 callback_result spread 到 top-level,但漏了
`[paused_node_id]: callback_result` 的 namespace 包裝。同步路徑的 propagateCtx
有做這件事,resume 路徑沒做,行為不一致。
修:mergedContext 加 [paused_node_id]: callback_result 一行,跟 propagateCtx 對齊。
arcrun.md 同步補三-B「新零件 checklist」+ 三-C「workers_dev=true 全 component
自動化」收尾紀錄。
This commit is contained in:
@@ -136,10 +136,13 @@ export class GraphExecutor {
|
||||
await kvSetNodeOutput(kvStore, paused_node_id, callback_result);
|
||||
}
|
||||
|
||||
// 把 callback_result spread 進 context(替代 paused 結果)
|
||||
// 把 callback_result spread 進 context(替代 paused 結果)+ node-id namespace
|
||||
// 2026-05-14 補:以前漏 namespace,導致下游 `{{paused_node_id.data.text}}` 模板抓不到,
|
||||
// 必須跟同步路徑(propagateCtx)行為一致。
|
||||
const mergedContext: Record<string, unknown> = {
|
||||
...paused_context,
|
||||
...(callback_result && typeof callback_result === 'object' ? callback_result : {}),
|
||||
[paused_node_id]: callback_result,
|
||||
};
|
||||
if (kvStore) {
|
||||
if (!mergedContext._kv_outputs) mergedContext._kv_outputs = {};
|
||||
|
||||
Reference in New Issue
Block a user