strat-chatbot/app
Cal Corum c2c7f7d3c2 fix: resolve 4 critical bugs found in code review
- Discord bot: store full conversation UUID in footer instead of truncated
  8-char prefix, fixing completely broken follow-up threading. Add footer
  to follow-up embeds so conversation chains work beyond depth 1. Edit
  loading message in-place instead of leaving ghost messages. Replace bare
  except with specific exception types. Fix channel_id attribute access.
- GiteaClient: remove broken async context manager pattern that caused
  every create_unanswered_issue call to raise RuntimeError. Use per-request
  httpx.AsyncClient instead.
- Database: return singleton ConversationManager from app.state instead of
  creating a new SQLAlchemy engine (and connection pool) on every request.
- Vector store: clamp cosine similarity to [0, 1] to prevent Pydantic
  ValidationError crashes when ChromaDB returns distances > 1.0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 15:31:11 -05:00
..
__init__.py feat: initial chatbot implementation with FastAPI, ChromaDB, Discord bot, and Gitea integration 2026-03-08 15:19:26 -05:00
config.py feat: initial chatbot implementation with FastAPI, ChromaDB, Discord bot, and Gitea integration 2026-03-08 15:19:26 -05:00
database.py fix: resolve 4 critical bugs found in code review 2026-03-08 15:31:11 -05:00
discord_bot.py fix: resolve 4 critical bugs found in code review 2026-03-08 15:31:11 -05:00
gitea.py fix: resolve 4 critical bugs found in code review 2026-03-08 15:31:11 -05:00
llm.py feat: initial chatbot implementation with FastAPI, ChromaDB, Discord bot, and Gitea integration 2026-03-08 15:19:26 -05:00
main.py feat: initial chatbot implementation with FastAPI, ChromaDB, Discord bot, and Gitea integration 2026-03-08 15:19:26 -05:00
models.py feat: initial chatbot implementation with FastAPI, ChromaDB, Discord bot, and Gitea integration 2026-03-08 15:19:26 -05:00
vector_store.py fix: resolve 4 critical bugs found in code review 2026-03-08 15:31:11 -05:00