Selected adapterSYNTHETICsynthetic
AuthorityNON PRODUCTION SAMPLESynthetic development data · synthetic_social_research_v1
WritesTransientTRANSIENT_COMMANDS
ProductionBlockedFail-closed source policy
synthetic_social_research_v1Deterministic fixture projection with process-local command overlays; replace by configuration without changing UI contracts.

Market-data shadow source

Compare canonical instruments against synthetic, public-validation or licensed normalized data without changing customer routes.

SelectionMARKET_SHADOW_SOURCE=synthetic | yahoo-validation | licensed-pipeline
Comparison/api/v1/ops/market-shadow/{instrumentId}
Cutover ruleExact approved licensed match only; public validation is permanently ineligible

Identity continuity source

Account linking, device sessions, legacy-session exchange and entitlement shadow comparison share one fail-closed port.

SelectionIDENTITY_SOURCE=synthetic | http-pipeline
Automatic linkingDisabled until exact provider-subject and legacy-account evidence is accepted

Swap interface

The UI consumes social-research-data.v1 in every mode; there is no fixture-specific branch in customer routes.

SelectorAdapterReadsCommandsRequired configuration
syntheticFixture overlayDeterministic snapshotProcess-local, idempotentNone; production blocked
postgresControl planeCanonical SQL projectionTransaction + receipt + outboxDATABASE_URL and migrations
http-pipelineTranslator / licensedValidated remote snapshotForwarded with idempotency keyPipeline URL, token and source ID

Current projection

Generated 31/10/2026, 10:34:49 am for product_stockedge_shadow.

Pipeline implementation contract

A future StockEdge translator, event-backed read model or licensed vendor needs only these two operations.

SnapshotGET /v1/social-research/snapshot?productId=&viewerUserId=
CommandPOST /v1/social-research/commands with Idempotency-Key
SelectionSOCIAL_DATA_SOURCE=synthetic | postgres | http-pipeline