65 lines
1.9 KiB
Markdown
65 lines
1.9 KiB
Markdown
# Semantic Index V1 Pre-Deployment Manifest
|
|
|
|
- Patch set: `semantic-index-v1-predeployment-20260425T150000Z`
|
|
- Created: `2026-04-25T15:00:00Z`
|
|
- Purpose: deployment manifest for the Redmine semantic index service and its
|
|
LAN/production preparation docs.
|
|
|
|
## Files To Install
|
|
|
|
```text
|
|
semantic_index/
|
|
tests/semantic_index/
|
|
deploy/semantic-index/
|
|
docs/semantic_index_deployment_runbook.md
|
|
docs/semantic_index_production_notes.md
|
|
docs/semantic_index_predeployment_validation.md
|
|
docs/redmine_issue_api_helpdesk_include.md
|
|
dist/semantic-index-v1-predeployment-20260425T150000Z.MANIFEST.md
|
|
```
|
|
|
|
## Files Not To Install
|
|
|
|
```text
|
|
semantic_index/.env
|
|
.cache/
|
|
.venv/
|
|
__pycache__/
|
|
*.pyc
|
|
```
|
|
|
|
Keep runtime secrets in `semantic_index/.env` or in the service manager
|
|
environment on the target host. Do not commit or copy local secrets into a
|
|
source bundle.
|
|
|
|
## External Dependencies
|
|
|
|
- Redmine Helpdesk API patch documented in
|
|
`docs/redmine_issue_api_helpdesk_include.md`
|
|
- Qdrant reachable through `QDRANT_URL`
|
|
- OpenAI API key for `text-embedding-3-small`
|
|
- Python packages: `openai`, `qdrant-client`, `fastapi`, `uvicorn`
|
|
|
|
## Validation Commands
|
|
|
|
```sh
|
|
deploy/semantic-index/install.sh
|
|
.venv/bin/python -m py_compile semantic_index/*.py
|
|
.venv/bin/python -m unittest discover -s tests/semantic_index
|
|
bash -n semantic_index/refresh.sh
|
|
SEMANTIC_INDEX_PROJECT_LIMITS='customer-service=5' semantic_index/refresh.sh
|
|
```
|
|
|
|
Before any production backfill, follow
|
|
`docs/semantic_index_deployment_runbook.md` and confirm Qdrant snapshot or
|
|
volume rollback is available.
|
|
|
|
## Operational Rules
|
|
|
|
- Run `semantic_index/refresh.sh` in dry-run mode before `--apply`.
|
|
- Do not schedule `--force-rebuild`; keep it manual-only.
|
|
- Review refresh logs for `detail_fetched_issues`, `would_embed_documents`, and
|
|
`embedded_documents`.
|
|
- Bind HTTP to localhost unless LAN access is explicitly required and protected
|
|
with `SEMANTIC_INDEX_API_KEY`.
|