● Internal Engineering Docs · 2026-08

The Happen Ventures
systems blueprint.

One source of truth for the sales pipeline now on AWS — Maestro/Gabrielle generation → Hub v2 review → the Sender — plus the bot fleet, the n8n cron callers and the Airtable bases. The single VPS has been retired; generation and sending now run entirely on a resilient AWS stack. Navigate by topic — every page links back here.

22AI Bots
11Generator crons
4Airtable Bases
29SSOT Tables
130+Integrations
Scroll · Explore
Navigate

Documentation map

Each section is a self-contained page with diagrams, tables and source references.

01 · Architecture

System topology

Sources → Maestro generation (producer → SQS → consumer Lambda → DynamoDB) → Hub v2 review → Sender. Bots on Bedrock (Maestro on ECS, Hermes on AgentCore) and the shared AWS primitives.

02 · Current Flow

How tasks happen today

n8n “Auto Tasks” crons POST /generate → SQS → task_consumer Lambda drafts into the DynamoDB tasks table (us-east-2). Sources: HubSpot lists + Airtable views. Reviewed in Hub v2.

03 · Target

The AWS end-state (F5)

ECS Fargate services, DynamoDB single-table store, SQS + EventBridge, Bedrock agents, Secrets Manager, observability. The SPOF VPS has been retired — this is now largely the running architecture.

04 · Integrations

External systems

Airtable (config/SSOT), HubSpot CRM, Gmail, n8n cron, AWS (DynamoDB, SQS, Bedrock), QuickBooks, Make.com, Slack. Auth model + data direction per integration.

05 · Lifecycle

From trigger to send

Trigger → enrich → generate → DynamoDB queue → Governor gate → human review in Hub v2 → Approve & Send. Status fields, the 6 reviewer actions, audit trail.

06 · Risks

What can break

Dual send-worker risk (legacy n8n vs the maestro_sender Lambda), status SSOT desync, guardrail gaps, secret sprawl. Severity, blast radius, mitigation. (The VPS SPOF is resolved — retired.)

07 · Roadmap

F0 → F5 phases

From hotfix (F0) to fully cloud-native (F5). Owner, dependencies, exit criteria for each phase.

08 · Operations

Run the system

Sentinel V2 + #hv-alerts (CloudWatch → SNS → Slack), CI/CD on AWS CodeBuild runners, the bot fleet directory, owners, runbooks, escalation paths.

09 · Learning Loop

How the system learns

Capture every human review (reason, original vs edited, the diff) as permanent events → S3 evidence → distilled Memory → dashboards → a trained model. Plain language, step by step. Companion to RFC 0001.

At a glance

Two task sources, one DynamoDB queue, one review surface

Gabrielle (via Maestro) generates outbound sales work from cron schedules. Robin and Frank capture operational and finance work from event triggers. Both now write to the same DynamoDB single-table on AWS and are reviewed in Hub v2 — source distinguishes the bot.

Sales Pipeline · Maestro

Cron-driven outbound generation

n8n “Auto Tasks” crons call POST /generate → SQS → the task_consumer Lambda, which drafts with Bedrock Claude. Source: HubSpot lists or Airtable views. Output: pending_review drafts in DynamoDB for human approval — never auto-sent.

LIVE Gabrielle Sales · = ClawBot = Sales_Assistant

Operational & Finance Tasks

Event-driven internal work

Inbound emails, variances and other signals route to Robin (R3 ops) and Frank (finance), who ingest tasks (source='robin') into the same DynamoDB table. Reviewed through the same Hub v2 action surface.

Active Robin · R3 ops  ·  Active Frank · Finance  ·  Active Jacob · Junk quotes
HV Hub v2 system architecture
Animated · interactive — the three planes (Hub, Maestro sales pipeline, Hermes) over one DynamoDB store. Open full ↗

Source of truth

The task store is now the DynamoDB single-table hv-hub-v2-development-tasks (us-east-2) — no task data lives in Airtable anymore. The config/brain stays in Airtable (ADR 0001): the Workflows & Automations SSOT table (tbl38RfIpWTRJKyiQ) in base appUDQ65M1lSnSM5p still defines every playbook, its schedule, owner, status and bot bindings — plus Agent Settings, guardrails, suppression and templates. The kill-switch is now Status-only. If a workflow isn’t in the SSOT, it doesn’t exist.