package runtimeapi

import (
	"context"

	"google.golang.org/grpc"
)

// runtimeContextServerStream changes only the request context while preserving
// gRPC's stream and transport lifecycle. Policy, security, serving admission,
// and request-local engine state use it in sequence; none of them owns
// transport completion or replaces RecvMsg/SendMsg.
type runtimeContextServerStream struct {
	grpc.ServerStream
	ctx context.Context
}

func (s *runtimeContextServerStream) Context() context.Context { return s.ctx }
