Two changes:
1. structured-add-commands: The implicit note shorthand (kb "text") caused
accidental note creation from mistyped commands. Replaced with explicit
kb addnote <text> command. Root command reverts to standard Cobra
behaviour. Updated examples, tests, SKILL.md, and specs.
2. split-readme-developer-docs: Moved build-from-source instructions, release
process, API reference, and ROCm migration notes from README.md into a
new DEVELOPER.md. README now links to DEVELOPER.md for dev workflows.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Single unrecognized words now print an error with usage hint instead of
being submitted as a note. Prevents typos from creating junk notes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Split release.sh into release-client.sh and release-engine.sh for
independent release cadences. Client checks engine version on first
API call and hard-fails if engine is below MinEngineVersion.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Persist uploaded files to {data_dir}/documents/{content_hash}{ext} after
successful ingestion. Add GET /documents/{id}/file endpoint for retrieval,
delete stored files on document deletion, and add `kb export` client command.
Includes schema migration, tests, and spec updates.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Reject duplicate uploads at the API boundary (HTTP 409) instead of
silently skipping in the background worker. Checks both ingested
documents and in-flight jobs via content_hash on the jobs table.
- Go client handles 409 with distinct messages for already-imported
documents vs already-queued jobs.
- Sanitize FTS5 search queries by quoting each token to prevent syntax
errors from special characters like ?, *, ", (), AND, OR, NOT.
- Add try/except safety net around FTS5 execute for edge cases.
- Add main branch guard to release.sh to prevent releasing from
feature branches.
- Update specs and README to reflect new behaviour.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Remove v1 Python CLI (src/kb_search/, tests/, root pyproject.toml, uv.lock, .venv)
- Add Go client with cross-platform build (client/)
- Add FastAPI engine with NVIDIA and multi-stage ROCm Dockerfiles (engine/)
- Add VERSION files for client and engine, wired into builds
- Add release.sh for automated build, tag, release, and Docker push
- Update README with build/release docs and ROCm migration note
- Clean up .gitignore for v2 project structure
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>