<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tiny-convmem-mcp.git/tests/mcp_protocol_test.py, branch main</title>
<subtitle>Lightweight local MCP server for searchable LLM conversation storage. 
</subtitle>
<id>https://git.takashi-2521.com/tiny-convmem-mcp.git/atom?h=main</id>
<link rel='self' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/'/>
<updated>2026-08-29T00:15:24+00:00</updated>
<entry>
<title>feat: read_messagesに本文範囲取得viewを追加</title>
<updated>2026-08-29T00:15:24+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-08-29T00:15:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=5b063df8868ef8cdc2a6aab7a670f911bc0ea9a4'/>
<id>urn:sha1:5b063df8868ef8cdc2a6aab7a670f911bc0ea9a4</id>
<content type='text'>
大きなメッセージをMCPホストのtool result上限に触れず取得できるよう、read_messagesへcontent viewを追加する。UTF-8 byte単位のcontent_offset/content_limitとnext_content_offsetにより、文字境界を壊さず反復取得できる。

各chunkにrevisionとtotal_bytesを返し、expected_revisionで取得途中の更新をCONFLICTとして検出する。未知または削除済みmessageはNOT_FOUND、不正な範囲はVALIDATION_ERRORとする。読み取りには既存memory indexを利用し、永続data、revision、I/O counterを変更しない。

新規MCP toolは増やさず、従来の7 tool構成とhistory/context/sessionsの契約を維持する。storage recordとsnapshot形式も変更しないためmigrationとrebuildは不要。

README、設計書、MCPリファレンスを更新し、多言語UTF-8本文の完全再構成、境界・limit・revision・削除済みmessage、read-only I/O、既存view回帰をprotocol testで検証する。

Tests: ctest --test-dir build/range-read-test -C Release --output-on-failure (20/20 passed)
</content>
</entry>
<entry>
<title>fix: sessions paginationとhealth診断を改善</title>
<updated>2026-07-17T03:15:41+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-17T03:15:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=d57577637c1c1a16176d63d5a89e9eec3c1e4d7c'/>
<id>urn:sha1:d57577637c1c1a16176d63d5a89e9eec3c1e4d7c</id>
<content type='text'>
- sessions cursorのエンコード不具合と長いsession IDのバッファ問題を修正
- response budgetに基づくsessionsページングを追加
- get_system_healthにsession_countを追加
- metadata_jsonのフィールド別エラー診断を追加
- CRUD互換性とDebug/Release/ASanテストを確認
</content>
</entry>
<entry>
<title>Harden backup import and restore coverage</title>
<updated>2026-07-04T09:44:17+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T09:44:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=751999a82b8854ef5231e0ded5fe022b1ea5d8ff'/>
<id>urn:sha1:751999a82b8854ef5231e0ded5fe022b1ea5d8ff</id>
<content type='text'>
</content>
</entry>
<entry>
<title>不要なテストコード削除</title>
<updated>2026-07-04T09:10:51+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T09:10:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=28611182ddf57e85554231c19636e3b013bffe79'/>
<id>urn:sha1:28611182ddf57e85554231c19636e3b013bffe79</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(restart): skip dangling relations on memory index rebuild; prune on compaction</title>
<updated>2026-07-04T09:09:47+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T09:09:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=5ac1c7adb7eeefd68dbed1bf6cfbe77cd348f257'/>
<id>urn:sha1:5ac1c7adb7eeefd68dbed1bf6cfbe77cd348f257</id>
<content type='text'>
- Fix restart exit code 1 caused by missing relation targets after delete+rebuild
- memory_index_build: skip relations whose targets no longer exist
- store_rebuild / write_snapshot: prune dangling relations and sources
- Remove diagnostic fprintf from server.c and context.c
- Enable restart resume test in mcp_protocol_test.py
- Add scripts/benchmark_p1_cp.py and run 10k/50k import/export round-trip
- Mark P1-CP, P7-001, P7-CP complete in development-plan.md
</content>
</entry>
<entry>
<title>feat(P1-002): migrate offline JSONL import/export to dedicated CLI</title>
<updated>2026-07-04T08:21:32+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T08:21:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=0634f2048c7c9a474aab1d8104b964b3bf70a064'/>
<id>urn:sha1:0634f2048c7c9a474aab1d8104b964b3bf70a064</id>
<content type='text'>
- Replace the MCP import_messages tool with standalone CLI commands:
  	iny-convmem-mcp --data-dir &lt;path&gt; --import &lt;file&gt;
  	iny-convmem-mcp --data-dir &lt;path&gt; --export &lt;file&gt;
- Add src/cli/{import,export,cli.h} and a CTest process test (tiny-convmem-mcp.cli)
  covering round-trip, manifest generation, overwrite/reject policies, and
  include_deleted export.
- Fix Debug heap corruption in 	iny_store_import() by deep-copying imported
  messages instead of taking ownership of caller-allocated records, which were
  later freed by the caller.
- Remove the now-redundant src/mcp/tools/import_messages.c and keep the tool
  registry at 7 MCP tools.
- Update docs/development-plan.md (P1-002 complete) and
  docs/implementation-status.md with CLI test coverage.
</content>
</entry>
<entry>
<title>feat(P1-002): add offline JSONL import via import_messages MCP tool</title>
<updated>2026-07-04T07:22:35+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T07:22:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=eb5e9d9f37bda7d78f69614da70402357794168a'/>
<id>urn:sha1:eb5e9d9f37bda7d78f69614da70402357794168a</id>
<content type='text'>
- implement `import_messages` MCP tool parsing manifest + PUT/DEL JSONL
- atomic store replacement under lock with overwrite/reject conflict policies
- add `include_deleted` to read_messages export view for full round-trip
- register new tool in MCP registry and update protocol test expectations
- update docs/development-plan.md and docs/implementation-status.md

Debug/Release/ASan 15/15 CTest pass
</content>
</entry>
<entry>
<title>feat: add durable structured memory and explainable retrieval</title>
<updated>2026-07-04T06:28:28+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T06:28:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=03ff5b65a1ccedacdae13e8a916b8f3369807d0e'/>
<id>urn:sha1:03ff5b65a1ccedacdae13e8a916b8f3369807d0e</id>
<content type='text'>
- UPDATE durability: prepare-&gt;append/flush-&gt;no-fail swap, validate before
  disk write, leave memory/revision unchanged on flush failure, partial
  metadata updates via presence mask, relation/source validation shared
  by write/update, revision 1..INT32_MAX with optimistic concurrency.
- Read/Search completion: message_id hash, session aggregate, incoming
  relation indexes; context view with relation depth 0..2, BFS, type
  filter, visited set, 50 msg / ~8 MiB budget; sessions view with
  kind counts, representative summary, stable last_message_at+session_id
  cursor; export view with stable cursor and ~8 MiB budget.
- Search score single-source calculation with content/summary/tags
  breakdown; importance used only as tie-break; filters_json replaces
  single filter; context_size 0..3.
- All 15 tests pass on Debug, independent Release, and ASan builds.
- docs/implementation-status.md and development-plan.md synchronized.
- docs/feedback.md added to .gitignore as user-owned untracked notes.
- Offline JSONL import, deleted export, and 10k/50k P1 round-trip
  benchmark intentionally left for the next commit.
- Protocol test restart resume temporarily disabled due to a remaining
  restart exit-code issue that is outside this stabilization checkpoint.
</content>
</entry>
<entry>
<title>途中経過コミット</title>
<updated>2026-07-04T05:54:45+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-07-04T05:54:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=1efecaef1f867cb218366e2b4ab4b901fdd2835f'/>
<id>urn:sha1:1efecaef1f867cb218366e2b4ab4b901fdd2835f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tool description最適化</title>
<updated>2026-06-30T15:17:40+00:00</updated>
<author>
<name>tanaka takashi</name>
<email>isazaka@gmail.com</email>
</author>
<published>2026-06-30T15:17:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.takashi-2521.com/tiny-convmem-mcp.git/commit/?id=34e00404e9561dcaf8d2d99df7470757a4fee915'/>
<id>urn:sha1:34e00404e9561dcaf8d2d99df7470757a4fee915</id>
<content type='text'>
</content>
</entry>
</feed>
