feat: scaffold outreach engine monorepo on the novelpad-desktop stack

Workspaces: config (copied), outreach-core (schema + actions/queries +
hard gates), outreach-ai (Gemini client + embeddings copies, profiler and
mission-fit-judge agent stubs), outreach-worker (DBOS executor with
nightly ingest + hourly expiry workflows), outreach-review (RR7 review
queue v0). Initial drizzle migration incl. pgvector extension.

Stack contract: Yarn 4.5.0 + Turbo, Node 22.16, Drizzle 0.44.6 +
pgvector, DBOS 4.17.6, @google/genai on Vertex, gemini-embedding-001
@1536, React Router v7. Files copied from novelpad-desktop carry
provenance headers @ 62c56b87.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Croissant Le Doux
2026-07-16 11:08:24 -04:00
commit 14200edb60
80 changed files with 11637 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
# Postgres connection string shared by the DBOS system schema, the pg Pool,
# and the Drizzle client over the outreach schema. Required — main.ts throws
# on boot if this is unset.
DATABASE_URL=postgres://postgres:postgres@localhost:5432/helmdocs_outreach
# Path to a GCP service account key JSON used by ingestion/scoring steps that
# call Google-hosted APIs (e.g. @google/genai subscoring, Drive-backed org
# profile lookups). Not read directly by main.ts yet; present here so it's
# provisioned alongside DATABASE_URL for the workflows that will need it.
GCP_SERVICE_ACCOUNT_KEY_PATH=./secrets/gcp-service-account.json
# Optional: cap the pg Pool size (defaults to 20 — see main.ts).
# PG_POOL_MAX=20