package com.cameleer.server.core.runtime;

import com.cameleer.common.model.ApplicationConfig;

import java.util.List;
import java.util.Map;
import java.util.UUID;

/**
 * Snapshot of the config that was deployed, captured at the moment a deployment
 * transitions to RUNNING. Used for "last known good" restore (checkpoints) and
 * for dirty-state detection on the deployment page.
 *
 * <p>This is persisted as JSONB in {@code deployments.deployed_config_snapshot}.</p>
 */
public record DeploymentConfigSnapshot(
        UUID jarVersionId,
        ApplicationConfig agentConfig,
        Map<String, Object> containerConfig,
        List<String> sensitiveKeys
) {
}
