{ "schemaVersion": "nodedc.device-plane.device-control-core-release.v4", "releaseId": "__PATCH_ID__", "action": "upgrade", "predecessor": { "kind": "migration-replay-checkpoint-recovery", "patchId": "device-control-core-migration-replay-checkpoint-recovery-20260822-046", "artifactSha256": "46000c76977fb583fc7c9cf74ecf624efd8b404f7b8d0322e0270e7b8ac6e450" }, "service": "device-control-core", "composeActivation": "preserve-active-v4-topology", "identity": "reuse-existing-runner-managed-host-local-private-key-public-certificate-export", "identityRecovery": "forbidden-valid-existing-identity-required", "tlsPurpose": "clientAuth", "direction": "core-initiated", "endpointPolicy": "public-ipv4-standard-https-tcp-443-only", "coreNetworks": [ "device-plane-private", "device-plane-egress" ], "publicIngress": "none-on-synology", "edgeRegistrations": "preserved", "commandTransport": "typed-service-ping-v1", "commandCatalog": "allowlisted-adapter-typed-commands-only", "credentialBoundary": "transient-core-memory-then-single-pinned-mtls-command-envelope-to-edge-never-persisted-never-logged-never-returned", "telemetryTransport": "edge-channel-host-telemetry-observed-v1", "telemetryContract": "nodedc.infrastructure.host-telemetry.v1", "telemetryStorage": "device-control-core-postgres-seven-day-retention", "ontologyProjection": "observation-observed-property-provenance-freshness-v1", "telemetryFreshness": "fifteen-seconds-missing-stale-not-unhealthy", "recoveryPredecessor": "terminal-applied-046-exact-source-runtime-database", "databasePreflight": "final-migration-016-validated-and-host-telemetry-table-absent", "databaseRowMutation": "none-before-core-startup-migrations", "databaseSchemaOutcome": "migration-017-host-telemetry-table-present", "runtimePredecessor": "healthy-recovery-046-core-generation", "gelios": "untouched-legacy-only", "preservedServices": [ "device-manager", "device-gateway", "device-postgres", "device-backhaul-target" ], "healthGate": "bounded-container-grace+core-edge-contract+exact-private-egress-network-boundary", "rollback": "restore-preapply-source-and-core-runtime" }