Case 25 · Flagship

TwinOps Control Plane

TwinOps treats industrial digital twins as operable infrastructure: OpenUSD composition, GitOps ownership, drift detection, reconciliation, telemetry, and incident replay on Kubernetes.

01

How it works

From desired state to SYNCED.

TwinOps by Andrey Lesnikov — a GitOps control plane for industrial digital twins: PLM intent, OpenUSD composition, live telemetry, three-way drift, and reconcile on Kubernetes.

TwinOps architecture diagram by Andrey Lesnikov: sources, DigitalTwin control plane, three-way drift, immutable outputs, optional Kit and Web UI
Control plane first: materialize → compose → three-way drift → immutable output. Kit / WebRTC are optional runtimes.
TwinOps lifecycle animation by Andrey Lesnikov: Desired PLM and Git to rendered OpenUSD, observed telemetry, drift, reconcile, and SYNCED
Lifecycle — Desired PLM/Git → Rendered OpenUSD → Observed telemetry → Drift → Reconcile → SYNCED
  1. 01

    Declare desired twin

    PLM mappings and Git twin.yaml define engineering intent — the twin is a versioned artifact, not a one-off scene.

  2. 02

    Compose OpenUSD

    The control plane materializes inputs and composes deterministic USD bundles (inline or isolated Job), then publishes immutable revisions.

  3. 03

    Detect three-way drift

    Desired, rendered, and observed (MQTT/IoT) planes are compared continuously so factory signal and scene state stay honest.

  4. 04

    Reconcile to SYNCED

    Operators apply reconciliation, heal overlays, and return the twin to SYNCED — with timeline evidence instead of a fragile demo reset.

02

Evidence

From problem to proof.

How the system is framed, operated, and proven — not a slide deck summary.

01
Problem

Digital twins are often demos or notebooks. Production teams need drift detection, reconciliation, ownership, telemetry persistence, and a path to replay incidents — not a one-off visualization that collapses when someone updates a mesh or a kit version.

02
Architecture

A GitOps control plane composes OpenUSD scenes, detects drift against desired state, reconciles through Kubernetes operators, persists history, streams kit telemetry, and supports incident replay. Desired twin state lives in Git; runtime state is observed and reconciled like any other platform product.

03
Operating model

Industrial and platform teams share ownership boundaries: who can change composition, what drift is actionable, how telemetry is retained, and how an incident is replayed without rebuilding the scene by hand.

04
Trade-offs

Treating twins as platform products adds operator and GitOps complexity. The benefit is reviewable state, recoverable failures, and demonstrable E2E behavior instead of fragile demos.

05
Evidence

Useful signals include composition history, drift events, reconcile outcomes, kit telemetry streams, and replay records that reconstruct what the twin saw during an incident window.

06
Latest evidence

PLM REST reliability: ETag / If-None-Match polling, exponential backoff with jitter on 5xx and timeouts, 409 conflicts surfaced as a PlmConflict condition, and idempotent resync — after an outage the next successful poll increments resyncCount exactly once. PLM fetches go through an SSRF guard (operator host allowlist, private-IP blocking on DNS and redirects, 1 MiB response cap). MQTT ingest drops out-of-order and duplicate messages, marks stale sensors STALE / UNKNOWN and quarantines clock-skewed messages without advancing the sequence. All Operator kind jobs, including PLM poll E2E and MQTT smoke, green in CI run 38133823218.

Constraints

OpenUSD composition, GitOps ownership, Kubernetes operators, telemetry persistence, and one-command E2E demonstration.

03

Related

Nearby systems.

Case 24 · Flagship

Architecture Rehearsal

  • Go
  • Kubernetes
  • Helm

Teams discover architectural blast radius only after a change lands in production

Pre-deploy break risk → verified after change

Case 04 · Flagship

GitOps: Argo CD & Flux

  • Git
  • Argo CD
  • Flux

Teams need a clear delivery model before GitOps becomes another layer of operational confusion

Delivery as explicit platform contracts

Case 18

Self-Healing Infrastructure

  • Detect
  • Heal
  • Verify

Transient infrastructure failures can become user-facing incidents when recovery depends on manual detection

Common failures recover with guardrails

Available for meaningful infrastructure conversations

Build systems that stay calm under pressure.

Available for conversations

Talk infrastructure

Book a working session

Meet ↗

Evidence first

For deep dives

Explore the systems

All cases ↗