{"slug":"strategy/product-strategy/ARCHITECTURE_INDEX","title":"Historical IP Architecture Index — Superseded","section":"strategy","sectionLabel":"Strategy","status":"current","type":"document","path":"strategy/product-strategy/ARCHITECTURE_INDEX.mdx","bytes":8120,"description":null,"updated":null,"source":"integratewise/Integratewise-docs-wiki","content":"\n> **Status:** HISTORICAL — the complete `docs/ip/**` tree is preserved for\n> product and technical lineage, not current implementation authority.\n>\n> Current authority is\n> [`docs/CANON.md`](../CANON.md),\n> [`ARCHITECTURE_LOCK.md`](../architecture/ARCHITECTURE_LOCK.md),\n> [`IMPLEMENTATION_CONTRACT_v1.1.md`](../architecture/IMPLEMENTATION_CONTRACT_v1.1.md)\n> and\n> [`TENANT_SPINE_FORTRESS_OPERATIONAL_FLOW_MODEL.md`](../architecture/TENANT_SPINE_FORTRESS_OPERATIONAL_FLOW_MODEL.md).\n>\n> Do not implement this tree's Continuity Bridge naming, Cloudflare Access\n> browser identity, D1 truth, Supabase allocation, 20-tool MCP, Triage-writer,\n> layered surface or Twin-sidebar claims.\n\n# Original Snapshot: IntegrateWise — Canonical Architecture Index\n\n> **Version:** 1.1 | **Date:** 2026-06-09 | **Status:** CURRENT SOURCE OF TRUTH\n> **Authority:** Nirmal (Founder)\n>\n> Read this before editing any architecture, deployment, onboarding, or marketing\n> doc. If another document disagrees with the invariants below, this index wins\n> and that document is drift — fix it or mark it superseded.\n\n---\n\n## The Ideal Operating State (the operating model)\n\n```\nINGESTION (happens once per tool):\n  Any SaaS tool / app  → Nango (auth) → Connector → Loader (8 stages)\n                       → Normalizer (8 stages, tool logic stripped, SSOT)\n                       → Spine (the only normalized truth)\n\n  After this, the tool is a SOURCE ONLY. No agent reads it directly again.\n\nCONSUMPTION (happens every session, every agent):\n  Connect Claude / ChatGPT / any AI to the IW Continuity Bridge ONCE.\n  From then on the agent reads from SPINE MEMORY via MCP — never from the tool.\n  MCP + ADK + Loader + Normalizer strip the tool logic; SSOT means only the\n  Spine holds the data. Every agent sees the same truth. Memory persists.\n\nUNCONNECTED APP (the hard boundary):\n  If an agent (e.g. ChatGPT) asks for data from an app that is NOT connected:\n    • It must NOT connect to that tool directly.\n    • The path is: authorize the connection THROUGH IntegrateWise → data lands\n      in the Spine → the agent then fetches the state/data FROM the Spine.\n    • Until connected through IW, the Bridge returns connector_not_available\n      with a connect_url. The agent cannot route around the Spine to the tool.\n\nNET EFFECT:\n  M×N direct tool connections (every agent × every tool) collapse to 1:N.\n  Connect once. Your AI speaks first. The system never starts cold.\n```\n\nThis is the **Spine Abstraction Principle** — the moat. Full detail:\n`docs/ARCHITECTURE_AND_DATA_FLOW.md` (The Spine Abstraction Principle) and\n`docs/tech/MCP_ADK_ROUTING_SPINE_MEMORY_ARCHITECTURE.md` §9.\n\n---\n\n## Architecture Invariants (v1.1 — freeze these)\n\n```\nPRODUCT\n  Continuity Bridge = MCP + Gateway + Spine + Normalizer + Memory + Governance.\n  MCP is NOT the product. MCP is one interface inside the product.\n\nAUTHENTICATION\n  Identity:      Cloudflare Access (Google + GitHub SSO). No password.\n  Session:       Gateway D1 JWT (RS256).\n  Authorization: Gateway policy layer (plan tier + tenant isolation).\n  Supabase:      Fortress DATA record only. NEVER an auth path.\n\nDATA TIER (usage-gated, not chosen at signup)\n  Initial users: D1-edge only. No Supabase.\n  Supabase fortress is ALLOTTED based on usage — never provisioned at signup.\n\nTWIN ACCESS\n  Twin → continuity-tool-server → Continuity Bridge → Spine.\n  Never Twin → direct Spine. The Bridge is the policy boundary.\n  mcp.integratewise.ai is the EXTERNAL door (Claude, ChatGPT, 3rd-party).\n\nTOOL SURFACE\n  Canonical count: 20. (figma.* purged 2026-06-06.) Anything else is drift.\n\nADK\n  Stateless. Zero I/O. Capability resolution only. No tenant/data access\n  before Gateway authorization. Binds to DOMAIN_SPINE_CONFIG (12 dept × 11 industry).\n\nWRITE DISCIPLINE\n  Pipeline is the sole writer to Spine tables.\n  Agents propose; Triage Bot governs; Pipeline writes. No agent writes Spine.\n\nPUBLIC + INTERNAL DOCS (governed projections)\n  ALL docs — internal (engineering/product/ops) and public (docs.integratewise.ai)\n  — are governed PROJECTIONS of org_memory via the docs-publish flow\n  (propose → govern → promote → project → publish). integratewise-docs is an\n  OUTPUT repo — never hand-edited. INITIAL LOAD ONLY runs on a separate bulk queue\n  (not the live pipeline-process queue) for backpressure isolation; steady-state\n  uses the normal governed flow.\n  Classification decides the surface: internal → CF Access gated; public → open.\n  Every page traces to an approved org_memory entry.\n  See `docs/tech/DOCS_PUBLICATION_PIPELINE.md`.\n\nGOVERNANCE\n  Approval UI lives in L2 only — never in chat/voice (chat is not an audit trail).\n  No archive: content is active, superseded (with lineage), or rejected (with reason).\n\nHUMAN OPERATING MODEL (U-series — what the human does)\n  U1 Work · U2 Notice · U3 Reason · U4 Decide · U5 Act · U6 Remember.\n  Twin (U3 Reason) proposes only; U4 Decide approves/promotes; U5 Act runs the playbook.\n  See `docs/tech/CANONICAL_TAXONOMY.md`.\n\nTAXONOMY RULE (locked — four orthogonal paths, never collapse to one L-number)\n  S-series = System Architecture  (surfaces; \"where / what surface?\")\n             S0 Infrastructure · S1 Workspace · S2 Awareness · S3 Twin · S4 Library\n  U-series = Human Operating Model (cognitive stages; \"what am I doing?\")\n             U1 Work · U2 Notice · U3 Reason · U4 Decide · U5 Act · U6 Remember\n  V-series = View Path             (render modes; \"how is it displayed?\")\n  CZ-series = Customer Zero Path   (self-operation loop; \"how IW runs itself?\")\n  Approval = U4 Decide; UI on S2 Awareness; never in S3 Twin chat.\n  (Supersedes the H-series naming. The \"L1–L4\" UI surface table = S1–S4.)\n  Full definitions + cross-mapping: `docs/tech/CANONICAL_TAXONOMY.md`.\n\nCONTEXT (three distinct meanings — do not conflate)\n  Gateway context = request envelope (auth + tenant + policy).\n  Spine context   = operational data context.\n  Twin context    = reasoning context.\n```\n\n---\n\n## Canonical Document Set\n\n| Concern                                     | Document                                                       | Version  |\n| ------------------------------------------- | -------------------------------------------------------------- | -------- |\n| System-wide flow + layers (L0–L4)           | `docs/ARCHITECTURE_AND_DATA_FLOW.md`                           | 1.1      |\n| Read/write stack (MCP·ADK·Spine·Memory)     | `docs/tech/MCP_ADK_ROUTING_SPINE_MEMORY_ARCHITECTURE.md`       | 1.1      |\n| Deployment + endpoints + 20-tool surface    | `docs/tech/CONTINUITY_BRIDGE_DEPLOYMENT_STATUS.md`             | 1.1      |\n| Docs publication pipeline (internal+public) | `docs/tech/DOCS_PUBLICATION_PIPELINE.md`                       | 1.1      |\n| Canonical taxonomy (S/U/V/CZ paths)         | `docs/tech/CANONICAL_TAXONOMY.md`                              | 1.0      |\n| Auth migration (complete)                   | `docs/tech/AUTH_MIGRATION_DESIGN.md`                           | COMPLETE |\n| Product architecture + requirements         | `docs/tech/INTEGRATEWISE_PRODUCT_ARCHITECTURE.md`              | —        |\n| Frontend layer map (views→routes→APIs)      | `docs/FRONTEND_LAYER_MAP.md`                                   | 1.0      |\n| Decision log                                | `ARCHITECTURE_DECISIONS.md` + `~/.iw-memory/memory/decisions/` | —        |\n\n---\n\n## Drift Watchlist (known stale references to fix on touch)\n\n```\n• \"16 tools\" / \"18 tools\"            → 20\n• \"Supabase auth\" / Supabase login   → Cloudflare Access + Gateway JWT\n• \"Twin reads via MCP\"               → Twin reads via Continuity Bridge (MCP = external door)\n• figma.* MCP namespace              → removed (purged 2026-06-06)\n• integratewise-docs/ copies         → align via Triage promotion, not direct edit\n```\n\n---\n\n_Current Version: 1.1 · Auth: Cloudflare · Tool Surface: 20 · Bridge: Canonical ·\nTwin Access: Bridge Only · Status: Current Source of Truth._\n"}