@tea-agent/loop-agent 0.16.7 → 0.16.8
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/CHANGELOG.md +6 -0
- package/dist/worker/outcomes/adapters.js +17 -12
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -18,6 +18,12 @@
|
|
|
18
18
|
- Pi SDK 执行长推理或大段结构化输出时不再把高频流式增量事件无界累积到内存;同一响应在多个生命周期事件中重复出现的 Token 用量只统计一次,避免 `Invalid string length` 和成本数据虚高。
|
|
19
19
|
- 后端测试复合执行节点继续保持 clean environment、失败分类和 fail-closed outcome,并为 initial/final Result、repair eligibility、traceability 与 Observe 投影保留结构化运行证据。
|
|
20
20
|
|
|
21
|
+
## [0.16.8] - 2026-07-20
|
|
22
|
+
|
|
23
|
+
### 修复
|
|
24
|
+
|
|
25
|
+
- Outcome 投影对同一 run-owned 结构化产物路径的多次 rewrite(如 backend-test case manifest initial→final)只保留最后一次 hash 声明,避免 `artifact sha256 mismatch` 误拦已完成的 BE-TEST。
|
|
26
|
+
|
|
21
27
|
## [0.16.7] - 2026-07-20
|
|
22
28
|
|
|
23
29
|
### 修复
|
|
@@ -39,21 +39,26 @@ function toRepoRelativePath(repoRoot, candidate) {
|
|
|
39
39
|
function structuredArtifactsFromReport(run) {
|
|
40
40
|
if (!run?.nodes)
|
|
41
41
|
return [];
|
|
42
|
-
|
|
42
|
+
// Multiple gates may rewrite the same run-owned path (e.g. backend-test
|
|
43
|
+
// case manifest initial → final). Keep the last claim in report node order
|
|
44
|
+
// so projector validates against the file on disk after all rewrites.
|
|
45
|
+
const byPath = new Map();
|
|
43
46
|
for (const node of run.nodes) {
|
|
44
|
-
if (node.structuredArtifactPath
|
|
45
|
-
node.structuredArtifactSha256
|
|
46
|
-
node.structuredArtifactSchemaId) {
|
|
47
|
-
|
|
48
|
-
artifacts.push({
|
|
49
|
-
path: node.structuredArtifactPath,
|
|
50
|
-
sha256: node.structuredArtifactSha256,
|
|
51
|
-
kind: identity.kind,
|
|
52
|
-
schemaId: identity.schemaId,
|
|
53
|
-
});
|
|
47
|
+
if (!node.structuredArtifactPath ||
|
|
48
|
+
!node.structuredArtifactSha256 ||
|
|
49
|
+
!node.structuredArtifactSchemaId) {
|
|
50
|
+
continue;
|
|
54
51
|
}
|
|
52
|
+
const identity = splitStructuredArtifactIdentity(node.structuredArtifactSchemaId);
|
|
53
|
+
const pathKey = node.structuredArtifactPath.replace(/\\/g, "/");
|
|
54
|
+
byPath.set(pathKey, {
|
|
55
|
+
path: pathKey,
|
|
56
|
+
sha256: node.structuredArtifactSha256,
|
|
57
|
+
kind: identity.kind,
|
|
58
|
+
schemaId: identity.schemaId,
|
|
59
|
+
});
|
|
55
60
|
}
|
|
56
|
-
return
|
|
61
|
+
return Array.from(byPath.values());
|
|
57
62
|
}
|
|
58
63
|
/**
|
|
59
64
|
* `agent-dag` — the default standard agent DAG. No dedicated test/integration
|