Summary
The chatbot loses all conversation history on pod restart because both storage layers default to ephemeral SQLite databases, despite the operator provisioning a PostgreSQL instance.
Lightspeed Stack generates its configmap without a database.postgres block, so the chatbot falls back to SQLite at /tmp/lightspeed-stack.db for the user_conversation and user_turn tables (sidebar metadata).
Llama Stack configures its kv_default and sql_default storage backends as kv_sqlite/sql_sqlite on the emptyDir volume, so the openai_conversations and conversation_items tables (actual message content) are also ephemeral.
Additionally, the chatbot_transcripts_enabled and chatbot_feedback_enabled settings are hardcoded to false in the configmap template with no CR spec field to override them.
Impact
- Conversation history disappears on every pod restart or page refresh
- The provisioned PostgreSQL database sits unused by the chatbot
- No supported way to enable file-based transcript/feedback exports
Expected Behavior
- The chatbot should use the existing PostgreSQL database (already provisioned by the
postgres role) for all persistent conversation storage
chatbot_transcripts_enabled and chatbot_feedback_enabled should be configurable via the CR spec
Steps to Reproduce
- Deploy the operator and create an
AnsibleAIConnect CR with a chatbot configured
- Open the chatbot UI and send a message
- Refresh the page or wait for a pod restart
- Conversation history is gone
- Inspect the lightspeed-stack configmap: no
database.postgres block
- Inspect the llama-stack configmap:
sql_default uses sql_sqlite
Environment
- AAP 2.6 (operator builds
2.6.0+0.1774648973 and 2.6.0+0.1774648945)
- Observed on both OpenShift and EKS deployments
References
Summary
The chatbot loses all conversation history on pod restart because both storage layers default to ephemeral SQLite databases, despite the operator provisioning a PostgreSQL instance.
Lightspeed Stack generates its configmap without a
database.postgresblock, so the chatbot falls back to SQLite at/tmp/lightspeed-stack.dbfor theuser_conversationanduser_turntables (sidebar metadata).Llama Stack configures its
kv_defaultandsql_defaultstorage backends askv_sqlite/sql_sqliteon the emptyDir volume, so theopenai_conversationsandconversation_itemstables (actual message content) are also ephemeral.Additionally, the
chatbot_transcripts_enabledandchatbot_feedback_enabledsettings are hardcoded tofalsein the configmap template with no CR spec field to override them.Impact
Expected Behavior
postgresrole) for all persistent conversation storagechatbot_transcripts_enabledandchatbot_feedback_enabledshould be configurable via the CR specSteps to Reproduce
AnsibleAIConnectCR with a chatbot configureddatabase.postgresblocksql_defaultusessql_sqliteEnvironment
2.6.0+0.1774648973and2.6.0+0.1774648945)References