Last updated: 2026-03-18
-
docs/index.md -
docs/api-compatibility.md -
docs/deprecation.md -
docs/streaming.md -
docs/embeddings.md -
docs/bedrock-models.md -
QUICK_FACTS.md -
FAQ.md -
MAINTENANCE_REPORT.md -
AUDIT.md -
SUGGESTIONS.md
None.
[MAJOR]ci:publish_stable.ymlandrelease_workflow.ymlreferencepypa/gh-action-pypi-publish@master— should be@release/v1. (release_workflow.yml)
[MINOR]code:create_persona_appuses a module-level global (ovos_persona_server.persona.default_persona) with a TODO comment. Blocks multi-persona support and makes test isolation harder. (ovos_persona_server/__init__.py:38)[MINOR]code: Token counts inusageuselen(text.split())— not real tokenizer counts. Affects OpenAI, Anthropic, Cohere, Bedrock, TGI responses. (ovos_persona_server/chat.py,anthropic.py,cohere.py,aws_bedrock.py,huggingface_tgi.py)[MINOR]docs:pyproject.tomldescription says "simple flask server" — server uses FastAPI. (pyproject.toml:8)[MINOR]code:ollama.pyusesasynccontextmanagerlifespanonollama_router(line 36) — lifespans onAPIRouterare not supported in FastAPI; the lifespan silently has no effect when included viaapp.include_router(). (ovos_persona_server/ollama.py:36)[MINOR]code: Same lifespan issue inchat.py:30. (ovos_persona_server/chat.py:30)
[INFO]packaging:requires-python = ">=3.9"— workspace standard is >= 3.10.[INFO]security: No authentication on any endpoint. Intentional but should be prominent in deployment docs.[INFO]code: Bedrock/invokebody parsing uses field presence heuristics ("messages","prompt","inputText","message") rather thanmodel_idprefix. Ambiguous if a body contains multiple keys. (ovos_persona_server/aws_bedrock.py:38)[INFO]code: Ollama/pulland/pushare stubs that always return{"status": "success"}without downloading or uploading anything. (ovos_persona_server/ollama.py:460-483)
| Item | File | Notes |
|---|---|---|
| Global persona state | ovos_persona_server/__init__.py:38 |
TODO present; blocks multi-persona and clean test isolation |
| Approximate token counts | chat.py, anthropic.py, cohere.py, aws_bedrock.py, huggingface_tgi.py |
word-split, not tokenizer |
| Flask reference in description | pyproject.toml:8 |
Stale copy-paste |
| Router-level lifespan | chat.py:30, ollama.py:36 |
FastAPI ignores lifespan on APIRouter |