Versions in this module Expand all Collapse all v0 v0.1.0 Feb 16, 2026 Changes in this version + type BotRunner interface + CountActiveContainers func(ctx context.Context) (int, error) + StartContainer func(ctx context.Context, image string, botID string, env []string) (string, error) + StopContainer func(ctx context.Context, containerID string) error + type QueuedBot struct + Env []string + ID string + Image string + Match string + type RuntimeService struct + func NewRuntimeService(maxBots int) (*RuntimeService, error) + func NewRuntimeServiceWithRunner(runner BotRunner, maxBots int) *RuntimeService + func (s *RuntimeService) GetRuntimeStats(ctx context.Context, req *pb.Empty) (*pb.RuntimeStats, error) + func (s *RuntimeService) StartBot(ctx context.Context, req *pb.StartBotRequest) (*pb.StartBotResponse, error) + func (s *RuntimeService) StopBot(ctx context.Context, req *pb.StopBotRequest) (*pb.StopBotResponse, error) + type Scheduler struct + func NewScheduler(runner BotRunner, maxBots int) *Scheduler + func (s *Scheduler) GetActiveCount() int + func (s *Scheduler) GetQueueSize() int + func (s *Scheduler) NotifyStop(botID string) + func (s *Scheduler) StartBot(ctx context.Context, botID, image, matchID string, env []string) (string, bool, int, error)