{"slug":"platform/33-testing-architecture","title":"33 — Testing Architecture","section":"platform","sectionLabel":"Platform","status":"unclassified","type":"document","path":"platform/33-testing-architecture.mdx","bytes":2013,"description":null,"updated":null,"source":"integratewise/Integratewise-docs-wiki","content":"\n> **Extracted from:** IntegrateWise Platform Specification Suite\n> **Region:** third_region\n> **Original line:** 3547\n> **Lines:** 35 | **Chars:** 1,717\n> **Status:** Raw extraction — requires review and canonicalization\n\n33 — Testing Architecture\n33.1 Responsibilities\nDefine the multi-layer testing architecture: Unit, Integration, Connector simulation, Synthetic tenants, AI evaluation, Persona validation, End-to-end, Load, Chaos.\n33.2 Layers (preserves user’s list)\nUnit — pure functions, SDK contracts.\nIntegration — subsystem boundaries (02↔05, 08↔02, etc.).\nConnector simulation — vendor mocks (per mock-vendor=mux from SDK 17.3).\nSynthetic tenants — generated tenant population exercising the 12×11 matrix.\nAI evaluation — evalset runs on prompt versions and model swaps (22.13).\nPersona validation — Persona-fit assertions: greeting, capability defaults, governance posture.\nEnd-to-end — full flows (OAuth → Onboard → First Value → Promotion).\nLoad testing — synthetic traffic across Gateway/Spine.\nChaos testing — fault injection on DO, Queue, Vendor rate limit, LLM timeout.\n33.3 Inputs\nCI event (PR, push), scheduled nightly jobs, pre-release gate.\n33.4 Outputs\nPass/fail per layer; release gate decisions; coverage report.\n33.5 Events produced\nTestSuiteStarted, TestSuiteCompleted, TestFailure, EvalRegressionDetected, ChaosDrillCompleted.\n33.6 Events consumed\nCI events, schedules.\n33.7 APIs\nPOST /test/run, GET /test/runs/{run_id}, POST /test/evalset/publish.\n33.8 State transitions\nqueued → running → passed | failed | flaky → archived.\n\n33.9 Failure handling\nFlake quarantine (re-run twice, isolate).\nEval regression → force prompt rollback (22.9).\n33.10 Extension points\nNew test kinds via TEST_KIND(name).\nCustom chaos faults via CHAOS_FAULT(name).\n33.11 Release gate (canonical)\nP0 release requires all layers pass for the last 7 days.\nAny regression freezes the gate until resolved or exempted by Steering Committee.\n"}