Unclassified
Three-Profile Execution Matrix
Date: 2026-07-31
Status: Canonical — every action, binding, projection, and execution mapped
Principle: Think in terms of ACTIONS and EXECUTIONS that happen as product, platform, and agent results
The Three Profiles
| Profile | Who | Purpose | Activation |
|---|---|---|---|
| Dev Internal | Engineering team | Build, test, iterate | tenant_id = dev-local |
| Customer Zero | Founder (you) | Run entire business | tenant_id = customer-zero |
| Product to Users | External users | Use the product | tenant_id = {tenant} via marketplace |
Same codebase. Same services. Split by tenant_id + request origin + JWT audience.
PROFILE 1: Dev Internal
What Happens (Actions)
| # | Action | Who triggers | What executes | Result |
|---|---|---|---|---|
| 1 | Start dev server | pnpm dev | Gateway starts on :8787, all services register | Local environment live |
| 2 | Seed tenant | Migration script | D1 gets dev-local tenant with all tables | Canonical Spine has data |
| 3 | Connect dev tools | Manual connector setup | Connector service registers Notion, GitHub, etc. | Infra tools connected |
| 4 | Run projection | GET /api/v1/workspace/projection/:dept | Projection Engine assembles entities → SharedWorkbench | Frontend gets data |
| 5 | Test AI projection | Schema AI generates projections | ai_entity_projection table gets populated | AI fields appear in UI |
| 6 | Test OODA loop | Click entity → Twin → Approve | Twin proposes → Governance evaluates → Hermes executes | Full loop works |
| 7 | Run tests | pnpm test | Vitest across all packages | 140+ tests pass |
| 8 | Typecheck | pnpm typecheck | tsc across all packages | Zero type errors |
Bindings
| Binding | Value | Purpose |
|---|---|---|
DATABASE_URL | local D1 | Canonical Spine |
CANONICAL_SPINE_DB | local D1 | AI projection table |
AUTH_SECRET | dev-secret | Authentication |
IW_API_URL | http://localhost:8787 | API endpoint |
Projections
| View | What renders | Data source |
|---|---|---|
| All 16 Founder sections | Tables, boards, timelines, canvases | Projection Engine → SharedWorkbench |
| Entity 360 | Record detail + AI panel | Projection Engine + AI Projection Enricher |
| Connector Tray | Available tools | Integration Manager |
Executions
| Execution | Path | Result |
|---|---|---|
| CRUD on any entity | UI → Gateway → Projection Engine → Core Spine | Entity created/updated |
| Twin proposal | Click → Active Context Bundle → Twin → Proposal | Proposal appears in Approvals |
| Governance evaluation | Proposal → Governance evaluator → Policy check | Approved/rejected |
| Hermes execution | Approved proposal → Hermes → Provider | Action executed |
| AI projection refresh | Schema AI → ai_entity_projection → Projection Engine | AI fields updated |
PROFILE 2: Customer Zero (Founder)
What Happens (Actions)
| # | Action | Who triggers | What executes | Result |
|---|---|---|---|---|
| 1 | Login | Founder opens workbench | Auth → TenantGate → resolves customer-zero | Workspace loaded |
| 2 | View Home | Navigation | Projection Engine → all 16 entities → AI projections | Attention Queue + Today Summary |
| 3 | View Revenue | Lens switch | Projection Engine → deals, accounts, pipeline | Revenue views with AI risk |
| 4 | Click entity | User clicks deal | Active Context Bundle → Entity360 → Twin panel | Full context loaded |
| 5 | Edit entity | User edits deal | Changed tuple → capability prepare → governance → Hermes | Deal updated |
| 6 | Approve proposal | User approves Twin's action | Proposal → Governance → Hermes → Provider | Action executed |
| 7 | View Company Pulse | Cross-domain view | Projection Engine → all domains → AI synthesis | Cross-domain signals |
| 8 | View OKRs | Objectives view | Projection Engine → objectives → AI progress risk | OKR tracking |
| 9 | View Decision Log | Decisions view | Projection Engine → decisions → AI outcome tracking | Decision memory |
| 10 | Connect tool | Connector Tray | Integration Manager → Discovery → Activation | New tool connected |
| 11 | View billing | Admin view | Billing service → usage, invoices | Billing dashboard |
Bindings
| Binding | Value | Purpose |
|---|---|---|
DATABASE_URL | production D1 | Canonical Spine |
CANONICAL_SPINE_DB | production D1 | AI projection table |
AUTH_SECRET | production secret | Authentication |
IW_API_URL | https://api.integratewise.ai | API endpoint |
| All 30 service bindings | Gateway wrangler.toml | Service mesh |
Projections (16 sections × 16 entities = 256 possible views)
| Section | Entities | AI Fields | OODA Stage |
|---|---|---|---|
| Home / Role Brief | KPI, Signal, Task, Decision | Health scores, risk assessment, next action | Orient |
| My Work | Task, Commitment, Approval | Blocker detection, effort estimation, risk | Orient → Decide |
| Strategic Objective Portfolio | Strategic Objective, Initiative, KPI, Company Risk | Progress risk, dependency analysis, forecast | Orient → Decide → Act |
| Entity 360 | Primary entity + relationships + timeline | Full AI panel: health, risk, predictions, recommendations | Orient |
| Pipeline / Queue | Company Risk, Decision, Approval, Department Health | Risk assessment, alternatives, precedent | Orient → Decide → Act |
| Timeline | Event, Conversation, Decision, Outcome | Pattern recognition, similar events | Orient |
| Calendar | Meeting, Task, Milestone, Renewal | Scheduling optimization, conflict detection | Orient |
| Communications | Conversation, Message, Contact | Sentiment analysis, relationship mapping | Orient |
| Documents & Knowledge | Document, Attachment, Knowledge, Evidence | Content analysis, gap detection | Orient |
| Signals & Risks | Signal, Risk, Metric, Exception | Anomaly detection, cascade risk | Orient → Decide |
| Approvals | Proposal, Approval, Evidence | Risk assessment, financial impact, alternatives | Decide → Act |
| Planning Canvas | Goal, Initiative, Task, Document, Decision | Progress tracking, resource allocation | Orient → Decide |
| Reports & Metrics | KPI, Metric, Forecast, Summary | Trend analysis, benchmark comparison | Orient |
| Automation & Playbooks | Workflow, Playbook, Capability, Execution | Bottleneck detection, optimization | Orient → Decide |
| Recent Work | Recently viewed / changed entities | Change detection, relevance scoring | Orient |
| Twin Detail | Active entity + evidence + memory + capabilities | Full AI context assembly | Orient → Decide → Act |
Executions
| Execution | Path | Result |
|---|---|---|
| Create Strategic Objective | Form → Gateway → Projection Engine → Core Spine | Objective created, AI projection generated |
| Update Deal Stage | Kanban drag → capability → governance → Hermes → CRM provider | Deal stage updated in CRM |
| Approve Twin's Action | Click Approve → Governance → Hermes → Provider | Action executed, audit logged |
| Connect Notion | Connector Tray → Integration Manager → OAuth → Activation | Notion connected, entities synced |
| Generate AI Projection | Schema AI → tenant context → ai_entity_projection | AI fields populated |
| Refresh Company Pulse | Cross-domain query → all entities → AI synthesis | Pulse updated with latest signals |
| Track OKR Progress | OKR entity → AI progress calculation → forecast | Progress risk detected |
| Log Decision | Decision entity → AI outcome tracking → memory promotion | Decision logged with outcomes |
PROFILE 3: Product to Users (Marketplace)
Activation Flow
| # | Action | Who triggers | What executes | Result |
|---|---|---|---|---|
| 1 | User installs from marketplace | Plugin/MCP marketplace | MarketplaceInstallation state machine → initiated | Installation started |
| 2 | Host platform detected | Spine ADK | Host Discovery → discover connected tools | Tools discovered |
| 3 | Cascade discovery | Spine ADK | For each host tool: explore capabilities → connect → import | All 50 tools discovered |
| 4 | Connector Tray populated | Integration Manager | Discovered tools → Connector Tray UI | User sees all tools |
| 5 | User picks tool | User clicks tool in Connector Tray | Configuration Manager → tool config activated | Tool configured |
| 6 | Activation Manager validates | Activation Manager | Consent → binding → hydration → active | Tool activated |
| 7 | Spine Tunnel established | Platform repo | Tunnel between Operational Spine ↔ Canonical Spine | Data route established |
| 8 | Entities flow | Pipeline | Connector → Normalizer → Core Spine → Projection Engine | Entities appear in workbench |
| 9 | AI projections generated | Schema AI | Tenant context → dynamic schema → projections | AI fields populated |
| 10 | User sees workbench | Frontend | Projection Engine → SharedWorkbench → UI | Full workbench live |
Marketplace Activation Types
| Type | Flow | Example |
|---|---|---|
| Direct | User picks from Connector Tray → Config Manager → Activation Manager → Spine Tunnel | User connects Notion directly |
| Host-imported | Host platform discovery → Spine ADK → Import into Spine Network → Config Manager → Activation | ChatGPT has 50 apps → all discovered |
Bindings (Channel Repos)
| Binding | Value | Purpose |
|---|---|---|
SPINE_TUNNEL_URL | Platform SDK endpoint | Only route to canonical |
CANONICAL_SPINE_DB | ❌ NOT BOUND | Channel repos never access canonical directly |
OPERATIONAL_SPINE_DB | Channel-specific D1 | Channel operational state |
HOST_PLATFORM_CONFIG | Plugin/MCP config | Host platform connection |
Projections (Channel)
| View | What renders | Data source |
|---|---|---|
| Connector Tray | Available + discovered tools | Integration Manager via Spine Tunnel |
| Activation State Machine | Onboarding progress | Activation Manager via Spine Tunnel |
| Channel Workbench | Entities from host platform | Operational Spine + AI projections |
Executions (Channel)
| Execution | Path | Result |
|---|---|---|
| Plugin activation | Plugin marketplace → Plugin repo → Spine Tunnel → Canonical | Plugin entities in canonical |
| MCP activation | MCP marketplace → MCP repo → Spine Tunnel → Canonical | MCP tools in canonical |
| Host discovery | Spine ADK → host API → discover tools → import | Tools added to Connector Tray |
| Tool activation | User picks → Config Manager → Activation Manager → Spine Tunnel | Tool data flows through tunnel |
| AI projection | Schema AI → tenant context → projection table | AI fields for channel entities |
| Memory promotion | Channel memory → Spine Tunnel → Canonical memory | Institutional memory preserved |
The Complete Flow (All Profiles)
┌─────────────────────────────────────────────────────────────────┐
│ USER ACTION │
│ "I want to see my revenue pipeline" │
└──────────────────────┬──────────────────────────────────────────┘
│
┌──────────────────────▼──────────────────────────────────────────┐
│ FRONTEND │
│ WorkbenchApp → context lens "Revenue" → entity types ["deal"] │
│ Calls: platform.getEntities({ department: "revenue" }) │
└──────────────────────┬──────────────────────────────────────────┘
│
┌──────────────────────▼──────────────────────────────────────────┐
│ PLATFORM FACADE (lib/platform/index.ts) │
│ SpinePlatform.getEntities() → fetches from Gateway │
└──────────────────────┬──────────────────────────────────────────┘
│
┌──────────────────────▼──────────────────────────────────────────┐
│ GATEWAY (services/gateway/src/index.ts) │
│ Route: /api/v1/workspace/projection/revenue │
│ TenantGate: resolves tenant_id from JWT │
│ Forwards to: Projection Engine │
└──────────────────────┬──────────────────────────────────────────┘
│
┌──────────────────────▼──────────────────────────────────────────┐
│ PROJECTION ENGINE (packages/projection-engine/) │
│ │
│ 1. ASSEMBLE — Get deals from Core Spine (D1) │
│ 2. RESOLVE — Build relationship graph │
│ 2.5 AI PROJECTION — Fetch AI fields from ai_entity_projection │
│ 3. ENRICH — Knowledge, Signals, Capabilities (parallel) │
│ 4. READINESS — Department operational readiness │
│ 5. ACTIONS — Derive available actions │
│ 6. TIMELINE — Build entity timeline │
│ 7. MEMORY — Assemble memory │
│ 8. TWIN CONTEXT — Compose Twin-facing projection │
│ │
│ Output: SharedWorkbench { │
│ entities: Map<string, SpineEntity[]>, ← canonical + AI │
│ relationships, signals, capabilities, governance, │
│ actions, twinContext, readiness, provenance │
│ } │
└──────────────────────┬──────────────────────────────────────────┘
│
┌──────────────────────▼──────────────────────────────────────────┐
│ FRONTEND RENDERS │
│ │
│ EntityCollection (tables, boards, timelines) │
│ → each entity has: canonical fields + ai fields │
│ → AI fields show: health_score, risk_assessment, │
│ next_best_action, predicted_outcome │
│ │
│ EntityDetail (360 view) │
│ → full entity + AI panel + timeline + evidence │
│ │
│ Twin Panel (click-triggered) │
│ → AI summary, recommendations, alternatives │
└─────────────────────────────────────────────────────────────────┘
The Three Execution Paths
Path 1: Dev Internal → Customer Zero
Dev builds → Dev tests → Dev seeds data → Founder logs in →
Founder sees workbench → Founder edits → AI projections generated →
Founder approves Twin's action → Action executed → Results visible
Path 2: Customer Zero → Product to Users
Founder validates → Product ships → User installs from marketplace →
Host platform detected → Cascade discovery → Tools imported →
User picks tool → Config Manager activates → Spine Tunnel routes →
Entities flow → AI projections generated → Workbench live
Path 3: Agent Execution
Twin proposes → Governance evaluates → Policy check →
Hermes coordinates → Provider executes → Outcome reconciled →
Spine updated → AI projection refreshed → UI shows result
What Each Profile Produces
| Profile | Produces | Consumes |
|---|---|---|
| Dev Internal | Working code, passing tests, type-safe packages | Dev tools, local D1, mock data |
| Customer Zero | Real business decisions, institutional memory, operational continuity | Real tools (Notion, GitHub, HubSpot), real data |
| Product to Users | Marketplace installations, channel activations, user workbenches | Host platform APIs, marketplace catalogs |
The Rule
Every action has a binding. Every binding has a projection. Every projection has an execution. Every execution has a result. Every result feeds back into the system.
No orphan actions. No dead bindings. No unused projections. No silent executions. No invisible results.