No video assigned to this section
The lesson can still contain reading, examples, practical work and a quiz.
Production architecture and compatibility management
1. Production architecture and compatibility management · 0 min · Midnight / Compact
The lesson can still contain reading, examples, practical work and a quiz.
1. Production architecture and compatibility management · 0 min · Midnight / Compact
Advanced Midnight engineering starts with reproducible, compatible component sets across development, staging, and production-like environments.
Midnight DApps depend on a coordinated set of runtime, compiler, SDK, indexer, proof, and node components. The official release overview explicitly tells developers to use compatible component versions together.
A repository example can lag behind the current tested release. For example, the node-docker proof-server compose file inspected during this course build pins an older image than the current official compatibility matrix. This is precisely why production automation must not treat example tags as authoritative.
A deployment manifest should record the network, node version, indexer version, proof-server version, Compact compiler, Midnight.js version, and the exact contract build commit. This makes incidents reproducible.
Upgrade plans should define compatibility tests, data backup, migration steps, canary checks, and rollback criteria before a version is changed.
Version drift is a security and availability risk. Treat compatibility checks as part of CI/CD.
Create a machine-readable compatibility manifest for Preview, Preprod, and Mainnet deployments.
Compatibility note: The version numbers in this package are a research snapshot from 2026-09-09. Before running commands, compare them with the current Midnight compatibility matrix and release notes.
Record current component versions.
Flag any mismatch with docker-compose files.
Add a CI check for version drift.
Write one rollback criterion for node, indexer, and DApp upgrades.