package com.cameleer.server.core.runtime;

import java.util.stream.Stream;

public interface RuntimeOrchestrator {
    boolean isEnabled();
    /** Pull the latest version of a container image from the registry. */
    default void pullImage(String image) {}
    String startContainer(ContainerRequest request);
    void stopContainer(String containerId);
    void removeContainer(String containerId);
    ContainerStatus getContainerStatus(String containerId);
    Stream<String> getLogs(String containerId, int tailLines);

    /** Start streaming container logs to ClickHouse. */
    default void startLogCapture(String containerId, String instanceId, String appSlug, String envSlug, String tenantId) {}

    /** Stop log capture for a specific container (e.g., on die/oom). */
    default void stopLogCapture(String containerId) {}
}
