追加一条消息到 JSONL 文件。 这是最核心的写入操作。每条消息一行,追加到文件末尾。 对应 Reference: EP09 §2 Project.appendEntry() → enqueueWrite(filePath, entry)
(self, session_id: str, message: ConversationMessage)
| 305 | return os.path.join(self.base_dir, f"{session_id}.jsonl") |
| 306 | |
| 307 | def append_message(self, session_id: str, message: ConversationMessage): |
| 308 | """ |
| 309 | 追加一条消息到 JSONL 文件。 |
| 310 | |
| 311 | 这是最核心的写入操作。每条消息一行,追加到文件末尾。 |
| 312 | |
| 313 | 对应 Reference: EP09 §2 |
| 314 | Project.appendEntry() → enqueueWrite(filePath, entry) |
| 315 | """ |
| 316 | path = self._session_path(session_id) |
| 317 | entry = { |
| 318 | "type": message.role, |
| 319 | **message.to_dict(), |
| 320 | } |
| 321 | line = json.dumps(entry, ensure_ascii=False) + "\n" |
| 322 | with open(path, "a") as f: |
| 323 | f.write(line) |
| 324 | |
| 325 | def append_metadata(self, session_id: str, meta_type: str, data: dict): |
| 326 | """ |
no test coverage detected