summaryrefslogtreecommitdiff
path: root/docs/architecture.md
diff options
context:
space:
mode:
authortanaka takashi <isazaka@gmail.com>2026-06-29 21:43:54 +0900
committertanaka takashi <isazaka@gmail.com>2026-06-30 01:23:51 +0900
commit4bc721c3bf7589b519c5730d093f704ce56e3f09 (patch)
tree38da055ab15fd70f5c92584560ea73486e5ddce0 /docs/architecture.md
parent4c6a831aa2a57e2bcc20aa3fc2f1b7172f5be285 (diff)
refactor: MCP層をmcpc APIベースに刷新
- 独自JSON-RPC処理をmcpcへ置き換え - 各MCPツールを個別ソースへ分離 - 共通コンテキストと登録処理を整理 - mcpc互換修正と統合テストを更新
Diffstat (limited to 'docs/architecture.md')
-rw-r--r--docs/architecture.md8
1 files changed, 5 insertions, 3 deletions
diff --git a/docs/architecture.md b/docs/architecture.md
index edf2dfa..9bd7c62 100644
--- a/docs/architecture.md
+++ b/docs/architecture.md
@@ -3,7 +3,7 @@
設計項目ごとの実装・テスト状況は
[設計・実装・テスト状況一覧](implementation-status.md)を参照してください。
-`tiny-convmem-mcp` is a single-process Windows C17 MCP server backed by a
+`tiny-convmem-mcp` is a single-process C17 MCP server backed by a
durable append-only conversation log. The executable owns the stdio dispatch
boundary and uses mcpc's bundled mjson parser through a local compatibility
layer.
@@ -19,7 +19,9 @@ MCP transport and tools -> domain contracts <- storage adapters
- `src/domain` owns conversation and message concepts without depending on
mcpc or a database.
- `src/storage` implements the versioned binary log, recovery, snapshot, and
- compaction using Win32 file APIs.
+ compaction through the platform-neutral `src/sys` API.
+- `src/sys` owns UTF-8 path conversion, files, process locks, durable flush,
+ clocks, and random bytes. Its implementation is the only platform split.
## Implemented prototype contract (v1)
@@ -29,7 +31,7 @@ The six public tools are `write_message`, `read_messages`, `search_messages`,
where it conflicts with this section, the implemented contract is authoritative.
- `write_message` creates the ULID and UTC millisecond timestamp. A PUT or DEL
- succeeds only after `FlushFileBuffers` succeeds.
+ succeeds only after the platform durability flush succeeds.
- Deletion is immediately invisible but remains a tombstone until synchronous
compaction. `metadata.deleted` is not part of immutable Message data.
- Metadata is limited to optional `tool_call_id`, `tags`, and `memory_tier`.