Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
uses: pnpm/action-setup@v4

- name: Setup Node
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: 20
cache: pnpm
Expand Down Expand Up @@ -63,7 +63,7 @@ jobs:
uses: pnpm/action-setup@v4

- name: Setup Node
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: ${{ matrix.node }}
cache: pnpm
Expand Down Expand Up @@ -98,7 +98,7 @@ jobs:
uses: pnpm/action-setup@v4

- name: Setup Node
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: 22
cache: pnpm
Expand Down Expand Up @@ -136,7 +136,7 @@ jobs:
uses: pnpm/action-setup@v4

- name: Setup Node
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: ${{ matrix.node }}
cache: pnpm
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
uses: pnpm/action-setup@v4

- name: Setup Node
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: 20
cache: pnpm
Expand Down
5 changes: 4 additions & 1 deletion docs/architecture.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ Important traits:

The sync path turns rollout evidence into durable Markdown memory:

1. read the relevant rollout JSONL
1. stream the relevant rollout JSONL line by line without assembling the entire file into one string
2. parse user messages, tool calls, and tool outputs
3. let the extractor produce candidate memory operations
4. run contradiction review so conflicting candidates can be conservatively suppressed while explicit corrections still win
Expand All @@ -81,6 +81,9 @@ The sync path turns rollout evidence into durable Markdown memory:
7. append durable sync audit entries that keep suppressed conflict candidates reviewer-visible
8. record lifecycle history sidecars that power `cam recall timeline` and archive-aware retrieval

Streaming still retains parsed messages, tool calls, and outputs; it does not bound individual line size or total evidence memory.
Malformed JSON lines remain skippable, while file read errors propagate to the caller.

This is where the repository currently handles:

- automatic extraction
Expand Down
5 changes: 4 additions & 1 deletion docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ flowchart TD

sync path 的职责是把“值得长期保存的信息”写回 durable memory:

1. 读取相关 rollout JSONL
1. 按行流式读取相关 rollout JSONL,避免将整个文件拼成单个字符串
2. 解析 user messages、tool calls、tool outputs
3. 由 extractor 生成 candidate memory operations
4. 经过 contradiction review,对冲突 candidate 做保守 suppress
Expand All @@ -79,6 +79,9 @@ sync path 的职责是把“值得长期保存的信息”写回 durable memory
7. 追加 durable sync audit,显式暴露 reviewer 信息
8. 记录 lifecycle history,为 `cam recall timeline` 与归档检索提供 sidecar 线索

流式读取仍会保留解析出的 messages、tool calls 与 outputs;它不限制单行大小或 evidence 的总内存。
损坏的 JSON 行继续跳过,文件读取错误会向上返回。

当前 extractor 的目标:

- 保存稳定、未来有用的信息
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,11 @@
"zod": "^4.0.0"
},
"devDependencies": {
"@types/node": "^24.0.0",
"@types/node": "^26.1.1",
"@vitest/coverage-v8": "^4.0.0",
"rimraf": "^6.0.1",
"tsx": "^4.20.3",
"typescript": "^6.0.2",
"typescript": "^7.0.2",
"vitest": "^4.0.0"
}
}
Loading
Loading