Skip to content

Add supabase_direct storage backend#165

Open
pavanputhra wants to merge 1 commit into
feature/observability-instrumentationfrom
pavankumar/supabase-direct-storage
Open

Add supabase_direct storage backend#165
pavanputhra wants to merge 1 commit into
feature/observability-instrumentationfrom
pavankumar/supabase-direct-storage

Conversation

@pavanputhra
Copy link
Copy Markdown
Contributor

Summary

  • New server/storage/supabase_direct/ module: writes vCon directly to a Supabase Postgres schema (vcons + parties + dialog + analysis + attachments) via a long-lived psycopg2 connection per worker process, with multi-row INSERTs per vCon.
  • Bypasses the vcon-mcp HTTP layer entirely.
  • Retries forever on connection / query failures rather than DLQing — intended for deployments where Postgres is colocated and brief outages should be absorbed transparently.

Authorship

Code authored by @howejacob1 — opening on his behalf so review can start. He can take over the branch or push fixups directly.

Open questions for review

  • Should the "retry forever, never DLQ" choice be the default, or gated behind an option?
  • Worth a quick sanity check on the schema mapping vs. the canonical vcon-mcp writes, in case fields drift over time.

Test plan

  • Configure a chain to use this backend instead of the mcp storage
  • Process a vCon, verify rows in vcons / parties / dialog / analysis / attachments
  • Kill Postgres briefly, confirm the link retries and recovers without losing the vCon

New storage module that writes vCon directly to the Supabase Postgres
schema (vcons + parties + dialog + analysis + attachments) via a
long-lived psycopg2 connection per worker process, with multi-row
INSERTs per vCon.

Bypasses the vcon-mcp HTTP layer entirely. Retries forever on
connection or query failure rather than DLQing; intended for
deployments where Postgres is colocated and brief outages should be
absorbed transparently.

Options are documented in the module docstring.
@pavanputhra pavanputhra requested a review from howejacob1 May 13, 2026 06:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants