The standalone Registry v2 host (docker.dcglab.co.uk, briefly registry.dcglab.co.uk)
is being scrapped. Move all kb images to Gitea's built-in container registry.
BREAKING: Remove Dockerfile.rocm, compose.rocm.yaml, and ROCm image
build/push from the release pipeline. Remove AMD quick-start and ROCm
references from README and DEVELOPER docs. Update docker-deployment
and developer-docs specs to reflect CPU + NVIDIA only.
The ROCm variant added significant complexity (4.2GB torch wheel,
>20GB container) with limited usage. Users on AMD GPUs should stay
on engine v3.2.x or switch to CPU mode.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move MCP server documentation from README into dedicated MCP.md.
Add configuration examples for Claude Code, VS Code, Cursor,
Windsurf, and JetBrains IDEs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add Dockerfile.cpu and compose.cpu.yaml for CPU-only deployments
- Use sentence-transformers[onnx] + CPU-only torch for ~4x smaller image
- Fix release script: separate git tags (engine-v*) from Docker tags (v*)
- Add CPU image to release build/push pipeline
- Update README with CPU deployment instructions
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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>
- 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>