Skip to main content
  1. System Design Components/

Archetype State, Actors, Failure, and Scale Reference

Archetype State, Actors, Failure, and Scale Reference #

Use this as the compact reference once you have identified an archetype.

The goal is to answer five questions quickly:

  1. what states exist?
  2. which states are source of truth?
  3. who acts on those states?
  4. what fails by default?
  5. what gets hot first?

The failure and scale vocabulary below is normalized to match the repo’s standard wording as closely as possible.


Product Archetypes #

ArchetypeCanonical StatesSource-of-Truth StatesActorsDefault Failure VocabularyDefault Scale Hotspots
A01 Current-Value EntityXStateXStateuser, API/service, cacheretry ambiguity on write, concurrent overwrite race, stale read after update, cache invalidation laghot entity read skew, write contention on hot entity, cache invalidation churn
A02 Relation / EdgeXRelationState, XCountViewXRelationStateuser, API/service, projectorduplicate edge creation on retry, add/remove race, count projection lag, stale relation list cachecelebrity skew, hot relation partition, hot count key, hot relation-list pages
A03 Append-Only Child ObjectXChildState, XThreadViewXChildStateuser, producer, moderation service, projectorduplicate child creation on retry, projection/search lag after append, delete/edit race, moderation/removal lag, concurrent edit/delete racehot parent append rate, hot thread reads, long history scans
A04 Workflow / Lifecycle StateXWorkflowStateXWorkflowStateuser, operator, workflow service, side-effect workerretry of same transition after commit, invalid transition from stale state, competing transitions, crash after transition but before side effect, stale status readhot workflow transition rows, expensive status polling, side-effect worker backlog
A05 Derived ProjectionXSourceState, XViewXSourceStatesource writer, projector, readerstale projection, missing entry, duplicate entry, tombstone not propagated, expensive reindex after schema change, stale ranking after source updatefanout on write, projection lag, expensive ranking/recompute, query fanout across shards, rebuild cost
A06 Inventory / Constrained ResourceXInventoryStateXInventoryStateuser, allocator/service, release pathoversell, double allocate, lost release, stale availability readhot inventory key, concentrated contention on scarce resources, fragmented capacity
A07 Critical Transaction ProcessXRequestState, XTransactionState, XMovementStateXTransactionState, XMovementStateuser, transaction service, external provider, reconcilerduplicate commit, invalid transition, crash after commit before side effect, retry ambiguity against provider, reconciliation driftsynchronous commit-path latency, external provider bottleneck, retry amplification, idempotency-store hotspot
A08 Time-Bounded Exclusive AllocationXHoldState, XBookingState, XInventoryStateXHoldState, XInventoryStateuser, booking service, expiry workerduplicate hold, expired hold not released, confirm-after-expiry race, cancel/confirm race, stale availability after hold expiryhot hold key, hold storms, expiry scan pressure, hold-store contention
A09 Future Constraint + Claimable RunXScheduleState, XRunnableJobState, XExecutionState, XHistoryViewXScheduleState, XRunnableJobStateuser, scheduler, due scanner, workerdue item materialized twice, due item never materialized, job claimed twice, run executed but result not recordeddue-time burstiness, due bucket/index hotspot, queue backlog, worker burst pressure
A10 Frontier + Claimable RunXFrontierState, XBatchRunState, XCheckpointState, XProgressViewXFrontierState, XCheckpointStateoperator, scanner, workerfrontier advanced too far, same frontier item claimed twice, progress not advanced after success, uncovered work skippedfrontier hot row, batch-claim bursts, skewed range/work distribution, checkpoint lag
A11 Control Plane + Local SnapshotXConfigState, XSnapshotState, XAppliedVersionStateXConfigStateadmin, control plane, agent/evaluator, publisherstale snapshot, out-of-order apply, partial rollout, old config still serving locallyrollout fanout to many agents, snapshot distribution bursts, hot tenant config, snapshot size
A12 Matching / AssignmentXRequestState, XAssignmentState, XExecutionStateXRequestState, XAssignmentStateuser, matcher, candidate, executorduplicate assignment, stale candidate accepted, timeout/reassignment race, assignment accepted after expirycandidate lookup breadth, hot assignment pool, reassignment churn, timeout worker load
A13 Ranking / LeaderboardXSubmissionState, XBestState, XAggregateState, XLeaderboardViewXSubmissionState, XBestState, XAggregateStateuser, producer, ranker, readerduplicate submission, stale rank, incorrect top-K, ranking lag after score updateglobal aggregation, hot score updates, hot window state, ranking store saturation
A14 Realtime FanoutXMessageState, XDeliveryState, XRecentWindowViewXMessageStateuser, session/websocket service, fanout workermissed delivery, duplicate replay, out-of-order fanout, reconnect replay gapfanout explosion, websocket fleet pressure, egress bandwidth, hot room/channel
A15 Search-First ProductXListingState, XIndexEntryState, XSearchViewXListingStateuser, writer, indexer, search servicestale index, missing result, tombstone lag, broad query inconsistency during reindexhot query terms, broad query fanout, index freshness pressure, search shard saturation
A16 Auction / Competitive WindowXAuctionState, XBidState, XBestBidState, XWinnerState, XHistoryViewXAuctionState, XBidState, XBestBidStatebidder, auction service, closeraccepted late bid, wrong winner, duplicate close, stale current-best read near closeburst bids near close, hot auction row, current-best contention, append hotspot for hot auction
A17 Shared Mutable SubjectXOperationLog, XSubjectState, XVersionState, XSnapshotStateXSubjectState, XOperationLogcollaborator, coordinator, session service, projectorlost concurrent edit, duplicate op, out-of-order apply, divergence, stale coordinator snapshothot-subject coordinator, high per-subject op rate, replay cost, subscriber fanout
A18 Versioned Namespace + Immutable Content UnitsXNamespaceState, XVersionState, XBlobState, XSyncCursorState, XConflictStateXNamespaceState, XVersionState, XBlobStateuser, sync client, metadata service, blob store, conflict resolvernamespace CAS race, sync cursor treated as source of truth, content uploaded but namespace not advanced, reconnect storm, conflict not materializednamespace metadata contention, reconnect/sync storms, popular chunk read amplification, dedup check pressure
A19 Catalog + Scoped RelationXDefinitionState, ParentXRelationState, XViewXDefinitionState, ParentXRelationStateadmin, scoped attach/detach service, projector, readerduplicate attachment, missing detach, stale scoped view, aggregate count drifthot scoped relation partition, attach/detach churn, aggregate maintenance pressure, projection lag

Infrastructure Archetypes #

ArchetypeCanonical StatesSource-of-Truth StatesActorsDefault Failure VocabularyDefault Scale Hotspots
I01 Coordination / Consensus MetadataLeaseState, LeadershipState, MembershipState, RevisionedConfigLeaseState, LeadershipState, MembershipState, RevisionedConfigclient, leader, follower, watchersplit brain, stale leader/stale holder, watch gap on reconnect, follower stale readquorum write latency, hot metadata key, watch fanout
I02 Claim / Lease / Exclusive OwnershipClaimState, LeaseState, OwnerEpochClaimState, LeaseState, OwnerEpochworker, claimant, renewer, reconcilerduplicate claim, stale holder acting after expiry, lease expiry race, orphaned claim after crashhot claim key, heartbeat/renew storm, lease-manager contention
I03 Due-Time Release + Claimable RunScheduledState, RunnableJob, ExecutionStateScheduledState, RunnableJob, ExecutionStatesubmitter, due scanner, workerdue item materialized twice, due item never materialized, job claimed twice, run executed but result not recordeddue-time bucket hotspot, cron boundary burst, queue backlog, worker burst
I04 Frontier Scan + Claimable RunFrontierState, BatchRun, CheckpointStateFrontierState, BatchRun, CheckpointStatescanner, worker, reconcilerfrontier advanced too far, same range claimed twice, progress not advanced after success, already-covered range reprocessedfrontier contention, skewed range claims, checkpoint lag, bursty batch materialization
I05 Append Log + Consumer ProgressLogSegment, Offset, ConsumerProgressLogSegment, ConsumerProgressproducer, broker, consumerduplicate consumption, offset advanced before effect committed, consumer lag, out-of-order processing across partitionshot partitions, log I/O, lag buildup, rebalance churn
I06 Projection / Index / Search PipelineSourceEntity, IndexEntry, ProjectionVersionSourceEntity, IndexEntry, ProjectionVersionwriter, CDC/outbox, projector, query servicestale index, missing entry, duplicate entry, tombstone not propagatedprojector lag, rebuild cost, hot search/index shards, broad query fanout
I07 Cache / Origin Projection / Edge DeliveryOriginState, CacheEntry, PurgeVersionOriginStateclient, cache node, origin service, invalidatorstale cache, invalidation miss, cache stampede, origin fallback inconsistencyhot key, miss storm, origin overload, invalidation fanout
I08 Rate Limit / Budget / Token AccountingBudgetState, WindowState, TokenBucketState, ConfigStateBudgetState, WindowState, TokenBucketState, ConfigStateclient, evaluator, control planeover-admit under race, stale policy, token drift, incorrect local snapshot applyhot tenant/account key, fleet-wide config rollout, evaluator hot path
I09 Sequence / Identifier GenerationCounterState, RangeLeaseState, WorkerIdState, EpochStateCounterState, RangeLeaseState, WorkerIdState, EpochStateclient, allocator, leased nodeduplicate IDs, non-monotonic IDs, worker-id exhaustion, clock rollback / stale epochallocator hot spot, worker-id pool contention, lease refresh pressure
I10 Membership / Presence / RegistryMemberState, PresenceState, RegistryVersionMemberState, PresenceState, RegistryVersionnode, session service, watcherfalse liveness, false death, ghost member, watch gapheartbeat fan-in, hot room/group membership, registry fanout
I11 Control Plane + Snapshot DistributionConfigState, SnapshotState, AppliedVersionStateConfigStateadmin, publisher, agent/evaluatorout-of-order snapshot apply, stale local config, partial rollout, old revision still activesnapshot distribution fanout, hot tenant config, snapshot size, rollout bursts
I12 Workflow + External Side EffectWorkflowState, OutboxState, EffectStateWorkflowState, OutboxState, EffectStateuser, workflow service, external dependency, reconcilereffect succeeded but ack lost, duplicate side effect, stuck reconciliation, invalid workflow transition around effectexternal dependency latency, retry storms, outbox relay backlog
I13 Shared Subject CoordinationOperationLog, SubjectState, VersionStateOperationLog, SubjectState, VersionStateclient, coordinator, subscriberduplicate op, out-of-order op, divergence, stale coordinatorhot-subject coordinator, replay cost, per-subject ordering bottleneck
I14 Immutable Artifact Namespace + DeliveryArtifactState, ManifestState, NamespaceHeadState, BlobStateArtifactState, ManifestState, NamespaceHeadState, BlobStatepublisher, downloader, CDN/blob storeorphaned artifact, stale head, manifest pointer mismatch, missing blob after head advanceorigin bandwidth, head/manifest contention, popular artifact amplification
I15 Execution Fleet + Worker SubstrateWorkerState, CapacityState, PlacementState, ExecutionLeaseState, ExecutionAttemptState, RuntimeSlotStateCapacityState, PlacementState, ExecutionLeaseState, ExecutionAttemptStateinvoker, placement service, worker, reconcilerduplicate placement, stale completion after lease expiry, capacity leak after worker crash, stranded placed-but-never-started work, cold-start amplificationworker saturation, placement contention, cold starts, heartbeat fan-in, noisy-neighbor pressure

Quick Usage Rules #

  1. Canonical States are the states you should be ready to name in entities/HLD.
  2. Source-of-Truth States should be treated as the authoritative subset of Canonical States during failure analysis.
  3. Actors should appear on the important edges in the HLD.
  4. Default Failure Vocabulary gives you the first deep-dive talking points.
  5. Default Scale Hotspots give you the first bottleneck answer before concrete numbers.

Interview Shortcut #

For any prompt, once the archetype is identified, be ready to say:

  1. The source of truth here is ...
  2. The default failure mode is ...
  3. The first thing that gets hot is ...

That is usually enough to keep the first-pass design on track.


Product Starter HLD Boxes #

Use these as the first service/store anchors when the product archetype is primary.

ArchetypeStarter HLD Box
A01 Current-Value EntityEntity Service -> Entity Store [truth]
A02 Relation / EdgeRelation Service -> Edge Store [truth]
A03 Append-Only Child ObjectAppend/Message Service -> Child Log/Table [truth]
A04 Workflow / Lifecycle StateWorkflow Service -> Workflow Store [truth]
A05 Derived ProjectionSource Write Service -> Source Store [truth], then Projector -> Projection Store [proj]
A06 Inventory / Constrained ResourceInventory Service -> Inventory Store [truth]
A07 Critical Transaction ProcessTransaction Service -> Transaction Store [truth], then Outbox/Effect Worker
A08 Time-Bounded Exclusive AllocationHold/Booking Service -> Hold Store [truth] + Inventory Store [truth]
A09 Future Constraint + Claimable RunScheduler API -> Schedule Store [truth], then Due Scanner -> Runnable Queue
A10 Frontier + Claimable RunFrontier Service -> Frontier Store [truth], then Workers -> Batch/Claim Store
A11 Control Plane + Local SnapshotConfig Control Plane -> Config Store [truth], then Snapshot Publisher -> Agents
A12 Matching / AssignmentMatching Service -> Request Store [truth] + Assignment Store [truth]
A13 Ranking / LeaderboardRanker/Aggregator -> Aggregate Store [truth or proj]
A14 Realtime FanoutMessage/Event Service -> Message Log [truth], then Fanout Service -> Session/Websocket Tier
A15 Search-First ProductSearch API -> Index/Search Store [proj], with Indexer <- Source Store [truth] as the write-side anchor
A16 Auction / Competitive WindowAuction Service -> Auction Store [truth] + Bid Log [truth]
A17 Shared Mutable SubjectCoordinator/Doc Service -> Subject State [truth] + Operation Log [truth]
A18 Versioned Namespace + Immutable Content UnitsNamespace Service -> Namespace Store [truth] + Version/Blob Store [truth]
A19 Catalog + Scoped RelationCatalog Service -> Definition Store [truth] + Scoped Edge Store [truth]

Infra Starter HLD Boxes #

Use these as the first control/state anchors when the infrastructure archetype is primary.

ArchetypeStarter HLD Box
I01 Coordination / Consensus MetadataCoordination API -> Quorum Metadata Store [truth]
I02 Claim / Lease / Exclusive OwnershipClaim/Lease Service -> Lease Store [truth]
I03 Due-Time Release + Claimable RunScheduler API -> Schedule Store [truth], then Due Scanner -> Runnable Store/Queue [truth]
I04 Frontier Scan + Claimable RunFrontier Manager -> Frontier Store [truth], then Workers -> Claim/Checkpoint Store [truth]
I05 Append Log + Consumer ProgressProducer/Broker Front Door -> Append Log [truth]
I06 Projection / Index / Search PipelineSource Store [truth] -> Projector/Indexer -> Projection Store [proj]
I07 Cache / Origin Projection / Edge DeliveryClient -> Cache Tier, with Origin Store [truth] directly behind it
I08 Rate Limit / Budget / Token AccountingEvaluator/Rate Limit Service -> Budget Store [truth], optionally Control Plane -> Config Store
I09 Sequence / Identifier GenerationID Allocator -> Counter/Range Lease Store [truth]
I10 Membership / Presence / RegistryRegistry/Presence Service -> Membership Store [truth]
I11 Control Plane + Snapshot DistributionControl Plane -> Config Truth Store [truth], then Snapshot Publisher -> Agents
I12 Workflow + External Side EffectWorkflow Service -> Workflow Store [truth] + Outbox [truth], then Effect Worker -> External System
I13 Shared Subject CoordinationCoordinator -> Subject State [truth] + Operation Log [truth]
I14 Immutable Artifact Namespace + DeliveryPublisher/Namespace Service -> Namespace Head Store [truth] + Artifact/Manifest Store [truth]
I15 Execution Fleet + Worker SubstratePlacement Service -> Worker/Capacity State [truth] + Execution Attempt State [truth]