Skip to content

docs(readme): add memory setup instructions with troubleshooting#86

Merged
slaid098 merged 2 commits into
mainfrom
docs/readme-memory-setup-instructions
Jul 26, 2026
Merged

docs(readme): add memory setup instructions with troubleshooting#86
slaid098 merged 2 commits into
mainfrom
docs/readme-memory-setup-instructions

Conversation

@slaid098

@slaid098 slaid098 commented Jul 26, 2026

Copy link
Copy Markdown
Owner

Что сделано

Расширил секцию ## Memory setup в README.md — добавил пошаговую инструкцию по развёртыванию памяти:

  • How it works — ASCII-диаграмма пути plugin → wrapper → Python CLI → OpenRouter
  • Prerequisites — fork memory repo, получить OpenRouter key, заполнить .env (с примером)
  • Initialize — два пути: Docker (recommended) + bare metal
  • setup-memory.sh steps — 6 шагов что делает скрипт (idempotent)
  • Verify it works — 4 команды для end-to-end проверки (wrapper, meta, .rag/, search)
  • Troubleshooting — таблица из 6 частых проблем + fixes
  • Environment variables — полная таблица из 10 vars с defaults и описанием

Почему

После PR #75/#77/#83 память заработала end-to-end, но README не объяснял как её развернуть с нуля. Пользователь (и будущие контрибьюторы) не знали: какие ключи нужны, как проверить что wrapper перезаписан, что делать со stale Rust артефактами. Теперь README содержит полный flow от clone до verify.

Closes #87

@slaid098

Copy link
Copy Markdown
Owner Author

Docs Review Summary

  • Project map: no structural changes (docs-only PR: README.md edit + new handoff + new ADR — no new modules/dirs)
  • Handoff: valid (4 sections filled: Что сделано / Почему / Pending / Watch out)
  • ADR: valid (4 sections filled: Статус / Контекст / Решение / Альтернативы)

Spec Cleanup

  • Spec: n/a (docs/spec/roadmap.md does not exist)

Verdict: NO_CHANGES

@slaid098

Copy link
Copy Markdown
Owner Author

Code Review Summary

Отличный docs-only PR: расширил секцию Memory setup в README с 3 строк до полной инструкции (7 подсекций, 112 строк). Все утверждения проверены против реального состояния проекта — кода, скриптов, .env.example, мета-формата. CI не запускается по design (paths-ignore: **/*.md, docs/** в ci.yml) — не блокер.

Positives

  • Verify commands точные: search <query> -i <dir> -k <n> --json совпадает с src/memory/cli.py:13-15 (argparse: query, -i/--index-dir, -k, --json)
  • Meta format корректен: README говорит "version + sha256, not Rust (model_id + hidden_size)" — реальный .rag/meta.json содержит {"version": "qwen/qwen3-embedding-8b:512:64", "files": {...sha256...}}
  • .rag/ listing точный: index.json (220MB) + meta.json + .lock — подтверждено ls -la
  • Wrapper описание точное: "~10 lines, not Rust binary (71 lines)" — генерируемый wrapper в setup-memory.sh = 9 строк (spawnSync → python -m src.memory) ✓
  • 10 env vars валидны: все найдены в коде (embedder.py:8-14, index.py:189-190) и setup-memory.sh:7,12-16. Defaults совпадают с .env.example
  • Troubleshooting таблица реалистичная: 6 строк покрывают реальные ошибки — OPENAI_BASE_URL env var not set действительно raises в embedder.py:10; stale Rust index.bin — реальный migration кейс после PR feat(memory): incremental index with SHA256 + atomic + versioning + flock #83
  • Handoff + ADR-038 полные: все секции заполнены (Что сделано / Почему / Pending / Watch out; Статус / Контекст / Решение / Альтернативы). Closes docs(readme): add memory setup instructions with troubleshooting #87 указан
  • PR hygiene: 2 коммита, title docs(readme): ... следует conventional format, body на русском с правильными заголовками

Suggestions (info, not blocking)

  • README:145 [accuracy] Verify-команда использует путь node_modules/@mathew-cf/rag-cli/bin/rag.js, но default в setup-memory.sh:7 = /usr/local/lib/node_modules/@mathew-cf/opencode-memory/node_modules/@mathew-cf/rag-cli/bin/rag.js. В Docker пользователь должен использовать полный путь или $MEMORY_WRAPPER_PATH. Можно добавить примечание.
  • README:167-168 [clarity] В таблице Environment variables колонка "Default" для OPENAI_EMBEDDING_MODEL и OPENAI_EMBEDDING_BATCH_SIZE отражает значения из .env.example (qwen/qwen3-embedding-8b, 50), а не code defaults (gemini-embedding-2-preview, 2048 в embedder.py:13-14). Это разумно (.env.example = ожидаемая конфигурация), но может сбить с толку при чтении кода без .env.
  • setup-memory.sh [off-topic, не в этом PR] Скрипт имеет несогласованную нумерацию шагов: [1/6]...[4/6], затем [5/7], [5b/7], [7/7]. README описывает 6 логических шагов чище, чем сам скрипт. Можно выровнять в отдельном PR.

Verdict: APPROVE

@slaid098
slaid098 merged commit 4cb50a4 into main Jul 26, 2026
2 checks passed
@slaid098
slaid098 deleted the docs/readme-memory-setup-instructions branch July 26, 2026 17:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs(readme): add memory setup instructions with troubleshooting

1 participant