Deep Dive

The Joe Sinclair Layer: Where BC Meets Made's Brain

Two systems, one bridge. Joe's RAG + harness + knowledge graph on Made's side. BioCreative's data pipes on ours. Connected by sync functions, built on request.

1. Joe's Stack on the Made Side

What Joe has built — independently, on Made's infrastructure, using Made's architectural decisions. BioCreative didn't build it. We provide data pipes and reference patterns. Joe decides what plugs in and when.

Agentic Architecture

Joe's approach is 80% design-first — architecture before execution. Deliberate engineering for a system handling multiple clients, data sources, and team members simultaneously.

2. APIs Joe Has Running

Syncs built and managed on Made's infrastructure, against Made's API keys, into Made's databases.

SyncScheduleScale
Salesforce (opps/leads/quotes)2–3× daily792 records/run
HubSpot contactsNightly17,631 contacts
Monday.com3× daily467 boards, 8,421 items
PandaDoc3× daily83 docs
Salesforce proposal tri-sync3× daily207 records/run

Made's internal state — sales pipeline, contact database, project management, proposals — all flows in automatically. BioCreative's data layer sits alongside this, not on top of it.

3. Where We Coordinate

Already Flowing

Data PipeDirectionScheduleStatus
News Intelligence (made_sci)BC Hub → Transfer DB2× dailyLive
Social Listening (Trigify)BC Hub → Transfer DBEvery 4hLive

Standing Offers (Made's Call)

Data DomainScaleRequires
Clinical trials7,840 trialsSync function + target tables
Principal investigators14,019 PIsSame
NIH grants2,946 ($757M+)Same
Patents2,919Same
Contact enrichment265,000+Scoping conversation

Each new data domain needs a small sync function. We write it, Made approves the tables, we enable the cron. No forced model.

Active Collaboration Projects

ProjectBC's RoleMade's RoleStatus
Dustin's proposal generatorDB access patterns + harness referenceDesign, review outputDesign phase
SharePoint ingestionContent prep (if useful)Define content scopePlanning
VPS setup (Made's Hostinger)Configure (SSH, Docker, N8N, Traefik)Decide timingStanding offer (2–3h)
Project tracker visibilityRegister BC-side projectsHost tracker, define schemaActive

4. The Unified ID Question

The Friday-call agenda item that hasn't been solved yet — one of the most important architectural decisions ahead.

The problem: The same contact can have 5+ identifiers across Salesforce, HubSpot, Supabase, EmailBison, and HeyReach. Cross-platform contact resolution. The Transfer DB as master, with foreign keys to every external system.

Honest assessment: Matching by email is easy. Matching by name across systems with different formatting and update cadences is a fuzzy matching problem. We've started the work; it's not done.

5. Toward the Commercialized System

We're both building in a Karpathy-aligned LLM-OS pattern — the model as CPU, value in memory hierarchy, I/O, and orchestration.

Shared Architecture Language

LevelWhat It IsWho Has It
L1 Context windowWhat's in the prompt nowBoth
L2 Session memoryPer-user conversation stateJoe (multi-user profiles)
L3 Agent memoryPersistent per-agent stateBoth (different approaches)
L4 RAG knowledge baseEmbedded chunks, KG relationshipsBoth (different embeddings)
L5 Structured databasesSQL tablesTransfer DB + Hub DB

The Endgame