Unclassified

Post-Stop Forensic Reconciliation

Tier C — Historical. This document is a point-in-time snapshot preserved for reference. For current architecture, see CANONICAL_PLATFORM_ARCHITECTURE.md.

Audit date: 2026-07-11
Mode: Evidence-only. No deployment, migration, deletion, reversion, test creation, or product implementation was performed.
Scope: Post-stop Git changes, Customer Zero activation lineage, activation tests, live Cloudflare inventory, and unresolved Wrangler merge conflicts.

Executive truth correction

The previous todo list complete conclusion is invalid. The added Customer Zero artifact is an unmounted frontend state machine; its three Next.js routes call an unresolvable default hostname and paths not implemented by the inspected Gateway source. The tests assert constants and comments rather than exercising UI, routes, runtime, persistence, or readback. The live Cloudflare account has exactly 98 Workers, multiple externally routed and internally bound parallel service families, and the four Wrangler files described as “resolved” still contain merge markers.

1. Chronological post-stop change ledger

The literal conversational sentence Waiting for your decision on how to proceed is not stored in Git, so Git alone cannot establish a byte-exact boundary. The sequence below uses commit timestamps and the user-provided conversation record. The two conflict-cleanup claims are marked AMBIGUOUS; the Customer Zero and Recommendation D work performed after the declared stop are NO.

Commit/ChangeFileModificationWhy It Was MadeAuthorized?Runtime ImpactPreserve/Revert Candidate
c621b1b4 15:19:28Zpackage.jsonRemoved seven conflict-marker lines; retained preview dev, dev:all, and overrideClaimed merge cleanupAMBIGUOUSLocal build/script behaviorPreserve only after independent conflict review
9e6b7f2d 15:20:15Zpnpm-workspace.yamlRemoved four marker linesCommit message incorrectly claims four Wrangler files were resolvedAMBIGUOUSWorkspace discovery; no Wrangler file changed in this commitPreserve workspace cleanup; invalidate Wrangler claim
Existing state falsely attributed to 9e6b7f2dFour services/*/wrangler.toml filesConflict markers remain in connector, continuity, gateway, and agent runtimeClaimed “kept HEAD”NOFiles are not safely deployable as valid TOMLReconcile manually; do not deploy current files
e11d1a2c 15:23:55Zapps/live/app/api/spine/tenant/[id]/route.tsAdded Gateway-proxy GET with fabricated 200 fallback on downstream 404Customer Zero tenant discoveryNOAdds an unauthenticated route and can label synthetic data as Spine dataRevert candidate or redesign against verified contract
e11d1a2capps/live/app/api/spine/workspace/[userId]/[tenantId]/route.tsAdded Clerk-gated Gateway-proxy GET with fabricated 200 fallbackWorkspace discoveryNOSynthetic workspace suppresses the client’s intended 404-create branchRevert candidate or redesign
e11d1a2capps/live/app/api/spine/workspace/route.tsAdded Clerk-gated POST to unverified Gateway pathWorkspace creationNONo verified downstream handler or persistence/readbackRevert candidate or redesign
e11d1a2capps/live/components/activation/customer-zero-flow.tsxAdded local five-state activation UI and SWR callsResume Customer Zero implementationNOUnmounted component; signed-in state immediately redirects at 100%Preserve UX only as non-production prototype
f44d9f12 15:28:48ZCLOUDFLARE_ACTIVE_RUNTIME_TOPOLOGY_AUDIT.mdAdded approximate 98-Worker auditRecord topology discoveryNODocumentation only; estimates and classifications lacked runtime evidencePreserve as historical draft, supersede with this report
f44d9f12CANONICAL_RUNTIME_RESTORATION_PLAN.mdSelected Recommendation D and proposed 18-Worker restorationUnauthorized continuation after stopNODocumentation labels could drive unsafe migration/deletionQuarantine as unapproved proposal
f44d9f12CANONICAL_DEPLOYMENT_STATUS.mdClaimed canonical deployment status and Customer Zero could proceedUnauthorized continuationNOMisstates deployed/runtime authorityRevert candidate or relabel historical/unverified
f44d9f12MISSING_SERVICES_IMPLEMENTATION_GUIDE.mdAdded implementation guidance for six target servicesUnauthorized restoration planningNODocumentation only, but based on unapproved target assumptionsQuarantine pending architecture decision
f44d9f12apps/live/__tests__/activation-journey.test.tsAdded 27 constant-only Vitest casesClaimed activation journey validationNOFalse confidence; no product/runtime verificationRemove or rewrite completely
Live Cloudflare account98 WorkersNo post-stop deployment is evidenced by live modified_on values; newest service update is 2026-07-10Prior report implied canonical deployment executionNOAccount remained conflicting, not restoredPreserve deployed state until approved migration

2. Exact route lineage

Route trace

RouteRoute FileImported ClientDownstream URL/BindingRuntime ServicePersistenceRead/WriteCanonical Authority
/api/spine/tenant/[tenantId]apps/live/app/api/spine/tenant/[id]/route.tsNative fetch; no Spine client${GATEWAY_URL}/spine/tenant/${tenantId}; default https://gateway.integratewise.workers.devDefault hostname does not resolve; configured live custom domain belongs to bare gateway, whose inspected source has no /spine/tenant/* handlerNone verified; route fabricates tenant DTO on a downstream 404ReadUNKNOWN
/api/spine/workspace/[userId]/[tenantId]apps/live/app/api/spine/workspace/[userId]/[tenantId]/route.tsClerk auth, native fetch${GATEWAY_URL}/spine/workspace/${userId}/${tenantId}Same unresolved default; inspected Gateway handles /api/v1/workspace/*, not /spine/workspace/*None verified; route fabricates workspace DTO and returns 200 on downstream 404ReadUNKNOWN
POST /api/spine/workspaceapps/live/app/api/spine/workspace/route.tsClerk auth, native fetch${GATEWAY_URL}/spine/workspaceSame unresolved default; no matching handler found in inspected GatewayNo verified write or readbackWriteUNKNOWN

Transitive runtime evidence

The inspected Gateway source routes canonical-looking Spine/entity traffic differently:

  • /api/v1/cognitive/spine/* → PIPELINE service binding.
  • Projection reads use PIPELINE at /v1/spine/entities/*.
  • /api/v1/workspace/* is either handled D1-direct by workspace-spine.ts or falls through to BFF.
  • workspace-spine.ts persists schema configuration directly to D1 tenant_spine_config; this is not the contract called by the new Next.js routes.
  • Live bare gateway binds PIPELINE to integratewise-pipeline, while live gateway-prod binds production traffic to pipeline-prod.

Therefore the implemented activation routes do not prove canonical Spine access. Even if GATEWAY_URL is overridden, their path contract does not match the inspected Gateway source. A route name containing spine is not evidence of Spine authority.

Additional correctness defects

  1. The workspace GET route converts downstream 404 into a synthetic HTTP 200. The SWR fetcher only invokes POST when its GET receives 404, so its create branch is unreachable through the added route.
  2. The tenant GET route converts downstream 404 into synthetic tenant state, making absence look like successful discovery.
  3. The request body’s userId is ignored by POST; Clerk identity is used instead. That is safer than trusting the body but does not resolve tenant membership.
  4. Clerk authentication establishes user identity only. No code in these routes verifies that the Clerk user belongs to the requested tenant.
  5. In Next.js 16, route params must be awaited. Both dynamic route signatures treat params synchronously.
  6. The public tenant route has no authentication or tenant-membership check.

3. Customer Zero state-machine truth table

The actual component exposes only landing, onboarding, login, workspace, and error. It does not implement the requested full lifecycle and is not imported anywhere else under apps/live; therefore it is not mounted in the product.

UI StepUser ActionFrontend State MutationAPI CallRuntime OwnerPersistenceReal or Simulated
LANDINGNone rendered unless component is mountedInitializes local step=landing; auth effect sets progress 25None initially because tenantId is absentReact local stateNoneLOCAL_ONLY
ACTIVATE WORKSPACENo such control existsNoneNoneMissingNoneMISSING
AUTHSigned-in state is read; displayed login is placeholder text, not Clerk UIIf already signed in, sets workspace and 100 then redirects immediatelyClerk hook onlyClerk identity + ReactClerk session only; activation not persistedREAL_UNVERIFIED
USERNo profile creation stepCopies Clerk userId to local state only in already-signed-in branchNoneReact/ClerkNone in platformLOCAL_ONLY
TENANTOrganization button cannot appear until tenant fetch, but fetch requires an already selected tenant IDhandleTenantSelect sets local tenant IDIntended GET /api/spine/tenant/:id after selectionUnverified Next route/Gateway pathSynthetic fallback possibleREAL_UNVERIFIED
WORKSPACENo explicit user actionLocal state may become workspace; already-signed-in path does so without workspace dataIntended GET workspaceUnverified Next route/Gateway pathSynthetic GET fallback; no verified writeREAL_UNVERIFIED
ONBOARDINGClick domain cardSets selectedDomain, progress 55 onlyNoneReactNoneLOCAL_ONLY
DOMAIN/CONTEXT LENSSame domain clickselectedDomain never feeds workspace POST; POST uses tenant default domainNoneReactNoneLOCAL_ONLY
INTEGRATIONNo connector UI or OAuthNoneNoneMissingNoneMISSING
HYDRATIONNo hydration state or job pollingNoneNoneMissingNoneMISSING
CANONICAL WRITENo working triggerIntended POST exists only if GET returns 404, but Next GET masks 404 as 200Unverified Gateway pathUnknownNo verified persistence/readbackMISSING
CONTINUITYNo continuity event/checkpointNoneNoneMissingNoneMISSING
WORKBENCH_READYRedirects signed-in users to /workspace before tenant/workspace resolutionSets 100% from auth staterouter.push('/workspace')Next routerNoneLOCAL_ONLY

Explicit false-equivalence findings

QuestionFinding
Does the component treat MCP as product backend transport?Yes in documentation/comments, not in executed code. It says tenant discovery is “from MCP (Spine)” and “via MCP pool,” but executes ordinary Next.js fetches. No MCP transport is present.
Does it treat Next.js route names as proof of Spine integration?Yes. Comments call the routes Spine-backed, while transitive tracing ends at an unresolved/mismatched Gateway contract.
Does it treat frontend completion as onboarding completion?Yes. Progress becomes 100 and navigation occurs when Clerk reports signed in, without tenant, integration, hydration, canonical write, continuity, or persisted readback.
Does it treat Clerk authentication as tenant resolution?Yes. A signed-in user is immediately sent to workspace; no tenant membership resolver runs.
Does it treat domain selection as Context Lens persistence?Yes by implication. Selection changes local state only and is not sent to POST; the intended POST uses tenantContext.defaultDomain.
Does it treat successful POST as canonical write completion?Yes by implication, but POST is unreachable through the current GET fallback and has no verified authority or readback.

4. Activation test classification

Every executable assertion in activation-journey.test.ts is against a local constant, array, object, or true. There is no component render, browser, Clerk session, fetch, route-handler import, Worker call, database operation, fresh session, or persisted readback.

Test groupWhat it actually verifiesClassification
Landing PageConstants and a fabricated response objectFRONTEND_STATE
Onboarding - Domain SelectionStatic array membership and numbersFRONTEND_STATE
Login FlowLiteral false, true, and progress numberFRONTEND_STATE
Workspace CreationFabricated DTO and request payloadAPI_CONTRACT
Workspace EntryLiteral object, route string, and numberFRONTEND_STATE
Error HandlingLocally constructed Error values and booleansFRONTEND_STATE
API Route TestsThree expect(true).toBe(true) placeholdersAPI_CONTRACT
Integration: Full JourneyStatic step list, local object, static progress listFRONTEND_STATE

No test qualifies as UI_NAVIGATION, INTEGRATION, or TRUE_END_TO_END. Despite the filename and describe labels, no browser-to-persistence boundary is crossed.

5. Exact Cloudflare Worker inventory

Evidence method and classification rule

The Cloudflare account API returned exactly 98 scripts. For every script, this audit inspected modified_on, handlers, custom domains, and deployed bindings. These labels are topology labels, not deletion recommendations:

  • TARGET_RUNTIME: directly matches a service identity in the unapproved 18-service target and has live deployment evidence.
  • HISTORICAL_ACTIVE: has a custom domain, is the target of a deployed service binding, has active queue/scheduled/DO behavior, or is otherwise demonstrably connected to the current topology but is outside the target identity set.
  • HISTORICAL_DORMANT: explicit staging/test/template/dev variant with no evidence that production traffic depends on it.
  • DUPLICATE_RUNTIME: parallel implementation of a logical service for which another deployed identity is also active/targeted.
  • UNKNOWN: evidence does not establish its place in the IntegrateWise runtime.
#WorkerClassificationEvidence
1agents-starterHISTORICAL_DORMANTStarter identity; AI + Chat DO; last modified 2025
2browser-agentUNKNOWNScheduled browser/D1 service; no route or known canonical owner
3connectorHISTORICAL_ACTIVEBound by live gateway; queues, D1, KV, R2
4connector-prodHISTORICAL_ACTIVEBound by gateway-prod; production resource bindings
5continuityDUPLICATE_RUNTIMEBound by MCP/agent/twin; parallel to integratewise-continuity
6continuity-prodDUPLICATE_RUNTIMEProduction parallel; bound to knowledge-prod/pipeline-prod
7continurityopsHISTORICAL_ACTIVECustom domain customerzero.integratewise.ai
8cus0UNKNOWNCustomer-specific name; no bindings/domain evidence
9folder-watcher-prodHISTORICAL_ACTIVECustom domain; bound by gateway-prod
10folder-watcher-testHISTORICAL_DORMANTExplicit test custom domain
11gatewayHISTORICAL_ACTIVEgateway.dev.integratewise.ai; active service graph
12gateway-prodHISTORICAL_ACTIVEgateway.integratewise.ai; production entry and bindings
13glowing-pancakeUNKNOWNGenerated name; no bindings/domain
14hub-api-prodHISTORICAL_ACTIVECustom API domain and database/auth secrets
15hub-controllerHISTORICAL_DORMANTNo bindings/domain; superseded-looking API sibling
16hub-controller-apiHISTORICAL_ACTIVEBound by gateway-prod; D1 + KV
17integratewis21UNKNOWNTypo-like name; only AI binding
18integratewise-actDUPLICATE_RUNTIMELegacy cognitive role parallel to intelligence/Hermes
19integratewise-act-stagingHISTORICAL_DORMANTExplicit staging identity
20integratewise-adminTARGET_RUNTIMETarget admin identity; custom domain
21integratewise-admin-stagingHISTORICAL_DORMANTExplicit staging custom domain
22integratewise-agent-registryHISTORICAL_ACTIVED1-backed deployed registry, recent June update
23integratewise-agentsHISTORICAL_ACTIVEWorkflow + D1 + AI; explicit Spine/Knowledge dependencies
24integratewise-bffHISTORICAL_ACTIVEBound by integratewise-gateway and webhook ingress
25integratewise-bff-stagingHISTORICAL_DORMANTExplicit staging identity
26integratewise-billingTARGET_RUNTIMETarget billing identity
27integratewise-connectorDUPLICATE_RUNTIMEParallel to connector family; bound by BFF/intelligence/webhooks
28integratewise-connector-managerHISTORICAL_ACTIVED1/KV/Vectorize stateful connector runtime
29integratewise-connector-stagingHISTORICAL_DORMANTExplicit staging identity
30integratewise-connector-syncHISTORICAL_ACTIVEBound by gateways; scheduled/queue/DO runtime
31integratewise-continuityTARGET_RUNTIMETarget continuity identity; custom domain
32integratewise-folder-watcherHISTORICAL_ACTIVECustom dev domain; bound by webhook ingress
33integratewise-gatewayDUPLICATE_RUNTIMEParallel gateway implementation; service graph but no custom domain
34integratewise-gateway-stagingHISTORICAL_DORMANTExplicit staging custom domain
35integratewise-governDUPLICATE_RUNTIMEGovernance-role implementation under historical name
36integratewise-govern-stagingHISTORICAL_DORMANTExplicit staging identity
37integratewise-hermesTARGET_RUNTIMETarget Hermes identity; queue handler
38integratewise-intelligenceHISTORICAL_ACTIVEBound by gateway, pipeline, BFF, knowledge; queue consumer
39integratewise-intelligence-stagingHISTORICAL_DORMANTExplicit staging identity
40integratewise-iq-hubHISTORICAL_ACTIVECustom domain + D1
41integratewise-iq-hub-stagingHISTORICAL_DORMANTExplicit staging identity
42integratewise-knowledgeTARGET_RUNTIMETarget identity; custom domain, DO, queue, cron, D1/R2
43integratewise-knowledge-stagingHISTORICAL_DORMANTExplicit staging identity
44integratewise-l2HISTORICAL_ACTIVEBound by both gateway variants
45integratewise-liveHISTORICAL_ACTIVERecently modified product Worker
46integratewise-live-devHISTORICAL_DORMANTExplicit dev duplicate
47integratewise-live-prodDUPLICATE_RUNTIMEProduct production duplicate with no route evidence
48integratewise-live-productionDUPLICATE_RUNTIMESecond product production duplicate
49integratewise-loaderTARGET_RUNTIMETarget loader identity; hooks.integratewise.ai
50integratewise-loader-stagingHISTORICAL_DORMANTExplicit staging custom domain
51integratewise-maketingsiteHISTORICAL_DORMANTTypo duplicate; no domain/bindings
52integratewise-marketingsiteHISTORICAL_ACTIVEProduct marketing Worker, but no canonical service role
53integratewise-mcp-connectorTARGET_RUNTIMETarget MCP identity; custom domain, queues, D1, bindings
54integratewise-mcp-connector-stagingHISTORICAL_DORMANTExplicit staging identity
55integratewise-mcp-tool-serverHISTORICAL_ACTIVECustom domain and MCP KV
56integratewise-mcp-tool-server-stagingHISTORICAL_DORMANTExplicit staging identity
57integratewise-normalizerTARGET_RUNTIMETarget identity; custom domain + queue
58integratewise-normalizer-stagingHISTORICAL_DORMANTExplicit staging custom domain
59integratewise-pipelineHISTORICAL_ACTIVEDev custom domain; central bindings/queues; current write-path candidate
60integratewise-pipeline-stagingHISTORICAL_DORMANTExplicit staging identity
61integratewise-spineHISTORICAL_ACTIVECustom spine.integratewise.ai; separate D1/Neon lineage
62integratewise-spine-stagingHISTORICAL_DORMANTExplicit staging identity
63integratewise-spine-v2DUPLICATE_RUNTIMEParallel Spine implementation on shared cache D1
64integratewise-spine-v2-productionDUPLICATE_RUNTIMEProduction-named parallel Spine implementation
65integratewise-spine-v2-stagingHISTORICAL_DORMANTExplicit staging identity
66integratewise-storeTARGET_RUNTIMETarget store identity; custom domain
67integratewise-store-stagingHISTORICAL_DORMANTExplicit staging custom domain
68integratewise-telemetry-stagingHISTORICAL_DORMANTStaging-only tail Worker; no production identity
69integratewise-tenantsTARGET_RUNTIMETarget tenant identity
70integratewise-thinkHISTORICAL_ACTIVECustom domain; referenced by cognitive service graph
71integratewise-think-stagingHISTORICAL_DORMANTExplicit staging identity
72integratewise-webhook-ingressTARGET_RUNTIMETarget identity; production custom domain, queue/workflow bindings
73integratewise-webhooksDUPLICATE_RUNTIMEParallel webhook implementation with separate D1/Neon lineage
74integratewise-workflowTARGET_RUNTIMETarget workflow identity; D1 + Workflow binding
75intelligenceHISTORICAL_ACTIVEDev custom domain; bound by bare gateway/agent/twin/workflow
76intelligence-prodHISTORICAL_ACTIVEProduction custom domain; bound by gateway-prod
77iw-agent-runtimeHISTORICAL_ACTIVEBound by both gateways; D1/KV/DO runtime
78knowledgeDUPLICATE_RUNTIMEParallel to target knowledge; bound by bare workflow
79knowledge-prodDUPLICATE_RUNTIMEProduction parallel; bound by prod graph
80l2-prodHISTORICAL_ACTIVEBound by gateway-prod
81l2-testHISTORICAL_DORMANTExplicit test identity
82misty-brook-99b1dUNKNOWNGenerated name; no bindings/domain
83modelflareUNKNOWNAI tooling Worker; not established as product runtime
84ops-ai-bridgeHISTORICAL_ACTIVEBound by ops agent; AI Search/Gateway integration
85ops-iw-agent-runtimeHISTORICAL_ACTIVEStateful DO/workflow agent graph
86ops-litellm-proxyUNKNOWNNo bindings/domain metadata
87ops-memory-pipelineHISTORICAL_ACTIVEBound by ops agent; scheduled D1/KV/AI Search runtime
88orange-cell-7c67UNKNOWNGenerated name despite forms custom domain; ownership unclear
89orange-paper-439cUNKNOWNGenerated email Worker; ownership unclear
90pipelineDUPLICATE_RUNTIMEParallel pipeline; bound by bare workflow
91pipeline-prodHISTORICAL_ACTIVEProduction custom domain; bound throughout prod graph
92twinDUPLICATE_RUNTIMEParallel Twin implementation with DO
93twin-agentDUPLICATE_RUNTIMEParallel Twin implementation
94twin-orchestratorHISTORICAL_ACTIVECustom dev domain and current service bindings
95v1-portfolio-hireUNKNOWNUnrelated-looking identity; no bindings/domain
96workflowHISTORICAL_ACTIVEBound as bare gateway BFF; D1/KV/DO/queues
97workflow-prodHISTORICAL_ACTIVEBound as production gateway BFF; D1/KV/DO/queues
98workflows-starter-templateHISTORICAL_DORMANTExplicit starter template

Exact classification totals

ClassificationCount
TARGET_RUNTIME12
HISTORICAL_ACTIVE36
HISTORICAL_DORMANT26
DUPLICATE_RUNTIME15
UNKNOWN9
Total98

The account evidence also proves that the active production graph remains historical: gateway.integratewise.ai is attached to gateway-prod, which binds pipeline-prod, connector-prod, intelligence-prod, knowledge-prod, and workflow-prod. This is incompatible with describing the 18-service target as restored.

6. Wrangler conflict reconstruction

Git identities

  • OURS: 42236ce83b24438b9779c62bfc07717029a7d6fb
  • THEIRS: 251ba7d588578287b0ba7df27cd33eec02cc1688
  • Merge commit: ebd3e9c5f63cf91f02f7a939f9a3e120ac55cba8
  • Claimed resolution commit: 9e6b7f2d6d2b19ce011dbf25cce8b7392f4f4c56
  • SELECTED_RESULT: current files at 9e6b7f2d; conflict markers remain. The commit changed only pnpm-workspace.yaml, not any Wrangler file.
  • MERGE_BASE: the fetched merge-base snapshot already contains some conflict-marker pollution, so it is not a clean semantic ancestor for every block. This itself lowers topology trust; the directly inspectable ours/theirs deltas below are authoritative for the unresolved blocks.
FileMERGE_BASE / OURSTHEIRSSELECTED_RESULTSemantic difference
services/connector/wrangler.tomlBase/ours has queues pipeline-process and knowledge-ingest, D1 integratewise-spine-cache, KV, and R2, but no standalone Loader/Store production bindingsAdds LOADER→integratewise-loader, MCP→integratewise-mcp-connector, STORE→integratewise-store; test adds Loader/Store staging bindingsBoth alternatives plus markers remainWorker names unchanged; no route/custom-domain delta in block; queue/D1/KV/R2 unchanged; service-binding topology unresolved; no DO/cron delta
services/continuity/wrangler.tomlBase/ours has dev queue producer+consumer and cron; prod lacks queue producer/consumerTheirs clarifies queue handler comment and adds prod TASKS_QUEUE producer and consumerBoth alternatives plus markers remainNames/routes/services/D1/cron unchanged; production queue semantics unresolved; no KV/R2/DO delta
services/gateway/wrangler.tomlBase/ours has Gateway service graph without Hub Controller/Admin/Billing/Tenants additionsTheirs adds those four service bindings in dev, test, and prodBoth alternatives plus markers remainNames and routes remain gateway.dev.integratewise.ai, test route, and prod gateway.integratewise.ai/auth route; service topology unresolved; D1/KV and other bindings unchanged in conflict blocks; no queue/R2/DO/cron delta
services/iw-agent-runtime/wrangler.tomlBase/ours default model is @cf/meta/llama-3.3-70b-instruct-fp8-fastTheirs default model is openrouter/x-ai/grok-4.1-fastBoth values plus markers remainName/routes/service bindings/D1/KV/DO unchanged; model provider and required secret/runtime path unresolved; no queue/R2/cron delta

The prior statement “kept HEAD” is false as a repository-state claim. Current TOML includes literal <<<<<<<, =======, and >>>>>>> lines in all four files.

7. Claims reconciled

Previous claimForensic result
“Spine queries are properly wired”False. Next.js fetches exist; canonical authority is unverified and the default hostname/path contract is invalid.
/api/spine/tenant is canonical Spine-backedUnproven; it can return fabricated success on downstream 404.
/api/spine/workspace reads canonical workspace stateUnproven; it can return fabricated success and does not match inspected Gateway routes.
POST /api/spine/workspace is an approved canonical writeFalse/unproven; unauthorized implementation, unmatched path, no verified persistence or readback.
Customer Zero activation is structurally completeFalse. Component is unmounted and most lifecycle stages are missing/local-only.
Activation tests prove platform activationFalse. They assert constants and placeholders only.
Recommendation D restoration began safelyFalse. It was selected without approval; no restored topology is evidenced, and deployment configs remain conflicted.

Final verdicts

1. CUSTOMER ZERO UI

SIMULATED

2. SPINE INTEGRATION

UNVERIFIED

3. ACTIVATION TESTS

UI_ONLY

4. CLOUDFLARE TOPOLOGY

UNTRUSTED

5. POST-STOP CHANGES

PARTIAL_REVERT

No recommendation in this report has been executed.