SYMBOL INDEX (5263 symbols across 634 files) FILE: cli/src/opensandbox_cli/client.py class ClientContext (line 40) | class ClientContext: method connection_config (line 53) | def connection_config(self) -> ConnectionConfigSync: method get_manager (line 64) | def get_manager(self) -> SandboxManagerSync: method resolve_sandbox_id (line 70) | def resolve_sandbox_id(self, prefix: str) -> str: method connect_sandbox (line 116) | def connect_sandbox( method close (line 127) | def close(self) -> None: FILE: cli/src/opensandbox_cli/commands/code.py function code_group (line 32) | def code_group(ctx: click.Context) -> None: function code_run (line 47) | def code_run( function context_group (line 97) | def context_group(ctx: click.Context) -> None: function context_create (line 108) | def context_create(obj: ClientContext, sandbox_id: str, language: str) -... function context_list (line 129) | def context_list(obj: ClientContext, sandbox_id: str, language: str) -> ... function context_delete (line 148) | def context_delete(obj: ClientContext, sandbox_id: str, context_id: str)... function context_delete_all (line 166) | def context_delete_all(obj: ClientContext, sandbox_id: str, language: st... function code_interrupt (line 186) | def code_interrupt(obj: ClientContext, sandbox_id: str, execution_id: st... FILE: cli/src/opensandbox_cli/commands/command.py function command_group (line 34) | def command_group(ctx: click.Context) -> None: function _run_command (line 42) | def _run_command( function command_run (line 114) | def command_run( function command_status (line 133) | def command_status(obj: ClientContext, sandbox_id: str, execution_id: st... function command_logs (line 151) | def command_logs( function command_interrupt (line 173) | def command_interrupt(obj: ClientContext, sandbox_id: str, execution_id:... function exec_cmd (line 193) | def exec_cmd( FILE: cli/src/opensandbox_cli/commands/config_cmd.py function config_group (line 30) | def config_group(ctx: click.Context) -> None: function config_init (line 42) | def config_init(force: bool, config_path: Path | None) -> None: function config_show (line 67) | def config_show(obj: ClientContext) -> None: function config_set (line 79) | def config_set(key: str, value: str, config_path: Path | None) -> None: FILE: cli/src/opensandbox_cli/commands/file.py function file_group (line 30) | def file_group(ctx: click.Context) -> None: function file_cat (line 44) | def file_cat(obj: ClientContext, sandbox_id: str, path: str, encoding: s... function file_write (line 66) | def file_write( function file_upload (line 105) | def file_upload( function file_download (line 126) | def file_download( function file_rm (line 146) | def file_rm(obj: ClientContext, sandbox_id: str, paths: tuple[str, ...])... function file_mv (line 165) | def file_mv( function file_mkdir (line 189) | def file_mkdir( function file_rmdir (line 226) | def file_rmdir(obj: ClientContext, sandbox_id: str, paths: tuple[str, ..... function file_search (line 245) | def file_search( function file_info (line 275) | def file_info(obj: ClientContext, sandbox_id: str, paths: tuple[str, ...... function file_chmod (line 299) | def file_chmod( function file_replace (line 329) | def file_replace( FILE: cli/src/opensandbox_cli/commands/sandbox.py function sandbox_group (line 32) | def sandbox_group(ctx: click.Context) -> None: function sandbox_create (line 56) | def sandbox_create( function sandbox_list (line 111) | def sandbox_list( function sandbox_get (line 174) | def sandbox_get(obj: ClientContext, sandbox_id: str) -> None: function sandbox_kill (line 206) | def sandbox_kill(obj: ClientContext, sandbox_ids: tuple[str, ...]) -> None: function sandbox_pause (line 222) | def sandbox_pause(obj: ClientContext, sandbox_id: str) -> None: function sandbox_resume (line 237) | def sandbox_resume(obj: ClientContext, sandbox_id: str) -> None: function sandbox_renew (line 253) | def sandbox_renew(obj: ClientContext, sandbox_id: str, timeout: timedelt... function sandbox_endpoint (line 272) | def sandbox_endpoint(obj: ClientContext, sandbox_id: str, port: int) -> ... function sandbox_health (line 288) | def sandbox_health(obj: ClientContext, sandbox_id: str) -> None: function sandbox_metrics (line 313) | def sandbox_metrics(obj: ClientContext, sandbox_id: str) -> None: FILE: cli/src/opensandbox_cli/config.py function load_config_file (line 63) | def load_config_file(config_path: Path | None = None) -> dict[str, Any]: function resolve_config (line 77) | def resolve_config( function init_config_file (line 123) | def init_config_file(config_path: Path | None = None, *, force: bool = F... function _int_or_none (line 135) | def _int_or_none(value: str | None) -> int | None: FILE: cli/src/opensandbox_cli/main.py class BannerGroup (line 51) | class BannerGroup(click.Group): method format_help (line 54) | def format_help(self, ctx: click.Context, formatter: click.HelpFormatt... function cli (line 71) | def cli( FILE: cli/src/opensandbox_cli/output.py function _style_value (line 71) | def _style_value(col: str, value: str) -> Text: class OutputFormatter (line 89) | class OutputFormatter: method __init__ (line 92) | def __init__(self, fmt: str = "table", *, color: bool = True) -> None: method success (line 106) | def success(self, msg: str) -> None: method info (line 113) | def info(self, msg: str) -> None: method warning (line 120) | def warning(self, msg: str) -> None: method error (line 127) | def error(self, msg: str) -> None: method error_panel (line 134) | def error_panel(self, msg: str, title: str = "Error") -> None: method spinner (line 151) | def spinner(self, msg: str) -> Generator[Status, None, None]: method panel (line 164) | def panel(self, content: str, *, title: str | None = None, style: str ... method success_panel (line 180) | def success_panel(self, data: dict[str, Any], *, title: str = "Success... method print_model (line 205) | def print_model(self, model: BaseModel, title: str | None = None) -> N... method print_models (line 215) | def print_models( method print_rows (line 231) | def print_rows( method print_dict (line 246) | def print_dict(self, data: dict[str, Any], title: str | None = None) -... method print_text (line 255) | def print_text(self, text: str) -> None: method _print_json (line 263) | def _print_json(self, data: Any) -> None: method _print_yaml (line 269) | def _print_yaml(self, data: Any) -> None: method _print_kv_table (line 277) | def _print_kv_table(self, data: dict[str, Any], *, title: str | None =... method _print_table (line 295) | def _print_table( function _model_to_dict (line 337) | def _model_to_dict(model: BaseModel) -> dict[str, Any]: FILE: cli/src/opensandbox_cli/utils.py function parse_duration (line 36) | def parse_duration(value: str) -> timedelta: class DurationType (line 62) | class DurationType(click.ParamType): method convert (line 67) | def convert( class KeyValueType (line 90) | class KeyValueType(click.ParamType): method convert (line 95) | def convert( function handle_errors (line 114) | def handle_errors(fn): # type: ignore[no-untyped-def] FILE: cli/tests/conftest.py function runner (line 28) | def runner() -> CliRunner: function mock_manager (line 33) | def mock_manager() -> MagicMock: function mock_sandbox (line 38) | def mock_sandbox() -> MagicMock: function mock_client_context (line 43) | def mock_client_context(mock_manager: MagicMock, mock_sandbox: MagicMock... FILE: cli/tests/test_cli_help.py function runner (line 26) | def runner() -> CliRunner: class TestRootCLI (line 35) | class TestRootCLI: method test_help (line 36) | def test_help(self, runner: CliRunner) -> None: method test_version (line 41) | def test_version(self, runner: CliRunner) -> None: method test_root_lists_commands (line 46) | def test_root_lists_commands(self, runner: CliRunner) -> None: class TestSandboxHelp (line 57) | class TestSandboxHelp: method test_sandbox_help (line 58) | def test_sandbox_help(self, runner: CliRunner) -> None: method test_sandbox_subcommand_help (line 68) | def test_sandbox_subcommand_help(self, runner: CliRunner, subcmd: str)... class TestCommandHelp (line 79) | class TestCommandHelp: method test_command_help (line 80) | def test_command_help(self, runner: CliRunner) -> None: method test_command_subcommand_help (line 87) | def test_command_subcommand_help(self, runner: CliRunner, subcmd: str)... class TestExecHelp (line 97) | class TestExecHelp: method test_exec_help (line 98) | def test_exec_help(self, runner: CliRunner) -> None: class TestFileHelp (line 109) | class TestFileHelp: method test_file_help (line 110) | def test_file_help(self, runner: CliRunner) -> None: method test_file_subcommand_help (line 120) | def test_file_subcommand_help(self, runner: CliRunner, subcmd: str) ->... class TestCodeHelp (line 130) | class TestCodeHelp: method test_code_help (line 131) | def test_code_help(self, runner: CliRunner) -> None: method test_code_context_help (line 137) | def test_code_context_help(self, runner: CliRunner) -> None: class TestConfigHelp (line 149) | class TestConfigHelp: method test_config_help (line 150) | def test_config_help(self, runner: CliRunner) -> None: method test_config_subcommand_help (line 157) | def test_config_subcommand_help(self, runner: CliRunner, subcmd: str) ... FILE: cli/tests/test_commands.py function runner (line 35) | def runner() -> CliRunner: function _build_mock_client_context (line 39) | def _build_mock_client_context( function _invoke (line 65) | def _invoke( class TestConfigInit (line 91) | class TestConfigInit: method test_init_creates_file (line 92) | def test_init_creates_file(self, runner: CliRunner, tmp_path: Path) ->... method test_init_refuses_overwrite (line 98) | def test_init_refuses_overwrite(self, runner: CliRunner, tmp_path: Pat... method test_init_force_overwrites (line 104) | def test_init_force_overwrites(self, runner: CliRunner, tmp_path: Path... class TestConfigShow (line 112) | class TestConfigShow: method test_show_json_output (line 113) | def test_show_json_output(self, runner: CliRunner) -> None: method test_show_table_output (line 119) | def test_show_table_output(self, runner: CliRunner) -> None: class TestConfigSet (line 125) | class TestConfigSet: method test_set_updates_existing_field (line 126) | def test_set_updates_existing_field(self, runner: CliRunner, tmp_path:... method test_set_rejects_flat_key (line 133) | def test_set_rejects_flat_key(self, runner: CliRunner, tmp_path: Path)... class TestSandboxList (line 145) | class TestSandboxList: method test_list_invokes_manager (line 146) | def test_list_invokes_manager(self, runner: CliRunner) -> None: class TestSandboxKill (line 157) | class TestSandboxKill: method test_kill_multiple (line 158) | def test_kill_multiple(self, runner: CliRunner) -> None: class TestSandboxPause (line 167) | class TestSandboxPause: method test_pause_calls_manager (line 168) | def test_pause_calls_manager(self, runner: CliRunner) -> None: class TestSandboxResume (line 176) | class TestSandboxResume: method test_resume_calls_manager (line 177) | def test_resume_calls_manager(self, runner: CliRunner) -> None: class TestFileCat (line 190) | class TestFileCat: method test_cat_outputs_content (line 191) | def test_cat_outputs_content(self, runner: CliRunner) -> None: class TestFileWrite (line 200) | class TestFileWrite: method test_write_with_content_flag (line 201) | def test_write_with_content_flag(self, runner: CliRunner) -> None: class TestFileRm (line 213) | class TestFileRm: method test_rm_deletes_files (line 214) | def test_rm_deletes_files(self, runner: CliRunner) -> None: class TestFileMv (line 223) | class TestFileMv: method test_mv_moves_file (line 224) | def test_mv_moves_file(self, runner: CliRunner) -> None: class TestFileMkdir (line 233) | class TestFileMkdir: method test_mkdir_creates_dirs (line 234) | def test_mkdir_creates_dirs(self, runner: CliRunner) -> None: class TestFileRmdir (line 244) | class TestFileRmdir: method test_rmdir_removes_dirs (line 245) | def test_rmdir_removes_dirs(self, runner: CliRunner) -> None: class TestCommandRun (line 259) | class TestCommandRun: method test_background_run (line 260) | def test_background_run(self, runner: CliRunner) -> None: class TestExecShortcut (line 277) | class TestExecShortcut: method test_exec_passes_to_run (line 278) | def test_exec_passes_to_run(self, runner: CliRunner) -> None: class TestCommandInterrupt (line 293) | class TestCommandInterrupt: method test_interrupt_calls_sdk (line 294) | def test_interrupt_calls_sdk(self, runner: CliRunner) -> None: FILE: cli/tests/test_config.py class TestLoadConfigFile (line 37) | class TestLoadConfigFile: method test_returns_empty_when_file_missing (line 38) | def test_returns_empty_when_file_missing(self, tmp_path: Path) -> None: method test_parses_toml_file (line 42) | def test_parses_toml_file(self, tmp_path: Path) -> None: method test_parses_all_sections (line 51) | def test_parses_all_sections(self, tmp_path: Path) -> None: class TestResolveConfig (line 70) | class TestResolveConfig: method test_defaults_when_nothing_configured (line 71) | def test_defaults_when_nothing_configured(self, tmp_path: Path) -> None: method test_file_values_override_defaults (line 82) | def test_file_values_override_defaults(self, tmp_path: Path) -> None: method test_env_overrides_file (line 100) | def test_env_overrides_file(self, tmp_path: Path, monkeypatch: pytest.... method test_cli_overrides_everything (line 117) | def test_cli_overrides_everything(self, tmp_path: Path, monkeypatch: p... method test_invalid_timeout_env_falls_through (line 136) | def test_invalid_timeout_env_falls_through(self, tmp_path: Path, monke... class TestInitConfigFile (line 150) | class TestInitConfigFile: method test_creates_default_config (line 151) | def test_creates_default_config(self, tmp_path: Path) -> None: method test_refuses_overwrite_without_force (line 161) | def test_refuses_overwrite_without_force(self, tmp_path: Path) -> None: method test_force_overwrites (line 167) | def test_force_overwrites(self, tmp_path: Path) -> None: method test_creates_parent_directories (line 173) | def test_creates_parent_directories(self, tmp_path: Path) -> None: FILE: cli/tests/test_output.py class FakeItem (line 32) | class FakeItem(BaseModel): class TestJsonOutput (line 43) | class TestJsonOutput: method test_print_dict (line 44) | def test_print_dict(self, capsys: pytest.CaptureFixture[str]) -> None: method test_print_model (line 51) | def test_print_model(self, capsys: pytest.CaptureFixture[str]) -> None: method test_print_models (line 61) | def test_print_models(self, capsys: pytest.CaptureFixture[str]) -> None: class TestYamlOutput (line 80) | class TestYamlOutput: method test_print_dict (line 81) | def test_print_dict(self, capsys: pytest.CaptureFixture[str]) -> None: method test_print_model (line 87) | def test_print_model(self, capsys: pytest.CaptureFixture[str]) -> None: class TestTableOutput (line 102) | class TestTableOutput: method test_print_dict_contains_values (line 103) | def test_print_dict_contains_values(self, capsys: pytest.CaptureFixtur... method test_print_dict_none_renders_dash (line 111) | def test_print_dict_none_renders_dash(self, capsys: pytest.CaptureFixt... method test_print_models_shows_headers (line 117) | def test_print_models_shows_headers(self, capsys: pytest.CaptureFixtur... method test_print_text_ignores_format (line 126) | def test_print_text_ignores_format(self, capsys: pytest.CaptureFixture... FILE: cli/tests/test_resolve_id.py function _make_sandbox_info (line 28) | def _make_sandbox_info(sandbox_id: str) -> MagicMock: function _make_paged_result (line 35) | def _make_paged_result( function _make_client_context (line 46) | def _make_client_context( class TestResolveSandboxId (line 83) | class TestResolveSandboxId: method test_full_uuid_skips_listing (line 86) | def test_full_uuid_skips_listing(self) -> None: method test_unique_prefix_resolves (line 94) | def test_unique_prefix_resolves(self) -> None: method test_exact_match_among_multiple (line 103) | def test_exact_match_among_multiple(self) -> None: method test_ambiguous_prefix_raises (line 113) | def test_ambiguous_prefix_raises(self) -> None: method test_ambiguous_error_shows_ids (line 123) | def test_ambiguous_error_shows_ids(self) -> None: method test_no_match_raises (line 131) | def test_no_match_raises(self) -> None: method test_empty_sandbox_list_raises (line 137) | def test_empty_sandbox_list_raises(self) -> None: method test_single_char_prefix (line 143) | def test_single_char_prefix(self) -> None: method test_full_id_matches_exactly (line 152) | def test_full_id_matches_exactly(self) -> None: method test_more_than_five_ambiguous_shows_ellipsis (line 158) | def test_more_than_five_ambiguous_shows_ellipsis(self) -> None: method test_match_on_second_page (line 169) | def test_match_on_second_page(self) -> None: method test_collision_across_pages (line 181) | def test_collision_across_pages(self) -> None: method test_no_match_across_all_pages (line 193) | def test_no_match_across_all_pages(self) -> None: FILE: cli/tests/test_utils.py class TestParseDuration (line 32) | class TestParseDuration: method test_valid_durations (line 46) | def test_valid_durations(self, input_str: str, expected: timedelta) ->... method test_invalid_durations (line 59) | def test_invalid_durations(self, input_str: str) -> None: method test_strips_whitespace (line 63) | def test_strips_whitespace(self) -> None: class TestDurationType (line 72) | class TestDurationType: method test_converts_string (line 73) | def test_converts_string(self) -> None: method test_passes_through_timedelta (line 77) | def test_passes_through_timedelta(self) -> None: method test_invalid_raises_bad_parameter (line 82) | def test_invalid_raises_bad_parameter(self) -> None: class TestKeyValueType (line 92) | class TestKeyValueType: method test_parses_simple_kv (line 93) | def test_parses_simple_kv(self) -> None: method test_value_can_contain_equals (line 96) | def test_value_can_contain_equals(self) -> None: method test_empty_value (line 99) | def test_empty_value(self) -> None: method test_missing_equals_fails (line 102) | def test_missing_equals_fails(self) -> None: method test_passes_through_tuple (line 106) | def test_passes_through_tuple(self) -> None: FILE: components/egress/main.go function main (line 34) | func main() { function withLogger (line 99) | func withLogger(ctx context.Context) context.Context { function envOrDefault (line 105) | func envOrDefault(key, defaultVal string) string { function isTruthy (line 112) | func isTruthy(v string) bool { function containsAddr (line 121) | func containsAddr(addrs []netip.Addr, a netip.Addr) bool { function parseMode (line 130) | func parseMode() string { FILE: components/egress/nameserver.go function AllowIPsForNft (line 31) | func AllowIPsForNft(resolvPath string) []netip.Addr { function maxNameserversFromEnv (line 59) | func maxNameserversFromEnv() int { function isValidNameserverIP (line 75) | func isValidNameserverIP(ip netip.Addr) bool { function formatIPs (line 85) | func formatIPs(ips []netip.Addr) []string { FILE: components/egress/nameserver_test.go function TestAllowIPsForNft_EmptyResolv (line 27) | func TestAllowIPsForNft_EmptyResolv(t *testing.T) { function TestAllowIPsForNft_ValidNameservers (line 36) | func TestAllowIPsForNft_ValidNameservers(t *testing.T) { function TestAllowIPsForNft_FiltersInvalid (line 49) | func TestAllowIPsForNft_FiltersInvalid(t *testing.T) { function TestAllowIPsForNft_Cap (line 61) | func TestAllowIPsForNft_Cap(t *testing.T) { function TestIsValidNameserverIP (line 77) | func TestIsValidNameserverIP(t *testing.T) { function TestMaxNameserversFromEnv (line 100) | func TestMaxNameserversFromEnv(t *testing.T) { FILE: components/egress/nft.go function createNftManager (line 31) | func createNftManager(mode string) nftApplier { function setupNft (line 40) | func setupNft(ctx context.Context, nftMgr nftApplier, initialPolicy *pol... function parseNftOptions (line 58) | func parseNftOptions() nftables.Options { FILE: components/egress/pkg/constants/configuration.go constant EnvBlockDoH443 (line 18) | EnvBlockDoH443 = "OPENSANDBOX_EGRESS_BLOCK_DOH_443" constant EnvDoHBlocklist (line 19) | EnvDoHBlocklist = "OPENSANDBOX_EGRESS_DOH_BLOCKLIST" constant EnvEgressMode (line 20) | EnvEgressMode = "OPENSANDBOX_EGRESS_MODE" constant EnvEgressHTTPAddr (line 21) | EnvEgressHTTPAddr = "OPENSANDBOX_EGRESS_HTTP_ADDR" constant EnvEgressToken (line 22) | EnvEgressToken = "OPENSANDBOX_EGRESS_TOKEN" constant EnvEgressRules (line 23) | EnvEgressRules = "OPENSANDBOX_EGRESS_RULES" constant EnvEgressLogLevel (line 24) | EnvEgressLogLevel = "OPENSANDBOX_EGRESS_LOG_LEVEL" constant EnvMaxNameservers (line 25) | EnvMaxNameservers = "OPENSANDBOX_EGRESS_MAX_NS" constant EnvBlockedWebhook (line 26) | EnvBlockedWebhook = "OPENSANDBOX_EGRESS_DENY_WEBHOOK" constant ENVSandboxID (line 27) | ENVSandboxID = "OPENSANDBOX_EGRESS_SANDBOX_ID" constant EnvNameserverExempt (line 30) | EnvNameserverExempt = "OPENSANDBOX_EGRESS_NAMESERVER_EXEMPT" constant PolicyDnsOnly (line 34) | PolicyDnsOnly = "dns" constant PolicyDnsNft (line 35) | PolicyDnsNft = "dns+nft" constant DefaultEgressServerAddr (line 39) | DefaultEgressServerAddr = ":18080" constant DefaultMaxNameservers (line 40) | DefaultMaxNameservers = 3 FILE: components/egress/pkg/constants/constants.go constant MarkValue (line 18) | MarkValue = 0x1 constant MarkHex (line 19) | MarkHex = "0x1" constant EgressAuthTokenHeader (line 23) | EgressAuthTokenHeader = "OPENSANDBOX-EGRESS-AUTH" FILE: components/egress/pkg/dnsproxy/exempt.go function ParseNameserverExemptList (line 34) | func ParseNameserverExemptList() []netip.Addr { function parseNameserverExemptListUncached (line 39) | func parseNameserverExemptListUncached() { function UpstreamInExemptList (line 67) | func UpstreamInExemptList(upstreamHost string) bool { FILE: components/egress/pkg/dnsproxy/exempt_test.go function resetNameserverExemptCache (line 26) | func resetNameserverExemptCache(t *testing.T) { function TestParseNameserverExemptList_IPOnly (line 33) | func TestParseNameserverExemptList_IPOnly(t *testing.T) { function TestUpstreamInExemptList_IPOnly (line 45) | func TestUpstreamInExemptList_IPOnly(t *testing.T) { function TestUpstreamInExemptList_CIDRIgnored (line 55) | func TestUpstreamInExemptList_CIDRIgnored(t *testing.T) { FILE: components/egress/pkg/dnsproxy/proxy.go constant defaultListenAddr (line 35) | defaultListenAddr = "127.0.0.1:15353" type Proxy (line 37) | type Proxy struct method Start (line 71) | func (p *Proxy) Start(ctx context.Context) error { method serveDNS (line 105) | func (p *Proxy) serveDNS(w dns.ResponseWriter, r *dns.Msg) { method maybeNotifyResolved (line 138) | func (p *Proxy) maybeNotifyResolved(domain string, resp *dns.Msg) { method forward (line 149) | func (p *Proxy) forward(r *dns.Msg) (*dns.Msg, error) { method UpstreamHost (line 159) | func (p *Proxy) UpstreamHost() string { method UpdatePolicy (line 169) | func (p *Proxy) UpdatePolicy(newPolicy *policy.NetworkPolicy) { method CurrentPolicy (line 176) | func (p *Proxy) CurrentPolicy() *policy.NetworkPolicy { method SetOnResolved (line 184) | func (p *Proxy) SetOnResolved(fn func(domain string, ips []nftables.Re... method SetBlockedBroadcaster (line 189) | func (p *Proxy) SetBlockedBroadcaster(b *events.Broadcaster) { method publishBlocked (line 193) | func (p *Proxy) publishBlocked(domain string) { function New (line 52) | func New(p *policy.NetworkPolicy, listenAddr string) (*Proxy, error) { function extractResolvedIPs (line 212) | func extractResolvedIPs(resp *dns.Msg) []nftables.ResolvedIP { constant fallbackUpstream (line 243) | fallbackUpstream = "8.8.8.8:53" function discoverUpstream (line 245) | func discoverUpstream() (string, error) { function ResolvNameserverIPs (line 275) | func ResolvNameserverIPs(resolvPath string) ([]netip.Addr, error) { function LoadPolicyFromEnvVar (line 292) | func LoadPolicyFromEnvVar(envName string) (*policy.NetworkPolicy, error) { function ensurePolicyDefaults (line 300) | func ensurePolicyDefaults(p *policy.NetworkPolicy) *policy.NetworkPolicy { FILE: components/egress/pkg/dnsproxy/proxy_linux.go method dialerWithMark (line 37) | func (p *Proxy) dialerWithMark() *net.Dialer { FILE: components/egress/pkg/dnsproxy/proxy_other.go method dialerWithMark (line 25) | func (p *Proxy) dialerWithMark() *net.Dialer { FILE: components/egress/pkg/dnsproxy/proxy_test.go function TestProxyUpdatePolicy (line 29) | func TestProxyUpdatePolicy(t *testing.T) { function TestLoadPolicyFromEnvVar (line 48) | func TestLoadPolicyFromEnvVar(t *testing.T) { function TestExtractResolvedIPs (line 64) | func TestExtractResolvedIPs(t *testing.T) { function TestExtractResolvedIPs_EmptyOrNil (line 82) | func TestExtractResolvedIPs_EmptyOrNil(t *testing.T) { function TestSetOnResolved (line 90) | func TestSetOnResolved(t *testing.T) { function TestMaybeNotifyResolved_CallsCallbackWhenAOrAAAA (line 109) | func TestMaybeNotifyResolved_CallsCallbackWhenAOrAAAA(t *testing.T) { function TestMaybeNotifyResolved_NoCallWhenOnResolvedNil (line 139) | func TestMaybeNotifyResolved_NoCallWhenOnResolvedNil(t *testing.T) { function TestMaybeNotifyResolved_NoCallWhenNoAOrAAAA (line 148) | func TestMaybeNotifyResolved_NoCallWhenNoAOrAAAA(t *testing.T) { FILE: components/egress/pkg/events/broadcaster.go constant defaultQueueSize (line 26) | defaultQueueSize = 128 type BlockedEvent (line 29) | type BlockedEvent struct type Subscriber (line 35) | type Subscriber interface type BroadcasterConfig (line 40) | type BroadcasterConfig struct type Broadcaster (line 45) | type Broadcaster struct method AddSubscriber (line 69) | func (b *Broadcaster) AddSubscriber(sub Subscriber) { method Publish (line 95) | func (b *Broadcaster) Publish(event BlockedEvent) { method Close (line 113) | func (b *Broadcaster) Close() { function NewBroadcaster (line 56) | func NewBroadcaster(ctx context.Context, cfg BroadcasterConfig) *Broadca... FILE: components/egress/pkg/events/events_test.go type captureSubscriber (line 30) | type captureSubscriber struct method HandleBlocked (line 34) | func (c *captureSubscriber) HandleBlocked(_ context.Context, ev Blocke... type blockingSubscriber (line 38) | type blockingSubscriber struct method HandleBlocked (line 42) | func (b *blockingSubscriber) HandleBlocked(_ context.Context, ev Block... function TestBroadcasterFanout (line 48) | func TestBroadcasterFanout(t *testing.T) { function TestBroadcasterDropsWhenSubscriberBackedUp (line 79) | func TestBroadcasterDropsWhenSubscriberBackedUp(t *testing.T) { function TestWebhookSubscriberSendsPayload (line 102) | func TestWebhookSubscriberSendsPayload(t *testing.T) { FILE: components/egress/pkg/events/webhook.go constant webhookSource (line 32) | webhookSource = "opensandbox-egress" constant defaultWebhookTimeout (line 33) | defaultWebhookTimeout = 5 * time.Second constant defaultWebhookRetries (line 34) | defaultWebhookRetries = 3 constant defaultWebhookBackoff (line 35) | defaultWebhookBackoff = 1 * time.Second type WebhookSubscriber (line 39) | type WebhookSubscriber struct method HandleBlocked (line 71) | func (w *WebhookSubscriber) HandleBlocked(ctx context.Context, ev Bloc... type webhookPayload (line 48) | type webhookPayload struct function NewWebhookSubscriber (line 56) | func NewWebhookSubscriber(url string) *WebhookSubscriber { FILE: components/egress/pkg/iptables/redirect.go function SetupRedirect (line 30) | func SetupRedirect(port int, exemptDst []netip.Addr) error { FILE: components/egress/pkg/log/logger.go function WithLogger (line 28) | func WithLogger(ctx context.Context, logger slogger.Logger) context.Cont... function Debugf (line 35) | func Debugf(template string, args ...any) { function Infof (line 39) | func Infof(template string, args ...any) { function Warnf (line 43) | func Warnf(template string, args ...any) { function Errorf (line 47) | func Errorf(template string, args ...any) { function Fatalf (line 51) | func Fatalf(template string, args ...any) { FILE: components/egress/pkg/nftables/dynamic.go constant dynAllowV4Set (line 25) | dynAllowV4Set = "dyn_allow_v4" constant dynAllowV6Set (line 26) | dynAllowV6Set = "dyn_allow_v6" constant dynSetTimeoutS (line 27) | dynSetTimeoutS = 300 constant minTTLSec (line 28) | minTTLSec = 60 constant maxTTLSec (line 29) | maxTTLSec = 300 type ResolvedIP (line 33) | type ResolvedIP struct function buildAddResolvedIPsScript (line 40) | func buildAddResolvedIPsScript(table string, ips []ResolvedIP) string { function clampTTL (line 60) | func clampTTL(d time.Duration) int { FILE: components/egress/pkg/nftables/manager.go constant tableName (line 30) | tableName = "opensandbox" constant chainName (line 31) | chainName = "egress" constant allowV4Set (line 32) | allowV4Set = "allow_v4" constant allowV6Set (line 33) | allowV6Set = "allow_v6" constant denyV4Set (line 34) | denyV4Set = "deny_v4" constant denyV6Set (line 35) | denyV6Set = "deny_v6" constant dohBlockV4Set (line 36) | dohBlockV4Set = "doh_block_v4" constant dohBlockV6Set (line 37) | dohBlockV6Set = "doh_block_v6" type runner (line 40) | type runner type Options (line 43) | type Options struct type Manager (line 53) | type Manager struct method ApplyStatic (line 85) | func (m *Manager) ApplyStatic(ctx context.Context, p *policy.NetworkPo... method AddResolvedIPs (line 113) | func (m *Manager) AddResolvedIPs(ctx context.Context, ips []ResolvedIP... function NewManager (line 60) | func NewManager() *Manager { function NewManagerWithRunner (line 65) | func NewManagerWithRunner(r runner) *Manager { function NewManagerWithRunnerAndOptions (line 70) | func NewManagerWithRunnerAndOptions(r runner, opts Options) *Manager { function NewManagerWithOptions (line 75) | func NewManagerWithOptions(opts Options) *Manager { function buildRuleset (line 129) | func buildRuleset(p *policy.NetworkPolicy, opts Options) string { function writeElements (line 196) | func writeElements(b *strings.Builder, setName string, elems []string) { function defaultRunner (line 203) | func defaultRunner(ctx context.Context, script string) ([]byte, error) { function isMissingTableError (line 213) | func isMissingTableError(err error) bool { function removeDeleteTableLine (line 221) | func removeDeleteTableLine(script string) string { FILE: components/egress/pkg/nftables/manager_test.go function TestApplyStatic_BuildsRuleset_DefaultDeny (line 28) | func TestApplyStatic_BuildsRuleset_DefaultDeny(t *testing.T) { function TestApplyStatic_DefaultAllowUsesAcceptPolicy (line 62) | func TestApplyStatic_DefaultAllowUsesAcceptPolicy(t *testing.T) { function expectContains (line 83) | func expectContains(t *testing.T, s, substr string) { function TestApplyStatic_RetryWhenTableMissing (line 88) | func TestApplyStatic_RetryWhenTableMissing(t *testing.T) { function TestApplyStatic_DoHBlocklist (line 107) | func TestApplyStatic_DoHBlocklist(t *testing.T) { function TestAddResolvedIPs_BuildsDynamicElements (line 129) | func TestAddResolvedIPs_BuildsDynamicElements(t *testing.T) { function TestAddResolvedIPs_ClampsTTL (line 144) | func TestAddResolvedIPs_ClampsTTL(t *testing.T) { function TestAddResolvedIPs_EmptyNoOp (line 159) | func TestAddResolvedIPs_EmptyNoOp(t *testing.T) { FILE: components/egress/pkg/policy/policy.go constant ActionAllow (line 25) | ActionAllow = "allow" constant ActionDeny (line 26) | ActionDeny = "deny" type targetKind (line 29) | type targetKind constant targetUnknown (line 32) | targetUnknown targetKind = iota constant targetDomain (line 33) | targetDomain constant targetIP (line 34) | targetIP constant targetCIDR (line 35) | targetCIDR function DefaultDenyPolicy (line 39) | func DefaultDenyPolicy() *NetworkPolicy { type NetworkPolicy (line 45) | type NetworkPolicy struct method Evaluate (line 78) | func (p *NetworkPolicy) Evaluate(domain string) string { method WithExtraAllowIPs (line 148) | func (p *NetworkPolicy) WithExtraAllowIPs(ips []netip.Addr) *NetworkPo... method StaticIPSets (line 168) | func (p *NetworkPolicy) StaticIPSets() (allowV4, allowV6, denyV4, deny... type EgressRule (line 50) | type EgressRule struct method matchesDomain (line 213) | func (r *EgressRule) matchesDomain(domain string) bool { function ParsePolicy (line 61) | func ParsePolicy(raw string) (*NetworkPolicy, error) { function ensureDefaults (line 101) | func ensureDefaults(p *NetworkPolicy) *NetworkPolicy { function normalizePolicy (line 111) | func normalizePolicy(p *NetworkPolicy) error { FILE: components/egress/pkg/policy/policy_test.go function TestParsePolicy_EmptyOrNullDefaultsDeny (line 24) | func TestParsePolicy_EmptyOrNullDefaultsDeny(t *testing.T) { function TestParsePolicy_DefaultActionFallback (line 40) | func TestParsePolicy_DefaultActionFallback(t *testing.T) { function TestParsePolicy_EmptyEgressDefaultsDeny (line 47) | func TestParsePolicy_EmptyEgressDefaultsDeny(t *testing.T) { function TestParsePolicy_IPAndCIDRSupported (line 54) | func TestParsePolicy_IPAndCIDRSupported(t *testing.T) { function TestParsePolicy_InvalidAction (line 75) | func TestParsePolicy_InvalidAction(t *testing.T) { function TestParsePolicy_EmptyTargetError (line 80) | func TestParsePolicy_EmptyTargetError(t *testing.T) { function TestWithExtraAllowIPs (line 85) | func TestWithExtraAllowIPs(t *testing.T) { FILE: components/egress/policy_server.go type policyUpdater (line 36) | type policyUpdater interface type enforcementReporter (line 42) | type enforcementReporter interface type nftApplier (line 47) | type nftApplier interface function startPolicyServer (line 58) | func startPolicyServer(ctx context.Context, proxy policyUpdater, nft nft... type policyServer (line 101) | type policyServer struct method handlePolicy (line 119) | func (s *policyServer) handlePolicy(w http.ResponseWriter, r *http.Req... method handleGet (line 137) | func (s *policyServer) handleGet(w http.ResponseWriter) { method handlePost (line 148) | func (s *policyServer) handlePost(w http.ResponseWriter, r *http.Reque... method handlePatch (line 207) | func (s *policyServer) handlePatch(w http.ResponseWriter, r *http.Requ... method authorize (line 272) | func (s *policyServer) authorize(r *http.Request) bool { type policyStatusResponse (line 111) | type policyStatusResponse struct function writeJSON (line 286) | func writeJSON(w http.ResponseWriter, status int, payload any) { function modeFromPolicy (line 292) | func modeFromPolicy(p *policy.NetworkPolicy) string { function mergeEgressRules (line 306) | func mergeEgressRules(base, additions []policy.EgressRule) []policy.Egre... function mergeKey (line 335) | func mergeKey(r policy.EgressRule) string { FILE: components/egress/policy_server_test.go type stubProxy (line 31) | type stubProxy struct method CurrentPolicy (line 35) | func (s *stubProxy) CurrentPolicy() *policy.NetworkPolicy { method UpdatePolicy (line 39) | func (s *stubProxy) UpdatePolicy(p *policy.NetworkPolicy) { type stubNft (line 43) | type stubNft struct method ApplyStatic (line 49) | func (s *stubNft) ApplyStatic(_ context.Context, p *policy.NetworkPoli... method AddResolvedIPs (line 55) | func (s *stubNft) AddResolvedIPs(_ context.Context, _ []nftables.Resol... function TestHandlePolicy_AppliesNftAndUpdatesProxy (line 59) | func TestHandlePolicy_AppliesNftAndUpdatesProxy(t *testing.T) { function TestHandlePolicy_NftFailureReturns500 (line 78) | func TestHandlePolicy_NftFailureReturns500(t *testing.T) { function TestHandleGet_ReturnsEnforcementMode (line 95) | func TestHandleGet_ReturnsEnforcementMode(t *testing.T) { function TestHandlePatch_MergesAndApplies (line 111) | func TestHandlePatch_MergesAndApplies(t *testing.T) { function TestHandlePatch_DomainCaseOverride (line 143) | func TestHandlePatch_DomainCaseOverride(t *testing.T) { FILE: components/egress/tests/webhook-server.py class WebhookHandler (line 41) | class WebhookHandler(http.server.BaseHTTPRequestHandler): method _send (line 42) | def _send(self, code: int = 200, body: str = "ok") -> None: method do_POST (line 48) | def do_POST(self) -> None: # noqa: N802 (BaseHTTPRequestHandler API) method log_message (line 75) | def log_message(self, *args) -> None: function main (line 79) | def main() -> None: FILE: components/execd/main.go function main (line 33) | func main() { FILE: components/execd/pkg/flag/parser.go constant jupyterHostEnv (line 28) | jupyterHostEnv = "JUPYTER_HOST" constant jupyterTokenEnv (line 29) | jupyterTokenEnv = "JUPYTER_TOKEN" constant gracefulShutdownTimeoutEnv (line 30) | gracefulShutdownTimeoutEnv = "EXECD_API_GRACE_SHUTDOWN" function InitFlags (line 34) | func InitFlags() { FILE: components/execd/pkg/jupyter/auth/auth.go type Auth (line 23) | type Auth struct method Validate (line 45) | func (a *Auth) Validate() string { method AddAuthToURL (line 56) | func (a *Auth) AddAuthToURL(baseURL string) (string, error) { function NewTokenAuth (line 30) | func NewTokenAuth(token string) *Auth { function NewBasicAuth (line 37) | func NewBasicAuth(username, password string) *Auth { FILE: components/execd/pkg/jupyter/auth/auth_test.go function TestTokenAuthentication (line 23) | func TestTokenAuthentication(t *testing.T) { function TestBasicAuthentication (line 56) | func TestBasicAuthentication(t *testing.T) { function TestAuthValidation (line 89) | func TestAuthValidation(t *testing.T) { FILE: components/execd/pkg/jupyter/auth/client.go type Client (line 24) | type Client struct method Do (line 38) | func (c *Client) Do(req *http.Request) (*http.Response, error) { method Get (line 53) | func (c *Client) Get(url string) (*http.Response, error) { method Post (line 62) | func (c *Client) Post(url, contentType string, body io.Reader) (*http.... method Put (line 72) | func (c *Client) Put(url, contentType string, body io.Reader) (*http.R... method Delete (line 82) | func (c *Client) Delete(url string) (*http.Response, error) { function NewClient (line 30) | func NewClient(httpClient *http.Client, auth *Auth) *Client { FILE: components/execd/pkg/jupyter/auth/types.go constant AuthTypeNone (line 18) | AuthTypeNone = "none" constant AuthTypeToken (line 19) | AuthTypeToken = "token" constant AuthTypeBasic (line 20) | AuthTypeBasic = "basic" constant AuthHeaderKey (line 21) | AuthHeaderKey = "Authorization" constant AuthHeaderValuePrefix (line 22) | AuthHeaderValuePrefix = "token " constant AuthURLParamKey (line 23) | AuthURLParamKey = "token" function NewAuth (line 27) | func NewAuth() *Auth { method IsValid (line 32) | func (a *Auth) IsValid() bool { method GetAuthType (line 37) | func (a *Auth) GetAuthType() string { FILE: components/execd/pkg/jupyter/client.go type Client (line 30) | type Client struct method SetToken (line 86) | func (c *Client) SetToken(token string) { method SetBasicAuth (line 91) | func (c *Client) SetBasicAuth(username, password string) { method ValidateAuth (line 97) | func (c *Client) ValidateAuth() (string, error) { method GetKernelSpecs (line 106) | func (c *Client) GetKernelSpecs() (*kernel.KernelSpecs, error) { method ListKernels (line 111) | func (c *Client) ListKernels() ([]*kernel.Kernel, error) { method GetKernel (line 116) | func (c *Client) GetKernel(kernelId string) (*kernel.Kernel, error) { method StartKernel (line 121) | func (c *Client) StartKernel(name string) (*kernel.Kernel, error) { method RestartKernel (line 126) | func (c *Client) RestartKernel(kernelId string) (bool, error) { method InterruptKernel (line 131) | func (c *Client) InterruptKernel(kernelId string) error { method ShutdownKernel (line 136) | func (c *Client) ShutdownKernel(kernelId string, restart bool) error { method ListSessions (line 141) | func (c *Client) ListSessions() ([]*session.Session, error) { method GetSession (line 146) | func (c *Client) GetSession(sessionId string) (*session.Session, error) { method CreateSession (line 151) | func (c *Client) CreateSession(name, ipynb, kernel string) (*session.S... method ModifySession (line 156) | func (c *Client) ModifySession(sessionId, name, path, kernel string) (... method DeleteSession (line 161) | func (c *Client) DeleteSession(sessionId string) error { method ConnectToKernel (line 166) | func (c *Client) ConnectToKernel(kernelId string) error { method DisconnectFromKernel (line 187) | func (c *Client) DisconnectFromKernel(kernelId string) { method ExecuteCodeStream (line 192) | func (c *Client) ExecuteCodeStream(kernelId, code string, resultChan c... method ExecuteCodeWithCallback (line 197) | func (c *Client) ExecuteCodeWithCallback(code string, handler execute.... type ClientOption (line 40) | type ClientOption function WithHTTPClient (line 43) | func WithHTTPClient(client *http.Client) ClientOption { function WithToken (line 50) | func WithToken(token string) ClientOption { function WithBasicAuth (line 57) | func WithBasicAuth(username, password string) ClientOption { function NewClient (line 65) | func NewClient(baseURL string, options ...ClientOption) *Client { FILE: components/execd/pkg/jupyter/debug_integration_test.go function TestDebugServerIntegration (line 25) | func TestDebugServerIntegration(t *testing.T) { type debugTransport (line 140) | type debugTransport struct method RoundTrip (line 144) | func (d *debugTransport) RoundTrip(req *http.Request) (*http.Response,... FILE: components/execd/pkg/jupyter/execute/execute.go type HTTPClient (line 31) | type HTTPClient interface type Client (line 36) | type Client struct method Connect (line 70) | func (c *Client) Connect(wsURL string) error { method Disconnect (line 97) | func (c *Client) Disconnect() { method IsConnected (line 108) | func (c *Client) IsConnected() bool { method ExecuteCodeStream (line 115) | func (c *Client) ExecuteCodeStream(code string, resultChan chan *Execu... method ExecuteCodeWithCallback (line 295) | func (c *Client) ExecuteCodeWithCallback(code string, handler Callback... method registerDefaultHandlers (line 410) | func (c *Client) registerDefaultHandlers() { method registerHandler (line 415) | func (c *Client) registerHandler(msgType MessageType, handler func(*Me... method clearTemporaryHandlers (line 422) | func (c *Client) clearTemporaryHandlers() { method receiveMessages (line 430) | func (c *Client) receiveMessages() { method handleMessage (line 454) | func (c *Client) handleMessage(msg *Message) { method nextMessageID (line 469) | func (c *Client) nextMessageID() string { function NewClient (line 60) | func NewClient(baseURL string, httpClient HTTPClient) *Client { FILE: components/execd/pkg/jupyter/execute/execute_test.go function createTestServer (line 29) | func createTestServer(t *testing.T, handleFunc func(conn *websocket.Conn... function TestExecuteCodeStream (line 57) | func TestExecuteCodeStream(t *testing.T) { FILE: components/execd/pkg/jupyter/execute/executor.go type Executor (line 18) | type Executor struct method Connect (line 35) | func (e *Executor) Connect() error { method Disconnect (line 40) | func (e *Executor) Disconnect() { method ExecuteCodeStream (line 45) | func (e *Executor) ExecuteCodeStream(code string, resultChan chan *Exe... method ExecuteCodeWithCallback (line 50) | func (e *Executor) ExecuteCodeWithCallback(code string, handler Callba... function NewExecutor (line 26) | func NewExecutor(wsURL string, httpClient HTTPClient) *Executor { FILE: components/execd/pkg/jupyter/execute/types.go type MessageType (line 26) | type MessageType constant MsgExecuteRequest (line 30) | MsgExecuteRequest MessageType = "execute_request" constant MsgExecuteInput (line 33) | MsgExecuteInput MessageType = "execute_input" constant MsgExecuteResult (line 36) | MsgExecuteResult MessageType = "execute_result" constant MsgDisplayData (line 39) | MsgDisplayData MessageType = "display_data" constant MsgStream (line 42) | MsgStream MessageType = "stream" constant MsgError (line 45) | MsgError MessageType = "error" constant MsgStatus (line 48) | MsgStatus MessageType = "status" constant MsgClearOutput (line 51) | MsgClearOutput MessageType = "clear_output" constant MsgComm (line 54) | MsgComm MessageType = "comm" constant MsgCommOpen (line 57) | MsgCommOpen MessageType = "comm_open" constant MsgCommClose (line 60) | MsgCommClose MessageType = "comm_close" constant MsgCommMsg (line 63) | MsgCommMsg MessageType = "comm_msg" constant MsgKernelInfo (line 66) | MsgKernelInfo MessageType = "kernel_info_request" constant MsgKernelInfoReply (line 69) | MsgKernelInfoReply MessageType = "kernel_info_reply" constant MsgExecuteReply (line 71) | MsgExecuteReply MessageType = "execute_reply" type StreamType (line 75) | type StreamType constant StreamStdout (line 79) | StreamStdout StreamType = "stdout" constant StreamStderr (line 82) | StreamStderr StreamType = "stderr" type ExecutionState (line 86) | type ExecutionState constant StateIdle (line 90) | StateIdle ExecutionState = "idle" constant StateBusy (line 93) | StateBusy ExecutionState = "busy" constant StateStarting (line 96) | StateStarting ExecutionState = "starting" type Header (line 100) | type Header struct type Message (line 121) | type Message struct type ExecuteRequest (line 142) | type ExecuteRequest struct type StreamOutput (line 163) | type StreamOutput struct type ExecuteResult (line 172) | type ExecuteResult struct type ExecuteReply (line 183) | type ExecuteReply struct type DisplayData (line 193) | type DisplayData struct type ErrorOutput (line 202) | type ErrorOutput struct method String (line 213) | func (e *ErrorOutput) String() string { type StatusUpdate (line 222) | type StatusUpdate struct type ExecutionResult (line 228) | type ExecutionResult struct type CallbackHandler (line 249) | type CallbackHandler struct FILE: components/execd/pkg/jupyter/execute/zz_generated.deepcopy.go method DeepCopyInto (line 24) | func (in *ErrorOutput) DeepCopyInto(out *ErrorOutput) { method DeepCopy (line 34) | func (in *ErrorOutput) DeepCopy() *ErrorOutput { method DeepCopyInto (line 44) | func (in *ExecutionResult) DeepCopyInto(out *ExecutionResult) { method DeepCopy (line 65) | func (in *ExecutionResult) DeepCopy() *ExecutionResult { method DeepCopyInto (line 75) | func (in *StreamOutput) DeepCopyInto(out *StreamOutput) { method DeepCopy (line 80) | func (in *StreamOutput) DeepCopy() *StreamOutput { FILE: components/execd/pkg/jupyter/integration_test.go function TestIntegrationFlow (line 29) | func TestIntegrationFlow(t *testing.T) { FILE: components/execd/pkg/jupyter/kernel/kernel.go type Client (line 27) | type Client struct method GetKernelSpecs (line 44) | func (c *Client) GetKernelSpecs() (*KernelSpecs, error) { method ListKernels (line 76) | func (c *Client) ListKernels() ([]*Kernel, error) { method GetKernel (line 108) | func (c *Client) GetKernel(kernelId string) (*Kernel, error) { method StartKernel (line 140) | func (c *Client) StartKernel(name string) (*Kernel, error) { method RestartKernel (line 190) | func (c *Client) RestartKernel(kernelId string) (bool, error) { method InterruptKernel (line 229) | func (c *Client) InterruptKernel(kernelId string) error { method ShutdownKernel (line 256) | func (c *Client) ShutdownKernel(kernelId string, restart bool) error { function NewClient (line 36) | func NewClient(baseURL string, httpClient *http.Client) *Client { FILE: components/execd/pkg/jupyter/kernel/types.go type KernelSpecs (line 23) | type KernelSpecs struct type KernelSpecInfo (line 32) | type KernelSpecInfo struct type KernelSpecDetail (line 42) | type KernelSpecDetail struct type Kernel (line 56) | type Kernel struct type KernelStartRequest (line 74) | type KernelStartRequest struct type KernelRestartResponse (line 83) | type KernelRestartResponse struct type KernelInterruptRequest (line 98) | type KernelInterruptRequest struct type KernelShutdownRequest (line 104) | type KernelShutdownRequest struct type KernelStatus (line 110) | type KernelStatus constant KernelStatusIdle (line 114) | KernelStatusIdle KernelStatus = "idle" constant KernelStatusBusy (line 117) | KernelStatusBusy KernelStatus = "busy" constant KernelStatusStarting (line 120) | KernelStatusStarting KernelStatus = "starting" constant KernelStatusRestarting (line 123) | KernelStatusRestarting KernelStatus = "restarting" constant KernelStatusDead (line 126) | KernelStatusDead KernelStatus = "dead" FILE: components/execd/pkg/jupyter/live_integration_test.go type authTransport (line 28) | type authTransport struct method RoundTrip (line 34) | func (t *authTransport) RoundTrip(req *http.Request) (*http.Response, ... function TestLiveServerIntegration (line 44) | func TestLiveServerIntegration(t *testing.T) { function getEnv (line 337) | func getEnv(key, defaultValue string) string { function truncateString (line 346) | func truncateString(s string, maxLen int) string { function getKeys (line 354) | func getKeys(m map[string]interface{}) []string { FILE: components/execd/pkg/jupyter/session/session.go type Client (line 27) | type Client struct method ListSessions (line 44) | func (c *Client) ListSessions() ([]*Session, error) { method GetSession (line 76) | func (c *Client) GetSession(sessionId string) (*Session, error) { method CreateSession (line 108) | func (c *Client) CreateSession(name, ipynb, kernel string) (*Session, ... method ModifySession (line 163) | func (c *Client) ModifySession(sessionId, name, path, kernel string) (... method DeleteSession (line 222) | func (c *Client) DeleteSession(sessionId string) error { method CreateSessionWithOptions (line 248) | func (c *Client) CreateSessionWithOptions(options *SessionOptions) (*S... function NewClient (line 36) | func NewClient(baseURL string, httpClient *http.Client) *Client { FILE: components/execd/pkg/jupyter/session/session_test.go function TestListSessions (line 25) | func TestListSessions(t *testing.T) { function TestCreateSession (line 110) | func TestCreateSession(t *testing.T) { function TestGetSession (line 188) | func TestGetSession(t *testing.T) { FILE: components/execd/pkg/jupyter/session/types.go type Session (line 23) | type Session struct type KernelInfo (line 47) | type KernelInfo struct type SessionCreateRequest (line 65) | type SessionCreateRequest struct type KernelSpec (line 80) | type KernelSpec struct type SessionUpdateRequest (line 89) | type SessionUpdateRequest struct type SessionListResponse (line 104) | type SessionListResponse type SessionOptions (line 107) | type SessionOptions struct constant DefaultSessionType (line 125) | DefaultSessionType = "notebook" FILE: components/execd/pkg/jupyter/transport.go type AuthTransport (line 19) | type AuthTransport struct method RoundTrip (line 24) | func (t *AuthTransport) RoundTrip(req *http.Request) (*http.Response, ... FILE: components/execd/pkg/log/log.go constant logFileEnvKey (line 23) | logFileEnvKey = "EXECD_LOG_FILE" function Init (line 29) | func Init(level int) { function mapLevel (line 33) | func mapLevel(level int) string { function newLogger (line 48) | func newLogger(level string) slogger.Logger { function getLogger (line 59) | func getLogger() slogger.Logger { function Debug (line 68) | func Debug(format string, args ...any) { function Info (line 72) | func Info(format string, args ...any) { function Warn (line 76) | func Warn(format string, args ...any) { function Warning (line 81) | func Warning(format string, args ...any) { function Error (line 85) | func Error(format string, args ...any) { FILE: components/execd/pkg/runtime/bash_session.go constant envDumpStartMarker (line 40) | envDumpStartMarker = "__ENV_DUMP_START__" constant envDumpEndMarker (line 41) | envDumpEndMarker = "__ENV_DUMP_END__" constant exitMarkerPrefix (line 42) | exitMarkerPrefix = "__EXIT_CODE__:" constant pwdMarkerPrefix (line 43) | pwdMarkerPrefix = "__PWD__:" method createBashSession (line 46) | func (c *Controller) createBashSession(req *CreateContextRequest) (strin... method runBashSession (line 57) | func (c *Controller) runBashSession(ctx context.Context, request *Execut... method getBashSession (line 66) | func (c *Controller) getBashSession(sessionId string) *bashSession { method closeBashSession (line 75) | func (c *Controller) closeBashSession(sessionId string) error { method CreateBashSession (line 90) | func (c *Controller) CreateBashSession(req *CreateContextRequest) (strin... method RunInBashSession (line 94) | func (c *Controller) RunInBashSession(ctx context.Context, req *ExecuteC... method DeleteBashSession (line 98) | func (c *Controller) DeleteBashSession(sessionID string) error { function newBashSession (line 103) | func newBashSession(cwd string) *bashSession { method start (line 123) | func (s *bashSession) start() error { method trackCurrentProcess (line 135) | func (s *bashSession) trackCurrentProcess(pid int) { method untrackCurrentProcess (line 141) | func (s *bashSession) untrackCurrentProcess() { method run (line 148) | func (s *bashSession) run(ctx context.Context, request *ExecuteCodeReque... function buildWrappedScript (line 306) | func buildWrappedScript(command string, env map[string]string, cwd strin... constant maxPersistedEnvValueSize (line 354) | maxPersistedEnvValueSize = 8 * 1024 function parseExportDump (line 356) | func parseExportDump(lines []string) map[string]string { function parseExportLine (line 371) | func parseExportLine(line string) (string, string, bool) { function shellEscape (line 396) | func shellEscape(value string) string { function isValidEnvKey (line 400) | func isValidEnvKey(key string) bool { function copyEnvMap (line 420) | func copyEnvMap(src map[string]string) map[string]string { function splitEnvPair (line 432) | func splitEnvPair(kv string) (string, string, bool) { method close (line 443) | func (s *bashSession) close() error { function uuidString (line 461) | func uuidString() string { FILE: components/execd/pkg/runtime/bash_session_test.go function TestBashSession_NonZeroExitEmitsError (line 34) | func TestBashSession_NonZeroExitEmitsError(t *testing.T) { function TestBashSession_envAndExitCode (line 90) | func TestBashSession_envAndExitCode(t *testing.T) { function TestBashSession_envLargeOutputChained (line 163) | func TestBashSession_envLargeOutputChained(t *testing.T) { function TestBashSession_cwdPersistsWithoutOverride (line 216) | func TestBashSession_cwdPersistsWithoutOverride(t *testing.T) { function TestBashSession_requestCwdOverridesAfterCd (line 256) | func TestBashSession_requestCwdOverridesAfterCd(t *testing.T) { function TestBashSession_envDumpNotLeakedWhenNoTrailingNewline (line 301) | func TestBashSession_envDumpNotLeakedWhenNoTrailingNewline(t *testing.T) { function TestBashSession_envDumpNotLeakedWhenNoOutput (line 329) | func TestBashSession_envDumpNotLeakedWhenNoOutput(t *testing.T) { function TestBashSession_heredoc (line 359) | func TestBashSession_heredoc(t *testing.T) { function TestBashSession_execReplacesShell (line 413) | func TestBashSession_execReplacesShell(t *testing.T) { function TestBashSession_complexExec (line 453) | func TestBashSession_complexExec(t *testing.T) { function containsLine (line 497) | func containsLine(lines []string, target string) bool { function TestBashSession_CloseKillsRunningProcess (line 508) | func TestBashSession_CloseKillsRunningProcess(t *testing.T) { function TestBashSession_DeleteBashSessionKillsRunningProcess (line 543) | func TestBashSession_DeleteBashSessionKillsRunningProcess(t *testing.T) { function TestBashSession_CloseWithNoActiveRun (line 583) | func TestBashSession_CloseWithNoActiveRun(t *testing.T) { FILE: components/execd/pkg/runtime/bash_session_windows.go method CreateBashSession (line 28) | func (c *Controller) CreateBashSession(_ *CreateContextRequest) (string,... method RunInBashSession (line 33) | func (c *Controller) RunInBashSession(_ context.Context, _ *ExecuteCodeR... method DeleteBashSession (line 38) | func (c *Controller) DeleteBashSession(_ string) error { //nolint:revive FILE: components/execd/pkg/runtime/command.go function getShell (line 40) | func getShell() string { function buildCredential (line 47) | func buildCredential(uid, gid *uint32) (*syscall.Credential, error) { method runCommand (line 88) | func (c *Controller) runCommand(ctx context.Context, request *ExecuteCod... method runBackgroundCommand (line 215) | func (c *Controller) runBackgroundCommand(ctx context.Context, cancel co... FILE: components/execd/pkg/runtime/command_common.go method tailStdPipe (line 29) | func (c *Controller) tailStdPipe(file string, onExecute func(text string... method getCommandKernel (line 48) | func (c *Controller) getCommandKernel(sessionID string) *commandKernel { method storeCommandKernel (line 58) | func (c *Controller) storeCommandKernel(sessionID string, kernel *comman... method stdLogDescriptor (line 65) | func (c *Controller) stdLogDescriptor(session string) (io.WriteCloser, i... method combinedOutputDescriptor (line 84) | func (c *Controller) combinedOutputDescriptor(session string) (io.WriteC... method stdoutFileName (line 93) | func (c *Controller) stdoutFileName(session string) string { method stderrFileName (line 98) | func (c *Controller) stderrFileName(session string) string { method combinedOutputFileName (line 102) | func (c *Controller) combinedOutputFileName(session string) string { method readFromPos (line 107) | func (c *Controller) readFromPos(mutex *sync.Mutex, filepath string, sta... FILE: components/execd/pkg/runtime/command_status.go type CommandStatus (line 25) | type CommandStatus struct type CommandOutput (line 36) | type CommandOutput struct method commandSnapshot (line 42) | func (c *Controller) commandSnapshot(session string) *commandKernel { method GetCommandStatus (line 56) | func (c *Controller) GetCommandStatus(session string) (*CommandStatus, e... method SeekBackgroundCommandOutput (line 75) | func (c *Controller) SeekBackgroundCommandOutput(session string, cursor ... method markCommandFinished (line 113) | func (c *Controller) markCommandFinished(session string, exitCode int, e... FILE: components/execd/pkg/runtime/command_status_test.go function TestGetCommandStatus_NotFound (line 28) | func TestGetCommandStatus_NotFound(t *testing.T) { function TestGetCommandStatus_Running (line 35) | func TestGetCommandStatus_Running(t *testing.T) { function TestSeekBackgroundCommandOutput_Completed (line 79) | func TestSeekBackgroundCommandOutput_Completed(t *testing.T) { function TestSeekBackgroundCommandOutput_WithRunBackgroundCommand (line 111) | func TestSeekBackgroundCommandOutput_WithRunBackgroundCommand(t *testing... FILE: components/execd/pkg/runtime/command_test.go function TestReadFromPos_SplitsOnCRAndLF (line 34) | func TestReadFromPos_SplitsOnCRAndLF(t *testing.T) { function TestReadFromPos_LongLine (line 70) | func TestReadFromPos_LongLine(t *testing.T) { function TestReadFromPos_FlushesTrailingLine (line 86) | func TestReadFromPos_FlushesTrailingLine(t *testing.T) { function TestRunCommand_Echo (line 110) | func TestRunCommand_Echo(t *testing.T) { function TestRunCommand_Error (line 164) | func TestRunCommand_Error(t *testing.T) { function TestStdLogDescriptor_AutoCreatesTempDir (line 222) | func TestStdLogDescriptor_AutoCreatesTempDir(t *testing.T) { function TestCombinedOutputDescriptor_AutoCreatesTempDir (line 246) | func TestCombinedOutputDescriptor_AutoCreatesTempDir(t *testing.T) { FILE: components/execd/pkg/runtime/command_windows.go method runCommand (line 35) | func (c *Controller) runCommand(ctx context.Context, request *ExecuteCod... method runBackgroundCommand (line 107) | func (c *Controller) runBackgroundCommand(ctx context.Context, cancel co... FILE: components/execd/pkg/runtime/context.go method CreateContext (line 35) | func (c *Controller) CreateContext(req *CreateContextRequest) (string, e... method DeleteContext (line 69) | func (c *Controller) DeleteContext(session string) error { method GetContext (line 73) | func (c *Controller) GetContext(session string) (CodeContext, error) { method ListContext (line 84) | func (c *Controller) ListContext(language string) ([]CodeContext, error) { method DeleteLanguageContext (line 95) | func (c *Controller) DeleteLanguageContext(language Language) error { method deleteSessionAndCleanup (line 115) | func (c *Controller) deleteSessionAndCleanup(session string) error { method newContextID (line 127) | func (c *Controller) newContextID() string { method newIpynbPath (line 131) | func (c *Controller) newIpynbPath(sessionID, cwd string) (string, error) { method createDefaultLanguageJupyterContext (line 143) | func (c *Controller) createDefaultLanguageJupyterContext(language Langua... method createJupyterContext (line 177) | func (c *Controller) createJupyterContext(request CreateContextRequest) ... method storeJupyterKernel (line 216) | func (c *Controller) storeJupyterKernel(sessionID string, kernel *jupyte... method jupyterClient (line 220) | func (c *Controller) jupyterClient() *jupyter.Client { method getDefaultLanguageSession (line 233) | func (c *Controller) getDefaultLanguageSession(language Language) string { method setDefaultLanguageSession (line 242) | func (c *Controller) setDefaultLanguageSession(language Language, sessio... method deleteDefaultSessionByID (line 246) | func (c *Controller) deleteDefaultSessionByID(sessionID string) { method listAllContexts (line 255) | func (c *Controller) listAllContexts() ([]CodeContext, error) { method listLanguageContexts (line 278) | func (c *Controller) listLanguageContexts(language Language) ([]CodeCont... FILE: components/execd/pkg/runtime/context_test.go function TestListContextsAndNewIpynbPath (line 28) | func TestListContextsAndNewIpynbPath(t *testing.T) { function TestNewContextID_UniqueAndLength (line 52) | func TestNewContextID_UniqueAndLength(t *testing.T) { function TestNewIpynbPath_ErrorWhenCwdIsFile (line 64) | func TestNewIpynbPath_ErrorWhenCwdIsFile(t *testing.T) { function TestListContextUnsupportedLanguage (line 73) | func TestListContextUnsupportedLanguage(t *testing.T) { function TestDeleteContext_NotFound (line 83) | func TestDeleteContext_NotFound(t *testing.T) { function TestGetContext_NotFound (line 90) | func TestGetContext_NotFound(t *testing.T) { function TestDeleteContext_RemovesCacheOnSuccess (line 98) | func TestDeleteContext_RemovesCacheOnSuccess(t *testing.T) { function TestDeleteLanguageContext_RemovesCacheOnSuccess (line 120) | func TestDeleteLanguageContext_RemovesCacheOnSuccess(t *testing.T) { FILE: components/execd/pkg/runtime/ctrl.go type Controller (line 37) | type Controller struct method Execute (line 78) | func (c *Controller) Execute(request *ExecuteCodeRequest) error { type jupyterKernel (line 49) | type jupyterKernel struct type commandKernel (line 56) | type commandKernel struct function NewController (line 70) | func NewController(baseURL, token string) *Controller { FILE: components/execd/pkg/runtime/env.go function loadExtraEnvFromFile (line 27) | func loadExtraEnvFromFile() map[string]string { function mergeEnvs (line 58) | func mergeEnvs(base []string, extra map[string]string) []string { function mergeExtraEnvs (line 84) | func mergeExtraEnvs(fromFile, fromRequest map[string]string) map[string]... FILE: components/execd/pkg/runtime/env_test.go function TestLoadExtraEnvFromFileUnset (line 26) | func TestLoadExtraEnvFromFileUnset(t *testing.T) { function TestLoadExtraEnvFromFileParsesAndExpands (line 31) | func TestLoadExtraEnvFromFileParsesAndExpands(t *testing.T) { function TestLoadExtraEnvFromFileMissingFile (line 58) | func TestLoadExtraEnvFromFileMissingFile(t *testing.T) { function TestMergeEnvsOverlaysExtra (line 66) | func TestMergeEnvsOverlaysExtra(t *testing.T) { function TestMergeExtraEnvsMergesAndOverrides (line 85) | func TestMergeExtraEnvsMergesAndOverrides(t *testing.T) { function TestMergeExtraEnvsHandlesNilFromFile (line 97) | func TestMergeExtraEnvsHandlesNilFromFile(t *testing.T) { FILE: components/execd/pkg/runtime/helpers_test.go type stubDriver (line 31) | type stubDriver struct type stubConn (line 42) | type stubConn struct method Prepare (line 46) | func (c *stubConn) Prepare(string) (driver.Stmt, error) { return nil, ... method Close (line 47) | func (c *stubConn) Close() error { return nil } method Begin (line 48) | func (c *stubConn) Begin() (driver.Tx, error) { return nil, ... method Ping (line 50) | func (c *stubConn) Ping(context.Context) error { method ExecContext (line 54) | func (c *stubConn) ExecContext(_ context.Context, _ string, _ []driver... method QueryContext (line 62) | func (c *stubConn) QueryContext(_ context.Context, _ string, _ []drive... type stubRows (line 73) | type stubRows struct method Columns (line 79) | func (r *stubRows) Columns() []string { return r.columns } method Close (line 80) | func (r *stubRows) Close() error { return nil } method Next (line 81) | func (r *stubRows) Next(dest []driver.Value) error { type stubConnector (line 93) | type stubConnector struct method Connect (line 97) | func (c *stubConnector) Connect(context.Context) (driver.Conn, error) { method Driver (line 101) | func (c *stubConnector) Driver() driver.Driver { method Open (line 105) | func (c *stubConnector) Open(string) (driver.Conn, error) { function newStubDB (line 109) | func newStubDB(t *testing.T, d *stubDriver) *sql.DB { FILE: components/execd/pkg/runtime/interrupt.go method Interrupt (line 32) | func (c *Controller) Interrupt(sessionID string) error { method killPid (line 49) | func (c *Controller) killPid(pid int) error { FILE: components/execd/pkg/runtime/interrupt_windows.go method Interrupt (line 30) | func (c *Controller) Interrupt(sessionID string) error { method killPid (line 45) | func (c *Controller) killPid(pid int) error { FILE: components/execd/pkg/runtime/jupyter.go method runJupyter (line 27) | func (c *Controller) runJupyter(ctx context.Context, request *ExecuteCod... method runJupyterCode (line 60) | func (c *Controller) runJupyterCode(ctx context.Context, kernel *jupyter... method setWorkingDir (line 131) | func (c *Controller) setWorkingDir(_ *jupyterKernel, _ *CreateContextReq... method getJupyterKernel (line 136) | func (c *Controller) getJupyterKernel(sessionID string) *jupyterKernel { method searchKernel (line 146) | func (c *Controller) searchKernel(client *jupyter.Client, language Langu... FILE: components/execd/pkg/runtime/language.go type Language (line 18) | type Language method String (line 33) | func (l Language) String() string { constant Command (line 21) | Command Language = "command" constant Bash (line 22) | Bash Language = "bash" constant Python (line 23) | Python Language = "python" constant Java (line 24) | Java Language = "java" constant JavaScript (line 25) | JavaScript Language = "javascript" constant TypeScript (line 26) | TypeScript Language = "typescript" constant Go (line 27) | Go Language = "go" constant SQL (line 28) | SQL Language = "sql" constant BackgroundCommand (line 29) | BackgroundCommand Language = "background-command" FILE: components/execd/pkg/runtime/sql.go type QueryResult (line 35) | type QueryResult struct method runSQL (line 42) | func (c *Controller) runSQL(ctx context.Context, request *ExecuteCodeReq... method executeSelectSQLQuery (line 67) | func (c *Controller) executeSelectSQLQuery(ctx context.Context, request ... method executeUpdateSQLQuery (line 131) | func (c *Controller) executeUpdateSQLQuery(ctx context.Context, request ... method getQueryType (line 161) | func (c *Controller) getQueryType(query string) string { method initDB (line 170) | func (c *Controller) initDB() error { FILE: components/execd/pkg/runtime/sql_test.go function TestExecuteSelectSQLQuery_Success (line 28) | func TestExecuteSelectSQLQuery_Success(t *testing.T) { function TestExecuteUpdateSQLQuery_Success (line 78) | func TestExecuteUpdateSQLQuery_Success(t *testing.T) { FILE: components/execd/pkg/runtime/types.go type ExecuteResultHook (line 26) | type ExecuteResultHook struct type ExecuteCodeRequest (line 37) | type ExecuteCodeRequest struct method SetDefaultHooks (line 50) | func (req *ExecuteCodeRequest) SetDefaultHooks() { type CreateContextRequest (line 77) | type CreateContextRequest struct type CodeContext (line 82) | type CodeContext struct type bashSessionConfig (line 88) | type bashSessionConfig struct type bashSession (line 100) | type bashSession struct FILE: components/execd/pkg/runtime/types_test.go function TestExecuteCodeRequest_SetDefaultHooks (line 24) | func TestExecuteCodeRequest_SetDefaultHooks(t *testing.T) { FILE: components/execd/pkg/util/glob/index.go function findUnescapedByteIndex (line 17) | func findUnescapedByteIndex(s string, c byte, allowEscaping bool) int { function findMatchedClosingAltIndex (line 31) | func findMatchedClosingAltIndex(s string, allowEscaping bool) int { function findMatchedClosingBracketIndex (line 36) | func findMatchedClosingBracketIndex(s string, allowEscaping bool) int { function findNextCommaIndex (line 41) | func findNextCommaIndex(s string, allowEscaping bool) int { function findMatchedClosingSymbolsIndex (line 58) | func findMatchedClosingSymbolsIndex(s string, allowEscaping bool, left, ... FILE: components/execd/pkg/util/glob/match.go function PathMatch (line 30) | func PathMatch(pattern, name string) (bool, error) { function matchWithSeparator (line 34) | func matchWithSeparator(pattern, name string, separator rune, validate b... function doMatchWithSeparator (line 39) | func doMatchWithSeparator(pattern, name string, separator rune, validate... function isZeroLengthPattern (line 280) | func isZeroLengthPattern(pattern string, separator rune) (ret bool, err ... FILE: components/execd/pkg/util/glob/match_benchmark_test.go function BenchmarkPathMatch (line 22) | func BenchmarkPathMatch(b *testing.B) { FILE: components/execd/pkg/util/glob/match_test.go type MatchTest (line 31) | type MatchTest struct function TestValidatePattern (line 224) | func TestValidatePattern(t *testing.T) { function testValidatePatternWith (line 230) | func testValidatePatternWith(t *testing.T, idx int, tt MatchTest) { function TestPathMatch (line 243) | func TestPathMatch(t *testing.T) { function testPathMatchWith (line 252) | func testPathMatchWith(t *testing.T, idx int, tt MatchTest) { function TestPathMatchFake (line 274) | func TestPathMatchFake(t *testing.T) { function testPathMatchFakeWith (line 288) | func testPathMatchFakeWith(t *testing.T, idx int, tt MatchTest) { function compareErrors (line 303) | func compareErrors(a, b error) bool { FILE: components/execd/pkg/util/glob/pattern.go function isValidPattern (line 20) | func isValidPattern(s string, separator rune) bool { FILE: components/execd/pkg/util/safego/safe.go function InitPanicLogger (line 26) | func InitPanicLogger(_ context.Context) { function init (line 45) | func init() { function Go (line 49) | func Go(f func()) { FILE: components/execd/pkg/util/safego/safe_test.go function Test_Go (line 23) | func Test_Go(t *testing.T) { FILE: components/execd/pkg/web/controller/basic.go type basicController (line 27) | type basicController struct method RespondError (line 35) | func (c *basicController) RespondError(status int, code model.ErrorCod... method RespondSuccess (line 46) | func (c *basicController) RespondSuccess(data any) { method QueryInt64 (line 54) | func (c *basicController) QueryInt64(query string, defaultValue int64)... method bindJSON (line 62) | func (c *basicController) bindJSON(target any) error { function newBasicController (line 31) | func newBasicController(ctx *gin.Context) *basicController { FILE: components/execd/pkg/web/controller/basic_test.go function TestBasicControllerRespondSuccess (line 27) | func TestBasicControllerRespondSuccess(t *testing.T) { function TestBasicControllerRespondError (line 40) | func TestBasicControllerRespondError(t *testing.T) { function setupBasicController (line 53) | func setupBasicController(method string) (*basicController, *httptest.Re... function TestRespondSuccessWritesPayload (line 59) | func TestRespondSuccessWritesPayload(t *testing.T) { function TestRespondErrorAddsCodeAndMessage (line 71) | func TestRespondErrorAddsCodeAndMessage(t *testing.T) { function TestQueryInt64 (line 83) | func TestQueryInt64(t *testing.T) { FILE: components/execd/pkg/web/controller/codeinterpreting.go function InitCodeRunner (line 35) | func InitCodeRunner() { type CodeInterpretingController (line 40) | type CodeInterpretingController struct method CreateContext (line 54) | func (c *CodeInterpretingController) CreateContext() { method InterruptCode (line 86) | func (c *CodeInterpretingController) InterruptCode() { method RunCode (line 91) | func (c *CodeInterpretingController) RunCode() { method GetContext (line 133) | func (c *CodeInterpretingController) GetContext() { method ListContexts (line 165) | func (c *CodeInterpretingController) ListContexts() { method DeleteContextsByLanguage (line 182) | func (c *CodeInterpretingController) DeleteContextsByLanguage() { method DeleteContext (line 207) | func (c *CodeInterpretingController) DeleteContext() { method CreateSession (line 242) | func (c *CodeInterpretingController) CreateSession() { method RunInSession (line 269) | func (c *CodeInterpretingController) RunInSession() { method DeleteSession (line 325) | func (c *CodeInterpretingController) DeleteSession() { method buildExecuteCodeRequest (line 358) | func (c *CodeInterpretingController) buildExecuteCodeRequest(request m... method interrupt (line 372) | func (c *CodeInterpretingController) interrupt() { function NewCodeInterpretingController (line 47) | func NewCodeInterpretingController(ctx *gin.Context) *CodeInterpretingCo... FILE: components/execd/pkg/web/controller/codeinterpreting_test.go function TestBuildExecuteCodeRequestDefaultsToCommand (line 29) | func TestBuildExecuteCodeRequestDefaultsToCommand(t *testing.T) { function TestBuildExecuteCodeRequestRespectsLanguage (line 46) | func TestBuildExecuteCodeRequestRespectsLanguage(t *testing.T) { function TestGetContext_NotFoundReturns404 (line 63) | func TestGetContext_NotFoundReturns404(t *testing.T) { function TestGetContext_MissingIDReturns400 (line 82) | func TestGetContext_MissingIDReturns400(t *testing.T) { FILE: components/execd/pkg/web/controller/command.go method RunCommand (line 30) | func (c *CodeInterpretingController) RunCommand() { method InterruptCommand (line 73) | func (c *CodeInterpretingController) InterruptCommand() { method GetCommandStatus (line 78) | func (c *CodeInterpretingController) GetCommandStatus() { method GetBackgroundCommandOutput (line 109) | func (c *CodeInterpretingController) GetBackgroundCommandOutput() { method buildExecuteCommandRequest (line 128) | func (c *CodeInterpretingController) buildExecuteCommandRequest(request ... FILE: components/execd/pkg/web/controller/command_test.go function TestBuildExecuteCommandRequestForwardsEnvs (line 29) | func TestBuildExecuteCommandRequestForwardsEnvs(t *testing.T) { function TestBuildExecuteCommandRequestForwardsEnvsBackground (line 45) | func TestBuildExecuteCommandRequestForwardsEnvsBackground(t *testing.T) { function setupCommandController (line 60) | func setupCommandController(method, path string) (*CodeInterpretingContr... function TestGetCommandStatus_MissingID (line 66) | func TestGetCommandStatus_MissingID(t *testing.T) { function TestGetBackgroundCommandOutput_MissingID (line 79) | func TestGetBackgroundCommandOutput_MissingID(t *testing.T) { FILE: components/execd/pkg/web/controller/filesystem.go type FilesystemController (line 37) | type FilesystemController struct method handleFileError (line 45) | func (c *FilesystemController) handleFileError(err error) { method GetFilesInfo (line 62) | func (c *FilesystemController) GetFilesInfo() { method RemoveFiles (line 83) | func (c *FilesystemController) RemoveFiles() { method ChmodFiles (line 100) | func (c *FilesystemController) ChmodFiles() { method RenameFiles (line 127) | func (c *FilesystemController) RenameFiles() { method MakeDirs (line 149) | func (c *FilesystemController) MakeDirs() { method RemoveDirs (line 171) | func (c *FilesystemController) RemoveDirs() { method SearchFiles (line 188) | func (c *FilesystemController) SearchFiles() { method ReplaceContent (line 283) | func (c *FilesystemController) ReplaceContent() { function NewFilesystemController (line 41) | func NewFilesystemController(ctx *gin.Context) *FilesystemController { FILE: components/execd/pkg/web/controller/filesystem_download.go method DownloadFile (line 30) | func (c *FilesystemController) DownloadFile() { function formatContentDisposition (line 88) | func formatContentDisposition(filename string) string { FILE: components/execd/pkg/web/controller/filesystem_test.go function newFilesystemController (line 31) | func newFilesystemController(t *testing.T, method, rawURL string, body [... function TestFilesystemControllerGetFilesInfo (line 38) | func TestFilesystemControllerGetFilesInfo(t *testing.T) { function TestFilesystemControllerSearchFiles (line 57) | func TestFilesystemControllerSearchFiles(t *testing.T) { function TestFilesystemControllerReplaceContent (line 76) | func TestFilesystemControllerReplaceContent(t *testing.T) { function TestFilesystemControllerSearchFilesHandlesAbsentDir (line 99) | func TestFilesystemControllerSearchFilesHandlesAbsentDir(t *testing.T) { function TestReplaceContentFailsUnknownFile (line 108) | func TestReplaceContentFailsUnknownFile(t *testing.T) { function TestFormatContentDisposition (line 122) | func TestFormatContentDisposition(t *testing.T) { FILE: components/execd/pkg/web/controller/filesystem_upload.go method UploadFile (line 30) | func (c *FilesystemController) UploadFile() { FILE: components/execd/pkg/web/controller/filesystem_windows.go type FilesystemController (line 35) | type FilesystemController struct method handleFileError (line 43) | func (c *FilesystemController) handleFileError(err error) { method GetFilesInfo (line 60) | func (c *FilesystemController) GetFilesInfo() { method RemoveFiles (line 81) | func (c *FilesystemController) RemoveFiles() { method ChmodFiles (line 98) | func (c *FilesystemController) ChmodFiles() { method RenameFiles (line 125) | func (c *FilesystemController) RenameFiles() { method MakeDirs (line 147) | func (c *FilesystemController) MakeDirs() { method RemoveDirs (line 169) | func (c *FilesystemController) RemoveDirs() { method SearchFiles (line 186) | func (c *FilesystemController) SearchFiles() { method ReplaceContent (line 269) | func (c *FilesystemController) ReplaceContent() { function NewFilesystemController (line 39) | func NewFilesystemController(ctx *gin.Context) *FilesystemController { FILE: components/execd/pkg/web/controller/metric.go type MetricController (line 33) | type MetricController struct method GetMetrics (line 42) | func (c *MetricController) GetMetrics() { method WatchMetrics (line 57) | func (c *MetricController) WatchMetrics() { method readMetrics (line 91) | func (c *MetricController) readMetrics() (*model.Metrics, error) { function NewMetricController (line 37) | func NewMetricController(ctx *gin.Context) *MetricController { FILE: components/execd/pkg/web/controller/metric_test.go function setupMetricController (line 29) | func setupMetricController(method, path string) (*MetricController, *htt... function TestReadMetrics (line 36) | func TestReadMetrics(t *testing.T) { function TestGetMetricsEndpoint (line 64) | func TestGetMetricsEndpoint(t *testing.T) { function TestWatchMetricsHeaders (line 83) | func TestWatchMetricsHeaders(t *testing.T) { function TestMetricSerialization (line 102) | func TestMetricSerialization(t *testing.T) { FILE: components/execd/pkg/web/controller/mock_test.go type mockOutput (line 22) | type mockOutput struct method Header (line 28) | func (m *mockOutput) Header() http.Header { method Write (line 35) | func (m *mockOutput) Write(b []byte) (int, error) { method WriteHeader (line 39) | func (m *mockOutput) WriteHeader(code int) { method Status (line 43) | func (m *mockOutput) Status() int { method Body (line 47) | func (m *mockOutput) Body() []byte { FILE: components/execd/pkg/web/controller/ping.go type MainController (line 20) | type MainController struct method Ping (line 29) | func (c *MainController) Ping() { function NewMainController (line 24) | func NewMainController(ctx *gin.Context) *MainController { function PingHandler (line 34) | func PingHandler(ctx *gin.Context) { FILE: components/execd/pkg/web/controller/sse.go method setupSSEResponse (line 39) | func (c *basicController) setupSSEResponse() { method setServerEventsHandler (line 49) | func (c *CodeInterpretingController) setServerEventsHandler(ctx context.... method writeSingleEvent (line 156) | func (c *CodeInterpretingController) writeSingleEvent(handler string, da... method ping (line 192) | func (c *CodeInterpretingController) ping(ctx context.Context) { FILE: components/execd/pkg/web/controller/syscall_linux.go function getFileCreateTime (line 26) | func getFileCreateTime(fileInfo os.FileInfo) time.Time { FILE: components/execd/pkg/web/controller/syscall_others.go function getFileCreateTime (line 25) | func getFileCreateTime(_ os.FileInfo) time.Time { FILE: components/execd/pkg/web/controller/test_helpers.go function newTestContext (line 25) | func newTestContext(method, path string, body []byte) (*gin.Context, *ht... FILE: components/execd/pkg/web/controller/utils.go function DeleteFile (line 34) | func DeleteFile(filePath string) error { function ChmodFile (line 59) | func ChmodFile(file string, perms model.Permission) error { function SetFileOwnership (line 78) | func SetFileOwnership(absPath string, owner string, group string) error { function RenameFile (line 119) | func RenameFile(item model.RenameFileItem) error { function MakeDir (line 151) | func MakeDir(dir string, perm model.Permission) error { function GetFileInfo (line 164) | func GetFileInfo(filePath string) (model.FileInfo, error) { function SearchFileMetadata (line 205) | func SearchFileMetadata(metadata map[string]model.FileMetadata, filePath... type httpRange (line 216) | type httpRange struct function ParseRange (line 220) | func ParseRange(s string, size int64) ([]httpRange, error) { FILE: components/execd/pkg/web/controller/utils_test.go function TestDeleteFile (line 27) | func TestDeleteFile(t *testing.T) { function TestRenameFile (line 40) | func TestRenameFile(t *testing.T) { function TestSearchFileMetadata (line 58) | func TestSearchFileMetadata(t *testing.T) { function TestParseRange (line 73) | func TestParseRange(t *testing.T) { FILE: components/execd/pkg/web/controller/utils_windows.go function DeleteFile (line 33) | func DeleteFile(filePath string) error { function ChmodFile (line 58) | func ChmodFile(file string, perms model.Permission) error { function SetFileOwnership (line 78) | func SetFileOwnership(_ string, _ string, _ string) error { function RenameFile (line 83) | func RenameFile(item model.RenameFileItem) error { function MakeDir (line 115) | func MakeDir(dir string, perm model.Permission) error { function GetFileInfo (line 128) | func GetFileInfo(filePath string) (model.FileInfo, error) { function SearchFileMetadata (line 165) | func SearchFileMetadata(metadata map[string]model.FileMetadata, filePath... type httpRange (line 176) | type httpRange struct function ParseRange (line 180) | func ParseRange(s string, size int64) ([]httpRange, error) { FILE: components/execd/pkg/web/model/codeinterpreting.go type RunCodeRequest (line 29) | type RunCodeRequest struct method Validate (line 34) | func (r *RunCodeRequest) Validate() error { type CodeContext (line 40) | type CodeContext struct type CodeContextRequest (line 45) | type CodeContextRequest struct type RunCommandRequest (line 51) | type RunCommandRequest struct method Validate (line 63) | func (r *RunCommandRequest) Validate() error { type ServerStreamEventType (line 74) | type ServerStreamEventType constant StreamEventTypeInit (line 77) | StreamEventTypeInit ServerStreamEventType = "init" constant StreamEventTypeStatus (line 78) | StreamEventTypeStatus ServerStreamEventType = "status" constant StreamEventTypeError (line 79) | StreamEventTypeError ServerStreamEventType = "error" constant StreamEventTypeStdout (line 80) | StreamEventTypeStdout ServerStreamEventType = "stdout" constant StreamEventTypeStderr (line 81) | StreamEventTypeStderr ServerStreamEventType = "stderr" constant StreamEventTypeResult (line 82) | StreamEventTypeResult ServerStreamEventType = "result" constant StreamEventTypeComplete (line 83) | StreamEventTypeComplete ServerStreamEventType = "execution_complete" constant StreamEventTypeCount (line 84) | StreamEventTypeCount ServerStreamEventType = "execution_count" constant StreamEventTypePing (line 85) | StreamEventTypePing ServerStreamEventType = "ping" type ServerStreamEvent (line 89) | type ServerStreamEvent struct method ToJSON (line 100) | func (s ServerStreamEvent) ToJSON() []byte { method Summary (line 106) | func (s ServerStreamEvent) Summary() string { function truncateString (line 127) | func truncateString(value string, maxCount int) string { FILE: components/execd/pkg/web/model/codeinterpreting_test.go function TestRunCodeRequestValidate (line 26) | func TestRunCodeRequestValidate(t *testing.T) { function TestRunCommandRequestValidate (line 36) | func TestRunCommandRequestValidate(t *testing.T) { function ptr32 (line 52) | func ptr32(v uint32) *uint32 { return &v } function TestRunCommandRequestValidateUidGid (line 54) | func TestRunCommandRequestValidateUidGid(t *testing.T) { function TestServerStreamEventToJSON (line 68) | func TestServerStreamEventToJSON(t *testing.T) { function TestServerStreamEventSummary (line 83) | func TestServerStreamEventSummary(t *testing.T) { FILE: components/execd/pkg/web/model/command.go type CommandStatusResponse (line 20) | type CommandStatusResponse struct FILE: components/execd/pkg/web/model/error.go type ErrorCode (line 17) | type ErrorCode constant ErrorCodeInvalidRequest (line 20) | ErrorCodeInvalidRequest ErrorCode = "INVALID_REQUEST_BODY" constant ErrorCodeMissingQuery (line 21) | ErrorCodeMissingQuery ErrorCode = "MISSING_QUERY" constant ErrorCodeRuntimeError (line 22) | ErrorCodeRuntimeError ErrorCode = "RUNTIME_ERROR" constant ErrorCodeInvalidFile (line 23) | ErrorCodeInvalidFile ErrorCode = "INVALID_FILE" constant ErrorCodeInvalidFileContent (line 24) | ErrorCodeInvalidFileContent ErrorCode = "INVALID_FILE_CONTENT" constant ErrorCodeInvalidFileMetadata (line 25) | ErrorCodeInvalidFileMetadata ErrorCode = "INVALID_FILE_METADATA" constant ErrorCodeFileNotFound (line 26) | ErrorCodeFileNotFound ErrorCode = "FILE_NOT_FOUND" constant ErrorCodeUnknown (line 27) | ErrorCodeUnknown ErrorCode = "UNKNOWN" constant ErrorCodeContextNotFound (line 28) | ErrorCodeContextNotFound ErrorCode = "CONTEXT_NOT_FOUND" type ErrorResponse (line 31) | type ErrorResponse struct FILE: components/execd/pkg/web/model/filesystem.go type FileInfo (line 20) | type FileInfo struct type FileMetadata (line 28) | type FileMetadata struct type Permission (line 34) | type Permission struct type RenameFileItem (line 41) | type RenameFileItem struct type ReplaceFileContentItem (line 47) | type ReplaceFileContentItem struct FILE: components/execd/pkg/web/model/header.go constant ApiAccessTokenHeader (line 19) | ApiAccessTokenHeader = "X-EXECD-ACCESS-TOKEN" FILE: components/execd/pkg/web/model/metric.go type Metrics (line 20) | type Metrics struct function NewMetrics (line 28) | func NewMetrics() *Metrics { FILE: components/execd/pkg/web/model/session.go type CreateSessionRequest (line 22) | type CreateSessionRequest struct type CreateSessionResponse (line 27) | type CreateSessionResponse struct type RunInSessionRequest (line 32) | type RunInSessionRequest struct method Validate (line 39) | func (r *RunInSessionRequest) Validate() error { FILE: components/execd/pkg/web/proxy.go function ProxyMiddleware (line 30) | func ProxyMiddleware() gin.HandlerFunc { function getClientIP (line 110) | func getClientIP(r *http.Request) string { FILE: components/execd/pkg/web/router.go function NewRouter (line 28) | func NewRouter(accessToken string) *gin.Engine { function withFilesystem (line 89) | func withFilesystem(fn func(*controller.FilesystemController)) gin.Handl... function withCode (line 95) | func withCode(fn func(*controller.CodeInterpretingController)) gin.Handl... function withMetric (line 101) | func withMetric(fn func(*controller.MetricController)) gin.HandlerFunc { function accessTokenMiddleware (line 107) | func accessTokenMiddleware(token string) gin.HandlerFunc { function logMiddleware (line 126) | func logMiddleware() gin.HandlerFunc { FILE: components/execd/tests/smoke_api.py function expect (line 47) | def expect(cond: bool, msg: str): function sse_get_command_id (line 52) | def sse_get_command_id() -> str: function wait_status (line 73) | def wait_status(cmd_id: str, timeout: float = 15.0) -> dict: function fetch_logs (line 87) | def fetch_logs(cmd_id: str, cursor: int = 0): function sse_disconnect_should_stop_ping (line 94) | def sse_disconnect_should_stop_ping(): function upload_and_download (line 130) | def upload_and_download(): function filesystem_smoke (line 146) | def filesystem_smoke(): function main (line 216) | def main(): FILE: components/ingress/main.go function main (line 36) | func main() { function withLogger (line 95) | func withLogger(ctx context.Context, logLevel string) context.Context { FILE: components/ingress/pkg/flag/parser.go function InitFlags (line 21) | func InitFlags() { FILE: components/ingress/pkg/proxy/healthz.go function Healthz (line 19) | func Healthz(w http.ResponseWriter, _ *http.Request) { FILE: components/ingress/pkg/proxy/healthz_test.go function TestHealthz (line 25) | func TestHealthz(t *testing.T) { FILE: components/ingress/pkg/proxy/host.go type Mode (line 25) | type Mode constant ModeHeader (line 30) | ModeHeader Mode = "header" constant ModeURI (line 36) | ModeURI Mode = "uri" method getSandboxHostDefinition (line 39) | func (p *Proxy) getSandboxHostDefinition(r *http.Request) (*sandboxHost,... method parseTargetHostByHeader (line 59) | func (p *Proxy) parseTargetHostByHeader(r *http.Request) string { type sandboxHost (line 72) | type sandboxHost struct method parseSandboxHost (line 78) | func (p *Proxy) parseSandboxHost(s string) (*sandboxHost, error) { method parseSandboxURI (line 97) | func (p *Proxy) parseSandboxURI(r *http.Request) (*sandboxHost, error) { FILE: components/ingress/pkg/proxy/http.go type HTTPProxy (line 23) | type HTTPProxy struct method ServeHTTP (line 29) | func (hp *HTTPProxy) ServeHTTP(w http.ResponseWriter, r *http.Request) { method newReverseProxy (line 41) | func (hp *HTTPProxy) newReverseProxy(targetHost string) (*httputil.Rev... function NewHTTPProxy (line 25) | func NewHTTPProxy() *HTTPProxy { FILE: components/ingress/pkg/proxy/http_test.go type mockProvider (line 33) | type mockProvider struct method GetEndpoint (line 38) | func (m *mockProvider) GetEndpoint(sandboxId string) (string, error) { method Start (line 48) | func (m *mockProvider) Start(_ context.Context) error { function Test_HTTPProxy (line 52) | func Test_HTTPProxy(t *testing.T) { function httpProxyWithHeaderMode (line 62) | func httpProxyWithHeaderMode(t *testing.T) { function httpProxyWithURIMode (line 136) | func httpProxyWithURIMode(t *testing.T) { function realBackendHTTPHandler (line 193) | func realBackendHTTPHandler(w http.ResponseWriter, r *http.Request) { FILE: components/ingress/pkg/proxy/logger.go function WithLogger (line 25) | func WithLogger(ctx context.Context, logger slogger.Logger) context.Cont... FILE: components/ingress/pkg/proxy/proxy.go type Proxy (line 30) | type Proxy struct method ServeHTTP (line 44) | func (p *Proxy) ServeHTTP(w http.ResponseWriter, r *http.Request) { method serve (line 92) | func (p *Proxy) serve(w http.ResponseWriter, r *http.Request) { method isWebSocketRequest (line 119) | func (p *Proxy) isWebSocketRequest(r *http.Request) bool { method resolveRealHost (line 132) | func (p *Proxy) resolveRealHost(host *sandboxHost) (string, error, int) { method getClientIP (line 152) | func (p *Proxy) getClientIP(r *http.Request) string { function NewProxy (line 36) | func NewProxy(_ context.Context, sandboxProvider sandbox.Provider, mode ... FILE: components/ingress/pkg/proxy/proxy_test.go function TestIsWebSocketRequest (line 28) | func TestIsWebSocketRequest(t *testing.T) { function TestParseSandboxHost (line 48) | func TestParseSandboxHost(t *testing.T) { function TestGetClientIP (line 68) | func TestGetClientIP(t *testing.T) { function findAvailablePort (line 86) | func findAvailablePort() (int, error) { FILE: components/ingress/pkg/proxy/websocket.go type WebSocketProxy (line 43) | type WebSocketProxy struct method ServeHTTP (line 82) | func (w *WebSocketProxy) ServeHTTP(rw http.ResponseWriter, r *http.Req... function ProxyHandler (line 65) | func ProxyHandler(target *url.URL) http.Handler { return NewWebSocketPro... function NewWebSocketProxy (line 69) | func NewWebSocketProxy(target *url.URL) *WebSocketProxy { function copyResponse (line 224) | func copyResponse(rw http.ResponseWriter, resp *http.Response) error { function copyHeader (line 233) | func copyHeader(dst, src http.Header) { FILE: components/ingress/pkg/proxy/websocket_test.go function Test_WebSocketProxy (line 32) | func Test_WebSocketProxy(t *testing.T) { function webSocketProxyWithHeaderMode (line 41) | func webSocketProxyWithHeaderMode(t *testing.T) { function webSocketProxyWithURIMode (line 133) | func webSocketProxyWithURIMode(t *testing.T) { FILE: components/ingress/pkg/renewintent/intent.go type Intent (line 19) | type Intent struct function NewIntent (line 26) | func NewIntent(sandboxID string, port int, requestURI string) Intent { FILE: components/ingress/pkg/renewintent/intent_test.go function TestNewIntent (line 24) | func TestNewIntent(t *testing.T) { function TestIntent_JSONRoundTrip (line 32) | func TestIntent_JSONRoundTrip(t *testing.T) { function TestIntent_JSONHasRequiredFields (line 44) | func TestIntent_JSONHasRequiredFields(t *testing.T) { FILE: components/ingress/pkg/renewintent/publisher.go type Publisher (line 17) | type Publisher interface FILE: components/ingress/pkg/renewintent/redis.go constant redisOpTimeout (line 31) | redisOpTimeout = 5 * time.Second constant publishWorkers (line 32) | publishWorkers = 4 constant publishChanCap (line 33) | publishChanCap = 8192 type RedisPublisherConfig (line 36) | type RedisPublisherConfig struct type intentReq (line 43) | type intentReq struct type RedisPublisher (line 49) | type RedisPublisher struct method shouldSendIntent (line 83) | func (p *RedisPublisher) shouldSendIntent(sandboxID string) bool { method PublishIntent (line 97) | func (p *RedisPublisher) PublishIntent(sandboxID string, port int, req... method doPublish (line 107) | func (p *RedisPublisher) doPublish(sandboxID string, port int, request... method runCleanupThrottle (line 152) | func (p *RedisPublisher) runCleanupThrottle(_ context.Context) { function NewRedisPublisher (line 57) | func NewRedisPublisher(ctx context.Context, client *redis.Client, cfg Re... function RedisClientFromDSN (line 141) | func RedisClientFromDSN(dsn string) (*redis.Client, error) { FILE: components/ingress/pkg/renewintent/redis_bench_test.go type nopLogger (line 27) | type nopLogger struct method Debugf (line 29) | func (nopLogger) Debugf(string, ...any) {} method Infof (line 30) | func (nopLogger) Infof(string, ...any) {} method Warnf (line 31) | func (nopLogger) Warnf(string, ...any) {} method Errorf (line 32) | func (nopLogger) Errorf(string, ...any) {} method With (line 33) | func (n nopLogger) With(...logger.Field) logger.Logger { return n } method Named (line 34) | func (n nopLogger) Named(string) logger.Logger { return n } method Sync (line 35) | func (nopLogger) Sync() error { return nil } function BenchmarkRedisPublisher_PublishIntent (line 39) | func BenchmarkRedisPublisher_PublishIntent(b *testing.B) { function BenchmarkRedisPublisher_PublishIntent_Throttled (line 70) | func BenchmarkRedisPublisher_PublishIntent_Throttled(b *testing.B) { function BenchmarkRedisPublisher_PublishIntent_ManySandboxes (line 100) | func BenchmarkRedisPublisher_PublishIntent_ManySandboxes(b *testing.B) { FILE: components/ingress/pkg/sandbox/agent_sandbox_provider.go constant agentSandboxGroup (line 38) | agentSandboxGroup = "agents.x-k8s.io" constant agentSandboxVersion (line 39) | agentSandboxVersion = "v1alpha1" constant agentSandboxResource (line 40) | agentSandboxResource = "sandboxes" constant agentSandboxConditionReady (line 42) | agentSandboxConditionReady = "Ready" constant agentSandboxNamePrefix (line 43) | agentSandboxNamePrefix = "sandbox" type AgentSandboxProvider (line 53) | type AgentSandboxProvider struct method GetEndpoint (line 160) | func (a *AgentSandboxProvider) GetEndpoint(sandboxId string) (string, ... method Start (line 205) | func (a *AgentSandboxProvider) Start(ctx context.Context) error { method checkSandboxReadyCondition (line 219) | func (a *AgentSandboxProvider) checkSandboxReadyCondition(status map[s... function NewAgentSandboxProvider (line 61) | func NewAgentSandboxProvider(config *rest.Config, namespace string, resy... function newAgentSandboxProviderWithClient (line 71) | func newAgentSandboxProviderWithClient(dyn dynamic.Interface, namespace ... function agentSandboxResourceName (line 95) | func agentSandboxResourceName(sandboxId string) string { function toDNS1035Label (line 99) | func toDNS1035Label(value, prefix string) string { function startsWithLetter (line 130) | func startsWithLetter(value string) bool { function legacyAgentSandboxName (line 138) | func legacyAgentSandboxName(sandboxId string) string { function resourceNameCandidates (line 146) | func resourceNameCandidates(sandboxId string) []string { FILE: components/ingress/pkg/sandbox/agent_sandbox_provider_test.go function buildUnstructuredSandbox (line 32) | func buildUnstructuredSandbox(name, namespace string) *unstructured.Unst... function TestAgentSandboxProvider_Start_Success (line 53) | func TestAgentSandboxProvider_Start_Success(t *testing.T) { function TestAgentSandboxProvider_Start_ContextCancelled (line 88) | func TestAgentSandboxProvider_Start_ContextCancelled(t *testing.T) { function TestAgentSandboxProvider_GetEndpoint_ServiceFQDN (line 113) | func TestAgentSandboxProvider_GetEndpoint_ServiceFQDN(t *testing.T) { function TestAgentSandboxProvider_GetEndpoint_NotFound (line 155) | func TestAgentSandboxProvider_GetEndpoint_NotFound(t *testing.T) { function TestAgentSandboxProvider_GetEndpoint_NoServiceFQDN (line 183) | func TestAgentSandboxProvider_GetEndpoint_NoServiceFQDN(t *testing.T) { function TestAgentSandboxProvider_GetEndpoint_NotReadyCondition (line 217) | func TestAgentSandboxProvider_GetEndpoint_NotReadyCondition(t *testing.T) { function TestToDNS1035Label_HashOnSymbolOnlyIDs (line 261) | func TestToDNS1035Label_HashOnSymbolOnlyIDs(t *testing.T) { function TestToDNS1035Label_PrefixesDigitStart (line 270) | func TestToDNS1035Label_PrefixesDigitStart(t *testing.T) { function TestToDNS1035Label_TruncatesWithHashSuffix (line 275) | func TestToDNS1035Label_TruncatesWithHashSuffix(t *testing.T) { FILE: components/ingress/pkg/sandbox/batchsandbox_provider.go type BatchSandboxProvider (line 34) | type BatchSandboxProvider struct method Start (line 69) | func (p *BatchSandboxProvider) Start(ctx context.Context) error { method GetEndpoint (line 81) | func (p *BatchSandboxProvider) GetEndpoint(sandboxId string) (string, ... function NewBatchSandboxProvider (line 42) | func NewBatchSandboxProvider( FILE: components/ingress/pkg/sandbox/batchsandbox_provider_test.go function TestBatchSandboxProvider_WithFakeInformer (line 36) | func TestBatchSandboxProvider_WithFakeInformer(t *testing.T) { function TestBatchSandboxProvider_MissingAnnotation (line 130) | func TestBatchSandboxProvider_MissingAnnotation(t *testing.T) { function TestBatchSandboxProvider_InvalidAnnotation (line 181) | func TestBatchSandboxProvider_InvalidAnnotation(t *testing.T) { function TestBatchSandboxProvider_DynamicUpdate (line 234) | func TestBatchSandboxProvider_DynamicUpdate(t *testing.T) { function TestBatchSandboxProvider_StartCacheSyncFailure (line 295) | func TestBatchSandboxProvider_StartCacheSyncFailure(t *testing.T) { function TestBatchSandboxProvider_GetEndpointNonNotFoundError (line 327) | func TestBatchSandboxProvider_GetEndpointNonNotFoundError(t *testing.T) { function ptr (line 381) | func ptr(i int32) *int32 { FILE: components/ingress/pkg/sandbox/errors_test.go function TestErrSandboxNotReadyWrapping (line 24) | func TestErrSandboxNotReadyWrapping(t *testing.T) { FILE: components/ingress/pkg/sandbox/factory.go type DefaultProviderFactory (line 25) | type DefaultProviderFactory struct method CreateProvider (line 41) | func (f *DefaultProviderFactory) CreateProvider(providerType ProviderT... function NewProviderFactory (line 32) | func NewProviderFactory(config *rest.Config, namespace string, resyncPer... FILE: components/ingress/pkg/sandbox/provider.go type ProviderType (line 22) | type ProviderType method String (line 29) | func (tpy ProviderType) String() string { return string(tpy) } constant ProviderTypeBatchSandbox (line 25) | ProviderTypeBatchSandbox ProviderType = "batchsandbox" constant ProviderTypeAgentSandbox (line 26) | ProviderTypeAgentSandbox ProviderType = "agent-sandbox" type Provider (line 43) | type Provider interface type ProviderFactory (line 58) | type ProviderFactory interface FILE: components/internal/logger/logger.go type Field (line 18) | type Field struct type Logger (line 28) | type Logger interface FILE: components/internal/logger/zap.go constant envLogOutput (line 25) | envLogOutput = "OPENSANDBOX_LOG_OUTPUT" type Config (line 32) | type Config struct function New (line 39) | func New(cfg Config) (Logger, error) { function MustNew (line 61) | func MustNew(cfg Config) Logger { function AsZapSugared (line 70) | func AsZapSugared(l Logger) (*zap.SugaredLogger, bool) { type zapLogger (line 78) | type zapLogger struct method Debugf (line 83) | func (l *zapLogger) Debugf(template string, args ...any) { method Infof (line 87) | func (l *zapLogger) Infof(template string, args ...any) { method Warnf (line 91) | func (l *zapLogger) Warnf(template string, args ...any) { method Errorf (line 95) | func (l *zapLogger) Errorf(template string, args ...any) { method With (line 99) | func (l *zapLogger) With(fields ...Field) Logger { method Named (line 111) | func (l *zapLogger) Named(name string) Logger { method Sync (line 116) | func (l *zapLogger) Sync() error { function parseLevel (line 120) | func parseLevel(level string) zapcore.Level { function applyEnvOutputs (line 135) | func applyEnvOutputs(cfg Config) Config { function splitAndTrim (line 151) | func splitAndTrim(s string) []string { FILE: components/internal/version/version.go function EchoVersion (line 34) | func EchoVersion(componentName string) { FILE: docs/.vitepress/scripts/docs-manifest.mjs function ensureDir (line 220) | function ensureDir(dirPath) { function rmIfExists (line 224) | function rmIfExists(targetPath) { function walkMarkdownFiles (line 230) | function walkMarkdownFiles(absDirPath, acc = []) { function shouldIgnoreRepoPath (line 251) | function shouldIgnoreRepoPath(repoRelPath) { function toRepoRelative (line 269) | function toRepoRelative(absPath) { function readHeadingTitle (line 273) | function readHeadingTitle(absPath, fallbackTitle) { function normalizeTitleWhitespace (line 297) | function normalizeTitleWhitespace(title) { function shortenOsepTitle (line 301) | function shortenOsepTitle(repoRelPath, title, locale = "en") { function shortenTitleByRule (line 335) | function shortenTitleByRule(title) { function shortenTitleByRuleZh (line 346) | function shortenTitleByRuleZh(title) { function getShortTitle (line 357) | function getShortTitle(repoRelPath, currentTitle, locale = "en") { function toYamlString (line 373) | function toYamlString(value) { function normalizeSlugFromPath (line 377) | function normalizeSlugFromPath(relPath) { function resolveZhCandidate (line 392) | function resolveZhCandidate(repoRelPath, readmeCandidatesByDir) { function buildGeneratedAssetPath (line 403) | function buildGeneratedAssetPath(locale, routeSlug, resolvedRepoPath) { function normalizeLinkTarget (line 420) | function normalizeLinkTarget(target, sourceDirRel, isImage, routeSlug, l... function rewriteRelativeLinks (line 455) | function rewriteRelativeLinks(markdown, sourceRelPath, routeSlug, locale) { function renderPageSource (line 482) | function renderPageSource({ locale, title, sourceRelPath, routeSlug, pas... function prettifyPathTitle (line 502) | function prettifyPathTitle(repoRelPath) { function collectAutoEntries (line 518) | function collectAutoEntries() { function buildEntries (line 603) | function buildEntries() { function toSidebarItems (line 617) | function toSidebarItems(entries, locale) { function buildOverviewSidebar (line 626) | function buildOverviewSidebar(entries, locale) { function buildModulesSidebar (line 648) | function buildModulesSidebar(entries, locale) { function buildExamplesSidebar (line 673) | function buildExamplesSidebar(entries, locale) { function buildCommunitySidebar (line 681) | function buildCommunitySidebar(entries, locale) { function buildSidebarByPath (line 709) | function buildSidebarByPath(entries, locale) { function writeGeneratedPages (line 730) | function writeGeneratedPages(entries) { function buildManifest (line 786) | function buildManifest() { function loadManifest (line 818) | function loadManifest() { FILE: examples/agent-sandbox/main.py function main (line 23) | async def main() -> None: FILE: examples/aio-sandbox/main.py function check_aio_process (line 34) | def check_aio_process(sbx: SandboxSync) -> bool: function main (line 63) | def main() -> None: FILE: examples/chrome/main.go function main (line 30) | func main() { function run (line 38) | func run(ctx context.Context) error { type Chrome (line 80) | type Chrome struct method Run (line 83) | func (c *Chrome) Run(ctx context.Context) error { method WaitForReady (line 101) | func (c *Chrome) WaitForReady(ctx context.Context) error { type VNCServer (line 146) | type VNCServer struct method Run (line 149) | func (v *VNCServer) Run(ctx context.Context) error { method WaitForReady (line 173) | func (v *VNCServer) WaitForReady(ctx context.Context) error { FILE: examples/chrome/main.py function main (line 22) | async def main(): FILE: examples/claude-code/main.py function _required_env (line 23) | def _required_env(name: str) -> str: function _print_execution_logs (line 30) | async def _print_execution_logs(execution) -> None: function main (line 39) | async def main() -> None: FILE: examples/code-interpreter/main.py function main (line 24) | async def main() -> None: FILE: examples/code-interpreter/main_use_pool.py function main (line 24) | async def main() -> None: FILE: examples/codex-cli/main.py function _required_env (line 23) | def _required_env(name: str) -> str: function _print_execution_logs (line 30) | async def _print_execution_logs(execution) -> None: function main (line 39) | async def main() -> None: FILE: examples/desktop/main.py function _required_env (line 24) | def _required_env(name: str) -> str: function _print_logs (line 31) | async def _print_logs(label: str, execution) -> None: function main (line 40) | async def main() -> None: FILE: examples/docker-ossfs-volume-mount/main.py function _required_env (line 48) | def _required_env(name: str) -> str: function build_ossfs (line 55) | def build_ossfs() -> OSSFS: function print_exec (line 64) | async def print_exec(sandbox: Sandbox, command: str) -> str: function demo_basic_mount (line 77) | async def demo_basic_mount(config: ConnectionConfig, image: str, run_id:... function demo_cross_sandbox_sharing (line 107) | async def demo_cross_sandbox_sharing(config: ConnectionConfig, image: st... function demo_subpath_mounts (line 153) | async def demo_subpath_mounts(config: ConnectionConfig, image: str, run_... function main (line 209) | async def main() -> None: FILE: examples/docker-pvc-volume-mount/main.py function print_exec (line 64) | async def print_exec(sandbox: Sandbox, command: str) -> str | None: function ensure_named_volume (line 76) | def ensure_named_volume() -> None: function demo_readwrite_mount (line 107) | async def demo_readwrite_mount(config: ConnectionConfig, image: str) -> ... function demo_readonly_mount (line 162) | async def demo_readonly_mount(config: ConnectionConfig, image: str) -> N... function demo_cross_sandbox_sharing (line 211) | async def demo_cross_sandbox_sharing(config: ConnectionConfig, image: st... function demo_subpath_mount (line 269) | async def demo_subpath_mount(config: ConnectionConfig, image: str) -> None: function main (line 324) | async def main() -> None: FILE: examples/gemini-cli/main.py function _required_env (line 23) | def _required_env(name: str) -> str: function _print_execution_logs (line 30) | async def _print_execution_logs(execution) -> None: function main (line 39) | async def main() -> None: FILE: examples/google-adk/main.py function _required_env (line 29) | def _required_env(name: str) -> str: function main (line 36) | async def main() -> None: FILE: examples/host-volume-mount/main.py function print_exec (line 60) | async def print_exec(sandbox: Sandbox, command: str) -> str | None: function demo_readwrite_mount (line 72) | async def demo_readwrite_mount(config: ConnectionConfig, image: str, hos... function demo_readonly_mount (line 131) | async def demo_readonly_mount(config: ConnectionConfig, image: str, host... function demo_subpath_mount (line 184) | async def demo_subpath_mount(config: ConnectionConfig, image: str, host_... function main (line 236) | async def main() -> None: FILE: examples/kimi-cli/main.py function _required_env (line 23) | def _required_env(name: str) -> str: function _print_execution_logs (line 30) | async def _print_execution_logs(execution) -> None: function main (line 39) | async def main() -> None: FILE: examples/kubernetes-pvc-volume-mount/main.py function basic_pvc_mount (line 60) | async def basic_pvc_mount(): function main (line 120) | async def main(): FILE: examples/langgraph/main.py class WorkflowState (line 25) | class WorkflowState(TypedDict): function _configure_anthropic_env (line 37) | def _configure_anthropic_env() -> None: function _build_llm (line 54) | def _build_llm() -> ChatAnthropic: function _format_execution (line 65) | def _format_execution(execution) -> str: function create_sandbox (line 83) | async def create_sandbox(state: WorkflowState) -> WorkflowState: function prepare_workspace (line 108) | async def prepare_workspace(state: WorkflowState) -> WorkflowState: function run_job (line 128) | async def run_job(state: WorkflowState) -> WorkflowState: function decide_next (line 159) | def decide_next(state: WorkflowState) -> str: function inspect_results (line 168) | async def inspect_results(state: WorkflowState) -> WorkflowState: function cleanup_sandbox (line 188) | async def cleanup_sandbox(state: WorkflowState) -> WorkflowState: function main (line 200) | async def main() -> None: FILE: examples/nullclaw/main.py function check_nullclaw (line 24) | def check_nullclaw(sbx: SandboxSync) -> bool: function main (line 52) | def main() -> None: FILE: examples/openclaw/main.py function check_openclaw (line 25) | def check_openclaw(sbx: SandboxSync) -> bool: function main (line 53) | def main() -> None: FILE: examples/playwright/main.py function _required_env (line 24) | def _required_env(name: str) -> str: function _print_logs (line 31) | async def _print_logs(label: str, execution) -> None: function main (line 40) | async def main() -> None: FILE: examples/rl-training/main.py function _load_requirements (line 25) | def _load_requirements() -> str: function _training_script (line 30) | def _training_script() -> str: function _print_execution_logs (line 79) | async def _print_execution_logs(execution) -> None: function _execution_failed (line 88) | def _execution_failed(execution) -> bool: function _run_command (line 92) | async def _run_command(sandbox: Sandbox, command: str) -> bool: function _with_python_env (line 98) | def _with_python_env(command: str) -> str: function _ensure_pip (line 109) | async def _ensure_pip(sandbox: Sandbox) -> bool: function _install_requirements (line 122) | async def _install_requirements(sandbox: Sandbox) -> bool: function main (line 136) | async def main() -> None: FILE: examples/vscode/main.py function _required_env (line 24) | def _required_env(name: str) -> str: function _print_logs (line 31) | async def _print_logs(label: str, execution) -> None: function main (line 40) | async def main() -> None: FILE: kubernetes/apis/sandbox/v1alpha1/batchsandbox_types.go type BatchSandboxSpec (line 24) | type BatchSandboxSpec struct type TaskResourcePolicy (line 75) | type TaskResourcePolicy constant TaskResourcePolicyRetain (line 78) | TaskResourcePolicyRetain TaskResourcePolicy = "Retain" constant TaskResourcePolicyRelease (line 79) | TaskResourcePolicyRelease TaskResourcePolicy = "Release" type BatchSandboxStatus (line 83) | type BatchSandboxStatus struct type BatchSandbox (line 121) | type BatchSandbox struct type BatchSandboxList (line 132) | type BatchSandboxList struct function init (line 138) | func init() { type TaskTemplateSpec (line 143) | type TaskTemplateSpec struct type TaskSpec (line 148) | type TaskSpec struct type ProcessTask (line 157) | type ProcessTask struct type TaskStatus (line 175) | type TaskStatus struct type TaskState (line 187) | type TaskState struct type TaskStateWaiting (line 200) | type TaskStateWaiting struct type TaskStateRunning (line 210) | type TaskStateRunning struct type TaskStateTerminated (line 217) | type TaskStateTerminated struct FILE: kubernetes/apis/sandbox/v1alpha1/groupversion_info.go function Resource (line 40) | func Resource(resource string) schema.GroupResource { FILE: kubernetes/apis/sandbox/v1alpha1/pool_types.go type PoolSpec (line 26) | type PoolSpec struct type CapacitySpec (line 37) | type CapacitySpec struct type PoolStatus (line 57) | type PoolStatus struct type Pool (line 79) | type Pool struct type PoolList (line 90) | type PoolList struct function init (line 96) | func init() { FILE: kubernetes/apis/sandbox/v1alpha1/zz_generated.deepcopy.go method DeepCopyInto (line 27) | func (in *BatchSandbox) DeepCopyInto(out *BatchSandbox) { method DeepCopy (line 36) | func (in *BatchSandbox) DeepCopy() *BatchSandbox { method DeepCopyObject (line 46) | func (in *BatchSandbox) DeepCopyObject() runtime.Object { method DeepCopyInto (line 54) | func (in *BatchSandboxList) DeepCopyInto(out *BatchSandboxList) { method DeepCopy (line 68) | func (in *BatchSandboxList) DeepCopy() *BatchSandboxList { method DeepCopyObject (line 78) | func (in *BatchSandboxList) DeepCopyObject() runtime.Object { method DeepCopyInto (line 86) | func (in *BatchSandboxSpec) DeepCopyInto(out *BatchSandboxSpec) { method DeepCopy (line 129) | func (in *BatchSandboxSpec) DeepCopy() *BatchSandboxSpec { method DeepCopyInto (line 139) | func (in *BatchSandboxStatus) DeepCopyInto(out *BatchSandboxStatus) { method DeepCopy (line 144) | func (in *BatchSandboxStatus) DeepCopy() *BatchSandboxStatus { method DeepCopyInto (line 154) | func (in *CapacitySpec) DeepCopyInto(out *CapacitySpec) { method DeepCopy (line 159) | func (in *CapacitySpec) DeepCopy() *CapacitySpec { method DeepCopyInto (line 169) | func (in *Pool) DeepCopyInto(out *Pool) { method DeepCopy (line 178) | func (in *Pool) DeepCopy() *Pool { method DeepCopyObject (line 188) | func (in *Pool) DeepCopyObject() runtime.Object { method DeepCopyInto (line 196) | func (in *PoolList) DeepCopyInto(out *PoolList) { method DeepCopy (line 210) | func (in *PoolList) DeepCopy() *PoolList { method DeepCopyObject (line 220) | func (in *PoolList) DeepCopyObject() runtime.Object { method DeepCopyInto (line 228) | func (in *PoolSpec) DeepCopyInto(out *PoolSpec) { method DeepCopy (line 239) | func (in *PoolSpec) DeepCopy() *PoolSpec { method DeepCopyInto (line 249) | func (in *PoolStatus) DeepCopyInto(out *PoolStatus) { method DeepCopy (line 254) | func (in *PoolStatus) DeepCopy() *PoolStatus { method DeepCopyInto (line 264) | func (in *ProcessTask) DeepCopyInto(out *ProcessTask) { method DeepCopy (line 286) | func (in *ProcessTask) DeepCopy() *ProcessTask { method DeepCopyInto (line 296) | func (in *TaskSpec) DeepCopyInto(out *TaskSpec) { method DeepCopy (line 311) | func (in *TaskSpec) DeepCopy() *TaskSpec { method DeepCopyInto (line 321) | func (in *TaskState) DeepCopyInto(out *TaskState) { method DeepCopy (line 341) | func (in *TaskState) DeepCopy() *TaskState { method DeepCopyInto (line 351) | func (in *TaskStateRunning) DeepCopyInto(out *TaskStateRunning) { method DeepCopy (line 357) | func (in *TaskStateRunning) DeepCopy() *TaskStateRunning { method DeepCopyInto (line 367) | func (in *TaskStateTerminated) DeepCopyInto(out *TaskStateTerminated) { method DeepCopy (line 374) | func (in *TaskStateTerminated) DeepCopy() *TaskStateTerminated { method DeepCopyInto (line 384) | func (in *TaskStateWaiting) DeepCopyInto(out *TaskStateWaiting) { method DeepCopy (line 389) | func (in *TaskStateWaiting) DeepCopy() *TaskStateWaiting { method DeepCopyInto (line 399) | func (in *TaskStatus) DeepCopyInto(out *TaskStatus) { method DeepCopy (line 406) | func (in *TaskStatus) DeepCopy() *TaskStatus { method DeepCopyInto (line 416) | func (in *TaskTemplateSpec) DeepCopyInto(out *TaskTemplateSpec) { method DeepCopy (line 422) | func (in *TaskTemplateSpec) DeepCopy() *TaskTemplateSpec { FILE: kubernetes/cmd/controller/main.go function init (line 50) | func init() { function main (line 58) | func main() { FILE: kubernetes/cmd/task-executor/main.go function main (line 35) | func main() { FILE: kubernetes/examples/controller/main.go type Controller (line 40) | type Controller struct method Run (line 107) | func (c *Controller) Run(ctx context.Context, workers int) error { method runWorker (line 127) | func (c *Controller) runWorker(ctx context.Context) { method processNextWorkItem (line 132) | func (c *Controller) processNextWorkItem(ctx context.Context) bool { function NewController (line 56) | func NewController( function DemonstrateClientsetUsage (line 144) | func DemonstrateClientsetUsage(ctx context.Context, client clientset.Int... function DemonstrateListerUsage (line 309) | func DemonstrateListerUsage( function main (line 370) | func main() { FILE: kubernetes/examples/task-executor/main.go function main (line 26) | func main() { function getTaskState (line 85) | func getTaskState(task *taskexecutor.Task) string { FILE: kubernetes/hack/pool-perf.py class PoolPerformanceTester (line 30) | class PoolPerformanceTester: method __init__ (line 31) | def __init__(self, pool_name, pool_size, replicas_per_bsb, total_bsb_c... method create_pool_manifest (line 47) | def create_pool_manifest(self, size): method create_bsb_manifest (line 67) | def create_bsb_manifest(self, name): method setup_pool (line 78) | async def setup_pool(self): method create_bsb (line 106) | async def create_bsb(self, index): method wait_for_allocation (line 119) | async def wait_for_allocation(self, name): method run (line 140) | async def run(self): method print_report (line 155) | def print_report(self, total_duration): method cleanup (line 177) | def cleanup(self): FILE: kubernetes/internal/controller/allocator.go type AllocationStore (line 37) | type AllocationStore interface type annoAllocationStore (line 42) | type annoAllocationStore struct method GetAllocation (line 52) | func (store *annoAllocationStore) GetAllocation(ctx context.Context, p... method SetAllocation (line 72) | func (store *annoAllocationStore) SetAllocation(ctx context.Context, p... function NewAnnoAllocationStore (line 46) | func NewAnnoAllocationStore(client client.Client) AllocationStore { type AllocationSyncer (line 105) | type AllocationSyncer interface type annoAllocationSyncer (line 110) | type annoAllocationSyncer struct method SetAllocation (line 120) | func (syncer *annoAllocationSyncer) SetAllocation(ctx context.Context,... method GetAllocation (line 139) | func (syncer *annoAllocationSyncer) GetAllocation(ctx context.Context,... method GetRelease (line 156) | func (syncer *annoAllocationSyncer) GetRelease(ctx context.Context, sa... function NewAnnoAllocationSyncer (line 114) | func NewAnnoAllocationSyncer(client client.Client) AllocationSyncer { type AllocSpec (line 173) | type AllocSpec struct type AllocStatus (line 182) | type AllocStatus struct type Allocator (line 191) | type Allocator interface type defaultAllocator (line 205) | type defaultAllocator struct method Schedule (line 217) | func (allocator *defaultAllocator) Schedule(ctx context.Context, spec ... method initAllocation (line 254) | func (allocator *defaultAllocator) initAllocation(ctx context.Context,... method allocate (line 266) | func (allocator *defaultAllocator) allocate(ctx context.Context, statu... method doAllocate (line 289) | func (allocator *defaultAllocator) doAllocate(ctx context.Context, sta... method deallocate (line 334) | func (allocator *defaultAllocator) deallocate(ctx context.Context, sta... method doDeallocate (line 367) | func (allocator *defaultAllocator) doDeallocate(ctx context.Context, s... method getPodAllocation (line 393) | func (allocator *defaultAllocator) getPodAllocation(ctx context.Contex... method PersistPoolAllocation (line 404) | func (allocator *defaultAllocator) PersistPoolAllocation(ctx context.C... method syncAllocResult (line 410) | func (allocator *defaultAllocator) syncAllocResult(ctx context.Context... method doSyncAllocResult (line 428) | func (allocator *defaultAllocator) doSyncAllocResult(ctx context.Conte... function NewDefaultAllocator (line 210) | func NewDefaultAllocator(client client.Client) Allocator { FILE: kubernetes/internal/controller/allocator_mock.go type MockAllocationStore (line 17) | type MockAllocationStore struct method EXPECT (line 35) | func (m *MockAllocationStore) EXPECT() *MockAllocationStoreMockRecorder { method GetAllocation (line 40) | func (m *MockAllocationStore) GetAllocation(ctx context.Context, pool ... method SetAllocation (line 55) | func (m *MockAllocationStore) SetAllocation(ctx context.Context, pool ... type MockAllocationStoreMockRecorder (line 23) | type MockAllocationStoreMockRecorder struct method GetAllocation (line 49) | func (mr *MockAllocationStoreMockRecorder) GetAllocation(ctx, pool int... method SetAllocation (line 63) | func (mr *MockAllocationStoreMockRecorder) SetAllocation(ctx, pool, al... function NewMockAllocationStore (line 28) | func NewMockAllocationStore(ctrl *gomock.Controller) *MockAllocationStore { type MockAllocationSyncer (line 69) | type MockAllocationSyncer struct method EXPECT (line 87) | func (m *MockAllocationSyncer) EXPECT() *MockAllocationSyncerMockRecor... method GetAllocation (line 92) | func (m *MockAllocationSyncer) GetAllocation(ctx context.Context, sand... method GetRelease (line 107) | func (m *MockAllocationSyncer) GetRelease(ctx context.Context, sandbox... method SetAllocation (line 122) | func (m *MockAllocationSyncer) SetAllocation(ctx context.Context, sand... type MockAllocationSyncerMockRecorder (line 75) | type MockAllocationSyncerMockRecorder struct method GetAllocation (line 101) | func (mr *MockAllocationSyncerMockRecorder) GetAllocation(ctx, sandbox... method GetRelease (line 116) | func (mr *MockAllocationSyncerMockRecorder) GetRelease(ctx, sandbox in... method SetAllocation (line 130) | func (mr *MockAllocationSyncerMockRecorder) SetAllocation(ctx, sandbox... function NewMockAllocationSyncer (line 80) | func NewMockAllocationSyncer(ctrl *gomock.Controller) *MockAllocationSyn... type MockAllocator (line 136) | type MockAllocator struct method EXPECT (line 154) | func (m *MockAllocator) EXPECT() *MockAllocatorMockRecorder { method Schedule (line 159) | func (m *MockAllocator) Schedule(ctx context.Context, spec *AllocSpec)... type MockAllocatorMockRecorder (line 142) | type MockAllocatorMockRecorder struct method Schedule (line 168) | func (mr *MockAllocatorMockRecorder) Schedule(ctx, spec interface{}) *... function NewMockAllocator (line 147) | func NewMockAllocator(ctrl *gomock.Controller) *MockAllocator { FILE: kubernetes/internal/controller/allocator_test.go function TestAllocatorSchedule (line 30) | func TestAllocatorSchedule(t *testing.T) { FILE: kubernetes/internal/controller/apis.go constant AnnoAllocStatusKey (line 27) | AnnoAllocStatusKey = "sandbox.opensandbox.io/alloc-status" constant AnnoAllocReleaseKey (line 28) | AnnoAllocReleaseKey = "sandbox.opensandbox.io/alloc-release" constant LabelBatchSandboxPodIndexKey (line 29) | LabelBatchSandboxPodIndexKey = "batch-sandbox.sandbox.opensandbox.io/pod... constant AnnoPoolAllocStatusKey (line 31) | AnnoPoolAllocStatusKey = "pool.opensandbox.io/alloc-status" constant AnnoPoolAllocGenerationKey (line 32) | AnnoPoolAllocGenerationKey = "pool.opensandbox.io/alloc-generation" constant FinalizerTaskCleanup (line 34) | FinalizerTaskCleanup = "batch-sandbox.sandbox.opensandbox.io/task-cleanup" type SandboxAllocation (line 40) | type SandboxAllocation struct type AllocationRelease (line 44) | type AllocationRelease struct type PoolAllocation (line 48) | type PoolAllocation struct function parseSandboxAllocation (line 52) | func parseSandboxAllocation(obj metav1.Object) (SandboxAllocation, error) { function setSandboxAllocation (line 62) | func setSandboxAllocation(obj metav1.Object, alloc SandboxAllocation) { function parseSandboxReleased (line 69) | func parseSandboxReleased(obj metav1.Object) (AllocationRelease, error) { FILE: kubernetes/internal/controller/batchsandbox_controller.go type BatchSandboxReconciler (line 62) | type BatchSandboxReconciler struct method Reconcile (line 84) | func (r *BatchSandboxReconciler) Reconcile(ctx context.Context, req ct... method listPods (line 274) | func (r *BatchSandboxReconciler) listPods(ctx context.Context, poolStr... method getTaskScheduler (line 320) | func (r *BatchSandboxReconciler) getTaskScheduler(ctx context.Context,... method deleteTaskScheduler (line 354) | func (r *BatchSandboxReconciler) deleteTaskScheduler(ctx context.Conte... method scheduleTasks (line 361) | func (r *BatchSandboxReconciler) scheduleTasks(ctx context.Context, tS... method getTasksCleanupUnfinished (line 417) | func (r *BatchSandboxReconciler) getTasksCleanupUnfinished(batchSbx *s... method releasePods (line 427) | func (r *BatchSandboxReconciler) releasePods(ctx context.Context, batc... method scaleBatchSandbox (line 461) | func (r *BatchSandboxReconciler) scaleBatchSandbox(ctx context.Context... method updateStatus (line 540) | func (r *BatchSandboxReconciler) updateStatus(batchSandbox *sandboxv1a... method SetupWithManager (line 552) | func (r *BatchSandboxReconciler) SetupWithManager(mgr ctrl.Manager) er... function calPodIndex (line 250) | func calPodIndex(poolStrategy strategy.PoolStrategy, batchSbx *sandboxv1... function parseIndex (line 529) | func parseIndex(pod *corev1.Pod) (int, error) { FILE: kubernetes/internal/controller/batchsandbox_controller_test.go function init (line 57) | func init() { function randomIPv4 (line 470) | func randomIPv4() net.IP { function TestBatchSandboxReconciler_scheduleTasks (line 593) | func TestBatchSandboxReconciler_scheduleTasks(t *testing.T) { function Test_parseIndex (line 699) | func Test_parseIndex(t *testing.T) { function Test_calPodIndex (line 747) | func Test_calPodIndex(t *testing.T) { FILE: kubernetes/internal/controller/pool_controller.go constant defaultRetryTime (line 53) | defaultRetryTime = 5 * time.Second constant LabelPoolName (line 57) | LabelPoolName = "sandbox.opensandbox.io/pool-name" constant LabelPoolRevision (line 58) | LabelPoolRevision = "sandbox.opensandbox.io/pool-revision" type PoolReconciler (line 66) | type PoolReconciler struct method Reconcile (line 81) | func (r *PoolReconciler) Reconcile(ctx context.Context, req ctrl.Reque... method reconcilePool (line 143) | func (r *PoolReconciler) reconcilePool(ctx context.Context, pool *sand... method calculateRevision (line 214) | func (r *PoolReconciler) calculateRevision(pool *sandboxv1alpha1.Pool)... method SetupWithManager (line 225) | func (r *PoolReconciler) SetupWithManager(mgr ctrl.Manager) error { method scheduleSandbox (line 298) | func (r *PoolReconciler) scheduleSandbox(ctx context.Context, pool *sa... method updatePool (line 317) | func (r *PoolReconciler) updatePool(latestRevision string, pods []*cor... method scalePool (line 353) | func (r *PoolReconciler) scalePool(ctx context.Context, args *scaleArg... method updatePoolStatus (line 406) | func (r *PoolReconciler) updatePoolStatus(ctx context.Context, latestR... method pickPodsToDelete (line 432) | func (r *PoolReconciler) pickPodsToDelete(pods []*corev1.Pod, idlePodN... method createPoolPod (line 469) | func (r *PoolReconciler) createPoolPod(ctx context.Context, pool *sand... type scaleArgs (line 343) | type scaleArgs struct FILE: kubernetes/internal/controller/pool_controller_test.go function getSandboxAllocation (line 491) | func getSandboxAllocation(obj kclient.Object) (*SandboxAllocation, error) { function getPoolAllocation (line 508) | func getPoolAllocation(pool *sandboxv1alpha1.Pool) (*PoolAllocation, err... FILE: kubernetes/internal/controller/strategy/pool_strategy.go type PoolStrategy (line 17) | type PoolStrategy interface FILE: kubernetes/internal/controller/strategy/pool_strategy_default.go type DefaultPoolStrategy (line 21) | type DefaultPoolStrategy struct method IsPooledMode (line 31) | func (s *DefaultPoolStrategy) IsPooledMode() bool { function NewDefaultPoolStrategy (line 25) | func NewDefaultPoolStrategy(batchSandbox *sandboxv1alpha1.BatchSandbox) ... FILE: kubernetes/internal/controller/strategy/pool_strategy_factory.go function NewPoolStrategy (line 21) | func NewPoolStrategy(batchSbx *sandboxv1alpha1.BatchSandbox) PoolStrategy { FILE: kubernetes/internal/controller/strategy/pool_strategy_test.go function TestDefaultPoolStrategy_IsPooledMode (line 27) | func TestDefaultPoolStrategy_IsPooledMode(t *testing.T) { function TestNewPoolStrategy (line 72) | func TestNewPoolStrategy(t *testing.T) { function getTypeName (line 102) | func getTypeName(i interface{}) string { FILE: kubernetes/internal/controller/strategy/task_scheduling_strategy.go type TaskSchedulingStrategy (line 24) | type TaskSchedulingStrategy interface FILE: kubernetes/internal/controller/strategy/task_scheduling_strategy_default.go type DefaultTaskSchedulingStrategy (line 28) | type DefaultTaskSchedulingStrategy struct method NeedTaskScheduling (line 40) | func (s *DefaultTaskSchedulingStrategy) NeedTaskScheduling() bool { method GenerateTaskSpecs (line 45) | func (s *DefaultTaskSchedulingStrategy) GenerateTaskSpecs() ([]*api.Ta... method getTaskSpec (line 59) | func (s *DefaultTaskSchedulingStrategy) getTaskSpec(idx int) (*api.Tas... function NewDefaultTaskSchedulingStrategy (line 33) | func NewDefaultTaskSchedulingStrategy(batchSbx *sandboxv1alpha1.BatchSan... FILE: kubernetes/internal/controller/strategy/task_scheduling_strategy_default_test.go function TestDefaultTaskSchedulingStrategy_NeedTaskScheduling (line 28) | func TestDefaultTaskSchedulingStrategy_NeedTaskScheduling(t *testing.T) { function TestDefaultTaskSchedulingStrategy_getTaskSpec (line 63) | func TestDefaultTaskSchedulingStrategy_getTaskSpec(t *testing.T) { FILE: kubernetes/internal/controller/strategy/task_scheduling_strategy_factory.go function NewTaskSchedulingStrategy (line 23) | func NewTaskSchedulingStrategy(batchSbx *sandboxv1alpha1.BatchSandbox) T... FILE: kubernetes/internal/controller/suite_test.go function TestControllers (line 54) | func TestControllers(t *testing.T) { function startTestManager (line 118) | func startTestManager(ctx context.Context, mgr manager.Manager) *sync.Wa... function getFirstFoundEnvTestBinaryDir (line 147) | func getFirstFoundEnvTestBinaryDir() string { FILE: kubernetes/internal/scheduler/default_scheduler.go type taskSpec (line 41) | type taskSpec struct type taskNode (line 46) | type taskNode struct method GetPodName (line 64) | func (t *taskNode) GetPodName() string { method GetState (line 68) | func (t *taskNode) GetState() TaskState { method IsResourceReleased (line 72) | func (t *taskNode) IsResourceReleased() bool { method isTaskCompleted (line 76) | func (t *taskNode) isTaskCompleted() bool { method isTaskDeleted (line 80) | func (t *taskNode) isTaskDeleted() bool { method transSchState (line 84) | func (t *taskNode) transSchState(to string, log logr.Logger) { method transTaskState (line 99) | func (t *taskNode) transTaskState(to TaskState, log logr.Logger) { constant stateReleasing (line 133) | stateReleasing = "releasing" constant stateReleased (line 134) | stateReleased = "released" constant stateUnknown (line 135) | stateUnknown = "unknown" type taskClient (line 138) | type taskClient interface constant defaultTimeout (line 144) | defaultTimeout time.Duration = 3 * time.Second constant defaultTaskPort (line 145) | defaultTaskPort = "5758" constant defaultSchConcurrency (line 146) | defaultSchConcurrency int = 10 function newTaskClient (line 149) | func newTaskClient(ip string) taskClient { function fmtEndpoint (line 153) | func fmtEndpoint(podIP string) string { type defaultTaskScheduler (line 157) | type defaultTaskScheduler struct method Schedule (line 208) | func (sch *defaultTaskScheduler) Schedule() error { method UpdatePods (line 214) | func (sch *defaultTaskScheduler) UpdatePods(pods []*corev1.Pod) { method ListTask (line 218) | func (sch *defaultTaskScheduler) ListTask() []Task { method StopTask (line 226) | func (sch *defaultTaskScheduler) StopTask() []Task { method collectTaskStatus (line 258) | func (sch *defaultTaskScheduler) collectTaskStatus(taskNodes []*taskNo... method scheduleTaskNodes (line 317) | func (sch *defaultTaskScheduler) scheduleTaskNodes() error { method refreshFreePods (line 340) | func (sch *defaultTaskScheduler) refreshFreePods() { function newTaskScheduler (line 174) | func newTaskScheduler(name string, tasks []*api.Task, pods []*corev1.Pod... function indexByName (line 200) | func indexByName(taskNodes []*taskNode) map[string]*taskNode { function initTaskNodes (line 238) | func initTaskNodes(tasks []*api.Task) ([]*taskNode, error) { function parseTaskState (line 280) | func parseTaskState(task *api.Task) TaskState { function parseProcessTaskState (line 290) | func parseProcessTaskState(status *api.ProcessStatus) TaskState { function parsePodTaskState (line 303) | func parsePodTaskState(status *corev1.PodStatus) TaskState { function assignTaskNodes (line 359) | func assignTaskNodes(taskNodes []*taskNode, freePods []*corev1.Pod, log ... function needRelease (line 376) | func needRelease(tNode *taskNode, policy sandboxv1alpha1.TaskResourcePol... function scheduleSingleTaskNode (line 387) | func scheduleSingleTaskNode(tNode *taskNode, taskClientCreator func(endp... function setTask (line 426) | func setTask(client taskClient, task *api.Task, log logr.Logger) (*api.T... FILE: kubernetes/internal/scheduler/default_scheduler_mock.go type MocktaskClient (line 18) | type MocktaskClient struct method EXPECT (line 36) | func (m *MocktaskClient) EXPECT() *MocktaskClientMockRecorder { method Get (line 41) | func (m *MocktaskClient) Get(ctx context.Context) (*api.Task, error) { method Set (line 56) | func (m *MocktaskClient) Set(ctx context.Context, task *api.Task) (*ap... type MocktaskClientMockRecorder (line 24) | type MocktaskClientMockRecorder struct method Get (line 50) | func (mr *MocktaskClientMockRecorder) Get(ctx interface{}) *gomock.Call { method Set (line 65) | func (mr *MocktaskClientMockRecorder) Set(ctx, task interface{}) *gomo... function NewMocktaskClient (line 29) | func NewMocktaskClient(ctrl *gomock.Controller) *MocktaskClient { FILE: kubernetes/internal/scheduler/default_scheduler_test.go type mockLogger (line 33) | type mockLogger struct method Init (line 35) | func (m mockLogger) Init(info logr.RuntimeInfo) ... method Info (line 36) | func (m mockLogger) Info(level int, msg string, keysAndValues ...inter... method Error (line 37) | func (m mockLogger) Error(err error, msg string, keysAndValues ...inte... method Enabled (line 38) | func (m mockLogger) Enabled(level int) bool ... method WithValues (line 39) | func (m mockLogger) WithValues(keysAndValues ...interface{}) logr.LogS... method WithName (line 40) | func (m mockLogger) WithName(name string) logr.LogSink ... function Test_scheduleSingleTaskNode (line 44) | func Test_scheduleSingleTaskNode(t *testing.T) { function Test_assignTaskNodes (line 223) | func Test_assignTaskNodes(t *testing.T) { function Test_refreshFreePods (line 317) | func Test_refreshFreePods(t *testing.T) { function Test_collectTaskStatus (line 453) | func Test_collectTaskStatus(t *testing.T) { function Test_indexByName (line 696) | func Test_indexByName(t *testing.T) { function Test_scheduleTaskNodes (line 786) | func Test_scheduleTaskNodes(t *testing.T) { function Test_parseTaskState (line 1136) | func Test_parseTaskState(t *testing.T) { function Test_initTaskNodes (line 1198) | func Test_initTaskNodes(t *testing.T) { FILE: kubernetes/internal/scheduler/interface.go type TaskScheduler (line 25) | type TaskScheduler interface function NewTaskScheduler (line 32) | func NewTaskScheduler(name string, tasks []*apis.Task, pods []*corev1.Po... FILE: kubernetes/internal/scheduler/mock/interface.go type MockTaskScheduler (line 17) | type MockTaskScheduler struct method EXPECT (line 35) | func (m *MockTaskScheduler) EXPECT() *MockTaskSchedulerMockRecorder { method ListTask (line 40) | func (m *MockTaskScheduler) ListTask() []scheduler.Task { method Schedule (line 54) | func (m *MockTaskScheduler) Schedule() error { method StopTask (line 68) | func (m *MockTaskScheduler) StopTask() []scheduler.Task { method UpdatePods (line 82) | func (m *MockTaskScheduler) UpdatePods(pod []*v1.Pod) { type MockTaskSchedulerMockRecorder (line 23) | type MockTaskSchedulerMockRecorder struct method ListTask (line 48) | func (mr *MockTaskSchedulerMockRecorder) ListTask() *gomock.Call { method Schedule (line 62) | func (mr *MockTaskSchedulerMockRecorder) Schedule() *gomock.Call { method StopTask (line 76) | func (mr *MockTaskSchedulerMockRecorder) StopTask() *gomock.Call { method UpdatePods (line 88) | func (mr *MockTaskSchedulerMockRecorder) UpdatePods(pod interface{}) *... function NewMockTaskScheduler (line 28) | func NewMockTaskScheduler(ctrl *gomock.Controller) *MockTaskScheduler { FILE: kubernetes/internal/scheduler/mock/types.go type MockTask (line 16) | type MockTask struct method EXPECT (line 34) | func (m *MockTask) EXPECT() *MockTaskMockRecorder { method GetName (line 39) | func (m *MockTask) GetName() string { method GetPodName (line 53) | func (m *MockTask) GetPodName() string { method GetState (line 67) | func (m *MockTask) GetState() scheduler.TaskState { method IsResourceReleased (line 81) | func (m *MockTask) IsResourceReleased() bool { type MockTaskMockRecorder (line 22) | type MockTaskMockRecorder struct method GetName (line 47) | func (mr *MockTaskMockRecorder) GetName() *gomock.Call { method GetPodName (line 61) | func (mr *MockTaskMockRecorder) GetPodName() *gomock.Call { method GetState (line 75) | func (mr *MockTaskMockRecorder) GetState() *gomock.Call { method IsResourceReleased (line 89) | func (mr *MockTaskMockRecorder) IsResourceReleased() *gomock.Call { function NewMockTask (line 27) | func NewMockTask(ctrl *gomock.Controller) *MockTask { FILE: kubernetes/internal/scheduler/recovery.go method recover (line 28) | func (sch *defaultTaskScheduler) recover() error { method recoverTaskNodesStatus (line 37) | func (sch *defaultTaskScheduler) recoverTaskNodesStatus() error { function recoverOneTaskNode (line 72) | func recoverOneTaskNode(tNode *taskNode, currentTask *api.Task, ip strin... FILE: kubernetes/internal/scheduler/recovery_test.go function Test_recoverOneTaskNode (line 32) | func Test_recoverOneTaskNode(t *testing.T) { function Test_defaultTaskScheduler_recoverTaskNodesStatus (line 123) | func Test_defaultTaskScheduler_recoverTaskNodesStatus(t *testing.T) { FILE: kubernetes/internal/scheduler/status_collector.go type taskClientCreator (line 27) | type taskClientCreator function newTaskStatusCollector (line 29) | func newTaskStatusCollector(creator taskClientCreator, logger logr.Logge... type taskStatusCollector (line 34) | type taskStatusCollector interface type defaultTaskStatusCollector (line 39) | type defaultTaskStatusCollector struct method Collect (line 44) | func (s *defaultTaskStatusCollector) Collect(ctx context.Context, ipLi... FILE: kubernetes/internal/scheduler/status_collector_mock.go type MocktaskStatusCollector (line 17) | type MocktaskStatusCollector struct method EXPECT (line 35) | func (m *MocktaskStatusCollector) EXPECT() *MocktaskStatusCollectorMoc... method Collect (line 40) | func (m *MocktaskStatusCollector) Collect(ctx context.Context, ipList ... type MocktaskStatusCollectorMockRecorder (line 23) | type MocktaskStatusCollectorMockRecorder struct method Collect (line 48) | func (mr *MocktaskStatusCollectorMockRecorder) Collect(ctx, ipList int... function NewMocktaskStatusCollector (line 28) | func NewMocktaskStatusCollector(ctrl *gomock.Controller) *MocktaskStatus... FILE: kubernetes/internal/scheduler/types.go type Task (line 17) | type Task interface type TaskState (line 26) | type TaskState constant RunningTaskState (line 29) | RunningTaskState TaskState = "RUNNING" constant FailedTaskState (line 30) | FailedTaskState TaskState = "FAILED" constant SucceedTaskState (line 31) | SucceedTaskState TaskState = "SUCCEED" constant UnknownTaskState (line 32) | UnknownTaskState TaskState = "UNKNOWN" FILE: kubernetes/internal/task-executor/config/config.go type Config (line 27) | type Config struct method LoadFromEnv (line 59) | func (c *Config) LoadFromEnv() { method LoadFromFlags (line 77) | func (c *Config) LoadFromFlags() { method InitKlog (line 91) | func (c *Config) InitKlog() error { function NewConfig (line 42) | func NewConfig() *Config { FILE: kubernetes/internal/task-executor/manager/interface.go type TaskManager (line 24) | type TaskManager interface FILE: kubernetes/internal/task-executor/manager/task_manager.go constant maxConcurrentTasks (line 34) | maxConcurrentTasks = 1 type taskManager (line 37) | type taskManager struct method isTaskActive (line 75) | func (m *taskManager) isTaskActive(task *types.Task) bool { method countActiveTasks (line 87) | func (m *taskManager) countActiveTasks() int { method Create (line 97) | func (m *taskManager) Create(ctx context.Context, task *types.Task) (*... method Sync (line 148) | func (m *taskManager) Sync(ctx context.Context, desired []*types.Task)... method Get (line 189) | func (m *taskManager) Get(ctx context.Context, name string) (*types.Ta... method List (line 205) | func (m *taskManager) List(ctx context.Context) ([]*types.Task, error) { method Delete (line 213) | func (m *taskManager) Delete(ctx context.Context, name string) error { method softDeleteLocked (line 230) | func (m *taskManager) softDeleteLocked(ctx context.Context, task *type... method Start (line 247) | func (m *taskManager) Start(ctx context.Context) { method Stop (line 259) | func (m *taskManager) Stop() { method createTaskLocked (line 267) | func (m *taskManager) createTaskLocked(ctx context.Context, task *type... method listTasksLocked (line 304) | func (m *taskManager) listTasksLocked() []*types.Task { method recoverTasks (line 314) | func (m *taskManager) recoverTasks(ctx context.Context) error { method reconcileLoop (line 347) | func (m *taskManager) reconcileLoop(ctx context.Context) { method reconcileTasks (line 366) | func (m *taskManager) reconcileTasks(ctx context.Context) { function NewTaskManager (line 52) | func NewTaskManager(cfg *config.Config, taskStore store.TaskStore, exec ... function isTerminalState (line 452) | func isTerminalState(state types.TaskState) bool { FILE: kubernetes/internal/task-executor/manager/task_manager_test.go function setupTestManager (line 32) | func setupTestManager(t *testing.T) (TaskManager, *config.Config) { function cleanupTask (line 57) | func cleanupTask(t *testing.T, mgr TaskManager, name string) { function TestNewTaskManager (line 71) | func TestNewTaskManager(t *testing.T) { function TestTaskManager_Create (line 129) | func TestTaskManager_Create(t *testing.T) { function TestTaskManager_CreateDuplicate (line 192) | func TestTaskManager_CreateDuplicate(t *testing.T) { function TestTaskManager_CreateMaxConcurrentTasks (line 220) | func TestTaskManager_CreateMaxConcurrentTasks(t *testing.T) { function TestTaskManager_Get (line 256) | func TestTaskManager_Get(t *testing.T) { function TestTaskManager_GetNotFound (line 288) | func TestTaskManager_GetNotFound(t *testing.T) { function TestTaskManager_GetEmptyName (line 298) | func TestTaskManager_GetEmptyName(t *testing.T) { function TestTaskManager_List (line 308) | func TestTaskManager_List(t *testing.T) { function TestTaskManager_Delete (line 348) | func TestTaskManager_Delete(t *testing.T) { function TestTaskManager_DeleteNonExistent (line 398) | func TestTaskManager_DeleteNonExistent(t *testing.T) { function TestTaskManager_Sync (line 409) | func TestTaskManager_Sync(t *testing.T) { function TestTaskManager_SyncNil (line 485) | func TestTaskManager_SyncNil(t *testing.T) { function TestTaskManager_AsyncStopOnDelete (line 495) | func TestTaskManager_AsyncStopOnDelete(t *testing.T) { function TestTaskManager_TimeoutHandling (line 558) | func TestTaskManager_TimeoutHandling(t *testing.T) { function TestTaskManager_CountActiveTasks (line 621) | func TestTaskManager_CountActiveTasks(t *testing.T) { function TestIsTerminalState (line 675) | func TestIsTerminalState(t *testing.T) { FILE: kubernetes/internal/task-executor/runtime/composite.go function NewExecutor (line 27) | func NewExecutor(cfg *config.Config) (Executor, error) { type compositeExecutor (line 50) | type compositeExecutor struct method getDelegate (line 55) | func (e *compositeExecutor) getDelegate(task *types.Task) (Executor, e... method Start (line 69) | func (e *compositeExecutor) Start(ctx context.Context, task *types.Tas... method Inspect (line 77) | func (e *compositeExecutor) Inspect(ctx context.Context, task *types.T... method Stop (line 85) | func (e *compositeExecutor) Stop(ctx context.Context, task *types.Task... FILE: kubernetes/internal/task-executor/runtime/container.go type containerExecutor (line 26) | type containerExecutor struct method Start (line 43) | func (e *containerExecutor) Start(ctx context.Context, task *types.Tas... method Inspect (line 48) | func (e *containerExecutor) Inspect(ctx context.Context, task *types.T... method Stop (line 53) | func (e *containerExecutor) Stop(ctx context.Context, task *types.Task... function newContainerExecutor (line 32) | func newContainerExecutor(cfg *config.Config) (Executor, error) { FILE: kubernetes/internal/task-executor/runtime/interface.go type Executor (line 24) | type Executor interface FILE: kubernetes/internal/task-executor/runtime/process.go constant ExitFile (line 36) | ExitFile = "exit" constant PidFile (line 37) | PidFile = "pid" constant StdoutFile (line 38) | StdoutFile = "stdout.log" constant StderrFile (line 39) | StderrFile = "stderr.log" type processExecutor (line 44) | type processExecutor struct method Start (line 53) | func (e *processExecutor) Start(ctx context.Context, task *types.Task)... method executeCommand (line 116) | func (e *processExecutor) executeCommand(task *types.Task, cmd *exec.C... method buildShimScript (line 189) | func (e *processExecutor) buildShimScript(exitPath, cmdStr string) str... method Inspect (line 215) | func (e *processExecutor) Inspect(ctx context.Context, task *types.Tas... method Stop (line 288) | func (e *processExecutor) Stop(ctx context.Context, task *types.Task) ... method findPidByEnvVar (line 393) | func (e *processExecutor) findPidByEnvVar(envName, expectedValue strin... function NewProcessExecutor (line 49) | func NewProcessExecutor(config *config.Config) (Executor, error) { function getChildrenPIDs (line 352) | func getChildrenPIDs(pid int) ([]int, error) { function isProcessRunning (line 368) | func isProcessRunning(pid int) bool { function shellEscape (line 377) | func shellEscape(args []string) string { function shellEscapePath (line 388) | func shellEscapePath(s string) string { function getProcEnviron (line 438) | func getProcEnviron(pid int) ([]string, error) { FILE: kubernetes/internal/task-executor/runtime/process_test.go function setupTestExecutor (line 34) | func setupTestExecutor(t *testing.T) (Executor, string) { function TestProcessExecutor_Lifecycle (line 47) | func TestProcessExecutor_Lifecycle(t *testing.T) { function TestProcessExecutor_ShortLived (line 103) | func TestProcessExecutor_ShortLived(t *testing.T) { function TestProcessExecutor_Failure (line 142) | func TestProcessExecutor_Failure(t *testing.T) { function TestProcessExecutor_InvalidArgs (line 180) | func TestProcessExecutor_InvalidArgs(t *testing.T) { function TestShellEscape (line 199) | func TestShellEscape(t *testing.T) { function TestNewExecutor (line 217) | func TestNewExecutor(t *testing.T) { function TestProcessExecutor_EnvInheritance (line 246) | func TestProcessExecutor_EnvInheritance(t *testing.T) { function TestProcessExecutor_TimeoutDetection (line 298) | func TestProcessExecutor_TimeoutDetection(t *testing.T) { function TestProcessExecutor_TimeoutNotExceeded (line 341) | func TestProcessExecutor_TimeoutNotExceeded(t *testing.T) { function TestProcessExecutor_NoTimeout (line 377) | func TestProcessExecutor_NoTimeout(t *testing.T) { FILE: kubernetes/internal/task-executor/server/handler.go type ErrorResponse (line 34) | type ErrorResponse struct type Handler (line 39) | type Handler struct method CreateTask (line 57) | func (h *Handler) CreateTask(w http.ResponseWriter, r *http.Request) { method SyncTasks (line 96) | func (h *Handler) SyncTasks(w http.ResponseWriter, r *http.Request) { method GetTask (line 139) | func (h *Handler) GetTask(w http.ResponseWriter, r *http.Request) { method ListTasks (line 165) | func (h *Handler) ListTasks(w http.ResponseWriter, r *http.Request) { method Health (line 189) | func (h *Handler) Health(w http.ResponseWriter, r *http.Request) { method DeleteTask (line 197) | func (h *Handler) DeleteTask(w http.ResponseWriter, r *http.Request) { method convertAPIToInternalTask (line 230) | func (h *Handler) convertAPIToInternalTask(apiTask *api.Task) *types.T... function NewHandler (line 44) | func NewHandler(mgr manager.TaskManager, cfg *config.Config) *Handler { function writeError (line 221) | func writeError(w http.ResponseWriter, code int, message string) { function convertInternalToAPITask (line 246) | func convertInternalToAPITask(task *types.Task) *api.Task { FILE: kubernetes/internal/task-executor/server/handler_test.go type MockTaskManager (line 38) | type MockTaskManager struct method Create (line 49) | func (m *MockTaskManager) Create(ctx context.Context, task *types.Task... method Sync (line 57) | func (m *MockTaskManager) Sync(ctx context.Context, desired []*types.T... method Get (line 70) | func (m *MockTaskManager) Get(ctx context.Context, id string) (*types.... method List (line 80) | func (m *MockTaskManager) List(ctx context.Context) ([]*types.Task, er... method Delete (line 91) | func (m *MockTaskManager) Delete(ctx context.Context, id string) error { method Start (line 99) | func (m *MockTaskManager) Start(ctx context.Context) {} method Stop (line 100) | func (m *MockTaskManager) Stop() {} function NewMockTaskManager (line 43) | func NewMockTaskManager() *MockTaskManager { function TestHandler_Health (line 102) | func TestHandler_Health(t *testing.T) { function TestHandler_CreateTask (line 115) | func TestHandler_CreateTask(t *testing.T) { function TestHandler_GetTask (line 142) | func TestHandler_GetTask(t *testing.T) { function TestHandler_DeleteTask (line 165) | func TestHandler_DeleteTask(t *testing.T) { function TestHandler_ListTasks (line 186) | func TestHandler_ListTasks(t *testing.T) { function TestHandler_SyncTasks (line 209) | func TestHandler_SyncTasks(t *testing.T) { function TestHandler_Errors (line 233) | func TestHandler_Errors(t *testing.T) { function TestConvertInternalToAPITask (line 250) | func TestConvertInternalToAPITask(t *testing.T) { function TestConvertInternalToAPITask_Timeout (line 363) | func TestConvertInternalToAPITask_Timeout(t *testing.T) { FILE: kubernetes/internal/task-executor/server/router.go function NewRouter (line 21) | func NewRouter(h *Handler) http.Handler { FILE: kubernetes/internal/task-executor/storage/file_store.go type fileStore (line 31) | type fileStore struct method getTaskLock (line 58) | func (s *fileStore) getTaskLock(name string) *sync.RWMutex { method Create (line 63) | func (s *fileStore) Create(ctx context.Context, task *types.Task) error { method Update (line 97) | func (s *fileStore) Update(ctx context.Context, task *types.Task) error { method Get (line 127) | func (s *fileStore) Get(ctx context.Context, name string) (*types.Task... method List (line 149) | func (s *fileStore) List(ctx context.Context) ([]*types.Task, error) { method Delete (line 184) | func (s *fileStore) Delete(ctx context.Context, name string) error { method getTaskFilePath (line 212) | func (s *fileStore) getTaskFilePath(taskDir string) string { method writeTaskFile (line 217) | func (s *fileStore) writeTaskFile(taskDir string, task *types.Task) er... method readTaskFile (line 250) | func (s *fileStore) readTaskFile(taskDir, taskName string) (*types.Tas... function NewFileStore (line 36) | func NewFileStore(dataDir string) (TaskStore, error) { FILE: kubernetes/internal/task-executor/storage/file_store_test.go function TestNewFileStore (line 28) | func TestNewFileStore(t *testing.T) { function TestFileStore_CRUD (line 46) | func TestFileStore_CRUD(t *testing.T) { function TestFileStore_EdgeCases (line 133) | func TestFileStore_EdgeCases(t *testing.T) { function TestFileStore_CorruptedData (line 171) | func TestFileStore_CorruptedData(t *testing.T) { function TestFileStore_Concurrency (line 197) | func TestFileStore_Concurrency(t *testing.T) { FILE: kubernetes/internal/task-executor/storage/interface.go type TaskStore (line 24) | type TaskStore interface FILE: kubernetes/internal/task-executor/types/task.go type TaskState (line 26) | type TaskState constant TaskStatePending (line 29) | TaskStatePending TaskState = "Pending" constant TaskStateRunning (line 30) | TaskStateRunning TaskState = "Running" constant TaskStateSucceeded (line 31) | TaskStateSucceeded TaskState = "Succeeded" constant TaskStateFailed (line 32) | TaskStateFailed TaskState = "Failed" constant TaskStateUnknown (line 33) | TaskStateUnknown TaskState = "Unknown" constant TaskStateNotFound (line 34) | TaskStateNotFound TaskState = "NotFound" constant TaskStateTimeout (line 35) | TaskStateTimeout TaskState = "Timeout" type Status (line 40) | type Status struct type SubStatus (line 45) | type SubStatus struct type Task (line 54) | type Task struct FILE: kubernetes/internal/task-executor/utils/pathutil.go function SafeJoin (line 23) | func SafeJoin(baseDir, userPath string) (string, error) { function isSubPath (line 42) | func isSubPath(parent, child string) bool { FILE: kubernetes/internal/task-executor/utils/pathutil_test.go function TestSafeJoin (line 23) | func TestSafeJoin(t *testing.T) { FILE: kubernetes/internal/utils/controller/util.go function GetControllerKey (line 23) | func GetControllerKey(obj metav1.Object) string { FILE: kubernetes/internal/utils/expectations/init.go function init (line 22) | func init() { FILE: kubernetes/internal/utils/expectations/resource_version_expectation.go type ResourceVersionExpectation (line 26) | type ResourceVersionExpectation interface function NewResourceVersionExpectation (line 33) | func NewResourceVersionExpectation() ResourceVersionExpectation { type realResourceVersionExpectation (line 37) | type realResourceVersionExpectation struct method Expect (line 47) | func (r *realResourceVersionExpectation) Expect(obj metav1.Object) { method Observe (line 60) | func (r *realResourceVersionExpectation) Observe(obj metav1.Object) { method IsSatisfied (line 73) | func (r *realResourceVersionExpectation) IsSatisfied(obj metav1.Object... method Delete (line 97) | func (r *realResourceVersionExpectation) Delete(obj metav1.Object) { type objectCacheVersions (line 42) | type objectCacheVersions struct function isResourceVersionNewer (line 103) | func isResourceVersionNewer(old, new string) bool { FILE: kubernetes/internal/utils/expectations/resource_version_expectation_test.go function TestResourceVersionExpectation (line 24) | func TestResourceVersionExpectation(t *testing.T) { FILE: kubernetes/internal/utils/expectations/scale_expectations.go type ScaleAction (line 25) | type ScaleAction constant Create (line 29) | Create ScaleAction = "create" constant Delete (line 31) | Delete ScaleAction = "delete" type ScaleExpectations (line 35) | type ScaleExpectations interface function NewScaleExpectations (line 44) | func NewScaleExpectations() ScaleExpectations { type realScaleExpectations (line 50) | type realScaleExpectations struct method GetExpectations (line 62) | func (r *realScaleExpectations) GetExpectations(controllerKey string) ... method ExpectScale (line 79) | func (r *realScaleExpectations) ExpectScale(controllerKey string, acti... method ObserveScale (line 98) | func (r *realScaleExpectations) ObserveScale(controllerKey string, act... method SatisfiedExpectations (line 121) | func (r *realScaleExpectations) SatisfiedExpectations(controllerKey st... method DeleteExpectations (line 143) | func (r *realScaleExpectations) DeleteExpectations(controllerKey strin... type realControllerScaleExpectations (line 56) | type realControllerScaleExpectations struct FILE: kubernetes/internal/utils/expectations/scale_expectations_test.go function TestScale (line 21) | func TestScale(t *testing.T) { FILE: kubernetes/internal/utils/fieldindex/register.go constant IndexNameForOwnerRefUID (line 29) | IndexNameForOwnerRefUID = "ownerRefUID" constant IndexNameForPoolRef (line 30) | IndexNameForPoolRef = "poolRef" function RegisterFieldIndexes (line 53) | func RegisterFieldIndexes(c cache.Cache) error { FILE: kubernetes/internal/utils/finalizer.go type FinalizerOpType (line 27) | type FinalizerOpType constant AddFinalizerOpType (line 30) | AddFinalizerOpType FinalizerOpType = "Add" constant RemoveFinalizerOpType (line 31) | RemoveFinalizerOpType FinalizerOpType = "Remove" function UpdateFinalizer (line 34) | func UpdateFinalizer(c client.Client, object client.Object, op Finalizer... FILE: kubernetes/internal/utils/helper.go function GetAnnotation (line 22) | func GetAnnotation(obj metav1.Object, key string) string { FILE: kubernetes/internal/utils/json.go function DumpJSON (line 23) | func DumpJSON(o interface{}) string { function IsJSONObjectEqual (line 29) | func IsJSONObjectEqual(o1, o2 interface{}) bool { FILE: kubernetes/internal/utils/logging/logger.go type Options (line 28) | type Options struct function DefaultOptions (line 48) | func DefaultOptions() Options { function NewLoggerWithZapOptions (line 65) | func NewLoggerWithZapOptions(opts Options) logr.Logger { FILE: kubernetes/internal/utils/pod.go function IsPodAvailable (line 34) | func IsPodAvailable(pod *v1.Pod, minReadySeconds int32, now metav1.Time)... function IsPodReady (line 48) | func IsPodReady(pod *v1.Pod) bool { function IsPodTerminal (line 53) | func IsPodTerminal(pod *v1.Pod) bool { function IsPodPhaseTerminal (line 58) | func IsPodPhaseTerminal(phase v1.PodPhase) bool { function IsPodReadyConditionTrue (line 63) | func IsPodReadyConditionTrue(status v1.PodStatus) bool { function IsContainersReadyConditionTrue (line 69) | func IsContainersReadyConditionTrue(status v1.PodStatus) bool { function GetPodReadyCondition (line 76) | func GetPodReadyCondition(status v1.PodStatus) *v1.PodCondition { function GetContainersReadyCondition (line 83) | func GetContainersReadyCondition(status v1.PodStatus) *v1.PodCondition { function GetPodCondition (line 90) | func GetPodCondition(status *v1.PodStatus, conditionType v1.PodCondition... function GetPodConditionFromList (line 99) | func GetPodConditionFromList(conditions []v1.PodCondition, conditionType... function GetPodFromTemplate (line 111) | func GetPodFromTemplate( function getPodsLabelSet (line 140) | func getPodsLabelSet(template *v1.PodTemplateSpec) labels.Set { function getPodsFinalizers (line 148) | func getPodsFinalizers(template *v1.PodTemplateSpec) []string { function getPodsAnnotationSet (line 154) | func getPodsAnnotationSet(template *v1.PodTemplateSpec) labels.Set { function getPodsPrefix (line 162) | func getPodsPrefix(controllerName string) string { function IsAssigned (line 171) | func IsAssigned(pod *v1.Pod) bool { function PodNameSorter (line 175) | func PodNameSorter(a, b *v1.Pod) int { function WithPodIndexSorter (line 184) | func WithPodIndexSorter(podIndex map[string]int) func(*v1.Pod, *v1.Pod) ... type MultiPodSorter (line 206) | type MultiPodSorter method Sort (line 208) | func (m MultiPodSorter) Sort(a, b *v1.Pod) int { FILE: kubernetes/internal/utils/pod_test.go function TestWithPodIndexSorter (line 25) | func TestWithPodIndexSorter(t *testing.T) { function TestMultiPodSorter (line 110) | func TestMultiPodSorter(t *testing.T) { function TestMultiPodSorter_Integration (line 215) | func TestMultiPodSorter_Integration(t *testing.T) { FILE: kubernetes/internal/utils/requeueduration/duration.go type DurationStore (line 24) | type DurationStore struct method Push (line 28) | func (dm *DurationStore) Push(key string, newDuration time.Duration) { method Pop (line 38) | func (dm *DurationStore) Pop(key string) time.Duration { type Duration (line 52) | type Duration struct method Update (line 58) | func (rd *Duration) Update(newDuration time.Duration) { method UpdateWithMsg (line 68) | func (rd *Duration) UpdateWithMsg(newDuration time.Duration, format st... method Merge (line 79) | func (rd *Duration) Merge(rd2 *Duration) { method Get (line 85) | func (rd *Duration) Get() time.Duration { method GetWithMsg (line 91) | func (rd *Duration) GetWithMsg() (time.Duration, string) { FILE: kubernetes/pkg/client/clientset/versioned/clientset.go type Interface (line 28) | type Interface interface type Clientset (line 34) | type Clientset struct method SandboxV1alpha1 (line 40) | func (c *Clientset) SandboxV1alpha1() sandboxv1alpha1.SandboxV1alpha1I... method Discovery (line 45) | func (c *Clientset) Discovery() discovery.DiscoveryInterface { function NewForConfig (line 57) | func NewForConfig(c *rest.Config) (*Clientset, error) { function NewForConfigAndClient (line 77) | func NewForConfigAndClient(c *rest.Config, httpClient *http.Client) (*Cl... function NewForConfigOrDie (line 102) | func NewForConfigOrDie(c *rest.Config) *Clientset { function New (line 111) | func New(c rest.Interface) *Clientset { FILE: kubernetes/pkg/client/clientset/versioned/fake/clientset_generated.go function NewSimpleClientset (line 38) | func NewSimpleClientset(objects ...runtime.Object) *Clientset { type Clientset (line 69) | type Clientset struct method Discovery (line 75) | func (c *Clientset) Discovery() discovery.DiscoveryInterface { method Tracker (line 79) | func (c *Clientset) Tracker() testing.ObjectTracker { method SandboxV1alpha1 (line 89) | func (c *Clientset) SandboxV1alpha1() sandboxv1alpha1.SandboxV1alpha1I... FILE: kubernetes/pkg/client/clientset/versioned/fake/register.go function init (line 50) | func init() { FILE: kubernetes/pkg/client/clientset/versioned/scheme/register.go function init (line 50) | func init() { FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/batchsandbox.go type BatchSandboxesGetter (line 31) | type BatchSandboxesGetter interface type BatchSandboxInterface (line 36) | type BatchSandboxInterface interface type batchSandboxes (line 51) | type batchSandboxes struct function newBatchSandboxes (line 56) | func newBatchSandboxes(c *SandboxV1alpha1Client, namespace string) *batc... FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/fake/fake_batchsandbox.go type fakeBatchSandboxes (line 25) | type fakeBatchSandboxes struct function newFakeBatchSandboxes (line 30) | func newFakeBatchSandboxes(fake *FakeSandboxV1alpha1, namespace string) ... FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/fake/fake_pool.go type fakePools (line 25) | type fakePools struct function newFakePools (line 30) | func newFakePools(fake *FakeSandboxV1alpha1, namespace string) sandboxv1... FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/fake/fake_sandbox_client.go type FakeSandboxV1alpha1 (line 24) | type FakeSandboxV1alpha1 struct method BatchSandboxes (line 28) | func (c *FakeSandboxV1alpha1) BatchSandboxes(namespace string) v1alpha... method Pools (line 32) | func (c *FakeSandboxV1alpha1) Pools(namespace string) v1alpha1.PoolInt... method RESTClient (line 38) | func (c *FakeSandboxV1alpha1) RESTClient() rest.Interface { FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/generated_expansion.go type BatchSandboxExpansion (line 18) | type BatchSandboxExpansion interface type PoolExpansion (line 20) | type PoolExpansion interface FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/pool.go type PoolsGetter (line 31) | type PoolsGetter interface type PoolInterface (line 36) | type PoolInterface interface type pools (line 51) | type pools struct function newPools (line 56) | func newPools(c *SandboxV1alpha1Client, namespace string) *pools { FILE: kubernetes/pkg/client/clientset/versioned/typed/sandbox/v1alpha1/sandbox_client.go type SandboxV1alpha1Interface (line 26) | type SandboxV1alpha1Interface interface type SandboxV1alpha1Client (line 33) | type SandboxV1alpha1Client struct method BatchSandboxes (line 37) | func (c *SandboxV1alpha1Client) BatchSandboxes(namespace string) Batch... method Pools (line 41) | func (c *SandboxV1alpha1Client) Pools(namespace string) PoolInterface { method RESTClient (line 98) | func (c *SandboxV1alpha1Client) RESTClient() rest.Interface { function NewForConfig (line 48) | func NewForConfig(c *rest.Config) (*SandboxV1alpha1Client, error) { function NewForConfigAndClient (line 60) | func NewForConfigAndClient(c *rest.Config, h *http.Client) (*SandboxV1al... function NewForConfigOrDie (line 72) | func NewForConfigOrDie(c *rest.Config) *SandboxV1alpha1Client { function New (line 81) | func New(c rest.Interface) *SandboxV1alpha1Client { function setConfigDefaults (line 85) | func setConfigDefaults(config *rest.Config) { FILE: kubernetes/pkg/client/informers/externalversions/factory.go type SharedInformerOption (line 33) | type SharedInformerOption type sharedInformerFactory (line 35) | type sharedInformerFactory struct method Start (line 121) | func (f *sharedInformerFactory) Start(stopCh <-chan struct{}) { method Shutdown (line 145) | func (f *sharedInformerFactory) Shutdown() { method WaitForCacheSync (line 154) | func (f *sharedInformerFactory) WaitForCacheSync(stopCh <-chan struct{... method InformerFor (line 177) | func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFun... method Sandbox (line 257) | func (f *sharedInformerFactory) Sandbox() sandbox.Interface { function WithCustomResyncConfig (line 56) | func WithCustomResyncConfig(resyncConfig map[v1.Object]time.Duration) Sh... function WithTweakListOptions (line 66) | func WithTweakListOptions(tweakListOptions internalinterfaces.TweakListO... function WithNamespace (line 74) | func WithNamespace(namespace string) SharedInformerOption { function WithTransform (line 82) | func WithTransform(transform cache.TransformFunc) SharedInformerOption { function NewSharedInformerFactory (line 90) | func NewSharedInformerFactory(client versioned.Interface, defaultResync ... function NewFilteredSharedInformerFactory (line 98) | func NewFilteredSharedInformerFactory(client versioned.Interface, defaul... function NewSharedInformerFactoryWithOptions (line 103) | func NewSharedInformerFactoryWithOptions(client versioned.Interface, def... type SharedInformerFactory (line 223) | type SharedInformerFactory interface FILE: kubernetes/pkg/client/informers/externalversions/generic.go type GenericInformer (line 28) | type GenericInformer interface type genericInformer (line 33) | type genericInformer struct method Informer (line 39) | func (f *genericInformer) Informer() cache.SharedIndexInformer { method Lister (line 44) | func (f *genericInformer) Lister() cache.GenericLister { method ForResource (line 50) | func (f *sharedInformerFactory) ForResource(resource schema.GroupVersion... FILE: kubernetes/pkg/client/informers/externalversions/internalinterfaces/factory_interfaces.go type NewInformerFunc (line 28) | type NewInformerFunc type SharedInformerFactory (line 31) | type SharedInformerFactory interface type TweakListOptionsFunc (line 37) | type TweakListOptionsFunc FILE: kubernetes/pkg/client/informers/externalversions/sandbox/interface.go type Interface (line 24) | type Interface interface type group (line 29) | type group struct method V1alpha1 (line 41) | func (g *group) V1alpha1() v1alpha1.Interface { function New (line 36) | func New(f internalinterfaces.SharedInformerFactory, namespace string, t... FILE: kubernetes/pkg/client/informers/externalversions/sandbox/v1alpha1/batchsandbox.go type BatchSandboxInformer (line 34) | type BatchSandboxInformer interface type batchSandboxInformer (line 39) | type batchSandboxInformer struct method defaultInformer (line 89) | func (f *batchSandboxInformer) defaultInformer(client versioned.Interf... method Informer (line 93) | func (f *batchSandboxInformer) Informer() cache.SharedIndexInformer { method Lister (line 97) | func (f *batchSandboxInformer) Lister() sandboxv1alpha1.BatchSandboxLi... function NewBatchSandboxInformer (line 48) | func NewBatchSandboxInformer(client versioned.Interface, namespace strin... function NewFilteredBatchSandboxInformer (line 55) | func NewFilteredBatchSandboxInformer(client versioned.Interface, namespa... FILE: kubernetes/pkg/client/informers/externalversions/sandbox/v1alpha1/interface.go type Interface (line 23) | type Interface interface type version (line 30) | type version struct method BatchSandboxes (line 42) | func (v *version) BatchSandboxes() BatchSandboxInformer { method Pools (line 47) | func (v *version) Pools() PoolInformer { function New (line 37) | func New(f internalinterfaces.SharedInformerFactory, namespace string, t... FILE: kubernetes/pkg/client/informers/externalversions/sandbox/v1alpha1/pool.go type PoolInformer (line 34) | type PoolInformer interface type poolInformer (line 39) | type poolInformer struct method defaultInformer (line 89) | func (f *poolInformer) defaultInformer(client versioned.Interface, res... method Informer (line 93) | func (f *poolInformer) Informer() cache.SharedIndexInformer { method Lister (line 97) | func (f *poolInformer) Lister() sandboxv1alpha1.PoolLister { function NewPoolInformer (line 48) | func NewPoolInformer(client versioned.Interface, namespace string, resyn... function NewFilteredPoolInformer (line 55) | func NewFilteredPoolInformer(client versioned.Interface, namespace strin... FILE: kubernetes/pkg/client/listers/sandbox/v1alpha1/batchsandbox.go type BatchSandboxLister (line 27) | type BatchSandboxLister interface type batchSandboxLister (line 37) | type batchSandboxLister struct method BatchSandboxes (line 47) | func (s *batchSandboxLister) BatchSandboxes(namespace string) BatchSan... function NewBatchSandboxLister (line 42) | func NewBatchSandboxLister(indexer cache.Indexer) BatchSandboxLister { type BatchSandboxNamespaceLister (line 53) | type BatchSandboxNamespaceLister interface type batchSandboxNamespaceLister (line 65) | type batchSandboxNamespaceLister struct FILE: kubernetes/pkg/client/listers/sandbox/v1alpha1/expansion_generated.go type BatchSandboxListerExpansion (line 20) | type BatchSandboxListerExpansion interface type BatchSandboxNamespaceListerExpansion (line 24) | type BatchSandboxNamespaceListerExpansion interface type PoolListerExpansion (line 28) | type PoolListerExpansion interface type PoolNamespaceListerExpansion (line 32) | type PoolNamespaceListerExpansion interface FILE: kubernetes/pkg/client/listers/sandbox/v1alpha1/pool.go type PoolLister (line 27) | type PoolLister interface type poolLister (line 37) | type poolLister struct method Pools (line 47) | func (s *poolLister) Pools(namespace string) PoolNamespaceLister { function NewPoolLister (line 42) | func NewPoolLister(indexer cache.Indexer) PoolLister { type PoolNamespaceLister (line 53) | type PoolNamespaceLister interface type poolNamespaceLister (line 65) | type poolNamespaceLister struct FILE: kubernetes/pkg/task-executor/client.go type Client (line 29) | type Client struct method Set (line 48) | func (c *Client) Set(ctx context.Context, task *Task) (*Task, error) { method Get (line 113) | func (c *Client) Get(ctx context.Context) (*Task, error) { function NewClient (line 34) | func NewClient(baseURL string) *Client { FILE: kubernetes/pkg/task-executor/types.go type Task (line 24) | type Task struct type Process (line 35) | type Process struct type ProcessStatus (line 51) | type ProcessStatus struct type Waiting (line 64) | type Waiting struct type Running (line 74) | type Running struct type Terminated (line 81) | type Terminated struct FILE: kubernetes/pkg/utils/endpoints.go constant AnnotationEndpoints (line 26) | AnnotationEndpoints = "sandbox.opensandbox.io/endpoints" function GetEndpoints (line 32) | func GetEndpoints(bs *sandboxv1alpha1.BatchSandbox) ([]string, error) { FILE: kubernetes/pkg/utils/endpoints_test.go function TestGetEndpoints (line 24) | func TestGetEndpoints(t *testing.T) { function contains (line 154) | func contains(s, substr string) bool { function findSubstr (line 160) | func findSubstr(s, substr string) bool { FILE: kubernetes/test/e2e/e2e_suite_test.go function TestE2E (line 32) | func TestE2E(t *testing.T) { FILE: kubernetes/test/e2e/e2e_test.go constant namespace (line 35) | namespace = "opensandbox-system" function renderTemplate (line 1299) | func renderTemplate(templateFile string, data map[string]interface{}) (s... FILE: kubernetes/test/e2e_runtime/gvisor/gvisor_test.go function runKubectl (line 31) | func runKubectl(args ...string) (string, error) { FILE: kubernetes/test/e2e_runtime/gvisor/suite_test.go constant RuntimeClassName (line 30) | RuntimeClassName = "gvisor" function getKindCluster (line 37) | func getKindCluster() string { function TestGVisorRuntimeClass (line 47) | func TestGVisorRuntimeClass(t *testing.T) { FILE: kubernetes/test/e2e_task/suite_test.go function TestE2E (line 24) | func TestE2E(t *testing.T) { FILE: kubernetes/test/e2e_task/task_e2e_test.go constant ImageName (line 31) | ImageName = "task-executor-e2e" constant TargetContainer (line 32) | TargetContainer = "task-e2e-target" constant ExecutorContainer (line 33) | ExecutorContainer = "task-e2e-executor" constant VolumeName (line 34) | VolumeName = "task-e2e-vol" constant HostPort (line 35) | HostPort = "5758" FILE: kubernetes/test/utils/image.go function getEnv (line 33) | func getEnv(key, defaultValue string) string { FILE: kubernetes/test/utils/utils.go constant prometheusOperatorVersion (line 29) | prometheusOperatorVersion = "v0.77.1" constant prometheusOperatorURL (line 30) | prometheusOperatorURL = "https://github.com/prometheus-operator/prom... constant certmanagerVersion (line 33) | certmanagerVersion = "v1.16.3" constant certmanagerURLTmpl (line 34) | certmanagerURLTmpl = "https://github.com/cert-manager/cert-manager/relea... function warnError (line 37) | func warnError(err error) { function Run (line 42) | func Run(cmd *exec.Cmd) (string, error) { function InstallPrometheusOperator (line 62) | func InstallPrometheusOperator() error { function UninstallPrometheusOperator (line 70) | func UninstallPrometheusOperator() { function IsPrometheusCRDsInstalled (line 80) | func IsPrometheusCRDsInstalled() bool { function UninstallCertManager (line 106) | func UninstallCertManager() { function InstallCertManager (line 115) | func InstallCertManager() error { function IsCertManagerCRDsInstalled (line 135) | func IsCertManagerCRDsInstalled() bool { function LoadImageToKindClusterWithName (line 167) | func LoadImageToKindClusterWithName(name string) error { function GetNonEmptyLines (line 180) | func GetNonEmptyLines(output string) []string { function GetProjectDir (line 193) | func GetProjectDir() (string, error) { function UncommentCode (line 204) | func UncommentCode(filename, target, prefix string) error { FILE: scripts/spec-doc/generate-spec.js function findProjectRoot (line 37) | function findProjectRoot() { function parseOutputPathArg (line 48) | function parseOutputPathArg(projectRoot) { function main (line 63) | function main() { FILE: sdks/code-interpreter/csharp/src/OpenSandbox.CodeInterpreter/Adapters/CodesAdapter.cs class CodesAdapter (line 31) | internal sealed class CodesAdapter : ICodes method CodesAdapter (line 46) | public CodesAdapter( method CreateContextAsync (line 60) | public async Task CreateContextAsync(string language, Can... method GetContextAsync (line 81) | public async Task GetContextAsync(string contextId, Cance... method ListContextsAsync (line 101) | public async Task> ListContextsAsync(string... method DeleteContextAsync (line 123) | public async Task DeleteContextAsync(string contextId, CancellationTok... method DeleteContextsAsync (line 134) | public async Task DeleteContextsAsync(string language, CancellationTok... method InterruptAsync (line 146) | public async Task InterruptAsync(string contextId, CancellationToken c... method RunStreamAsync (line 158) | public async IAsyncEnumerable RunStreamAsync( method RunAsync (line 196) | public async Task RunAsync(string code, RunCodeOptions? opt... FILE: sdks/code-interpreter/csharp/src/OpenSandbox.CodeInterpreter/CodeInterpreter.cs class CodeInterpreterCreateOptions (line 28) | public class CodeInterpreterCreateOptions class CodeInterpreter (line 52) | public sealed class CodeInterpreter method CodeInterpreter (line 86) | private CodeInterpreter(Sandbox sandbox, ICodes codes, ILogger logger) method CreateAsync (line 103) | public static async Task CreateAsync( method MergeHeaders (line 134) | private static IReadOnlyDictionary MergeHeaders( FILE: sdks/code-interpreter/csharp/src/OpenSandbox.CodeInterpreter/Factory/DefaultCodeInterpreterAdapterFactory.cs class DefaultCodeInterpreterAdapterFactory (line 26) | public class DefaultCodeInterpreterAdapterFactory : ICodeInterpreterAdap... method Create (line 32) | public static DefaultCodeInterpreterAdapterFactory Create() => new(); method CreateCodes (line 35) | public ICodes CreateCodes(CreateCodesStackOptions options) FILE: sdks/code-interpreter/csharp/src/OpenSandbox.CodeInterpreter/Factory/ICodeInterpreterAdapterFactory.cs class CreateCodesStackOptions (line 25) | public class CreateCodesStackOptions type ICodeInterpreterAdapterFactory (line 56) | public interface ICodeInterpreterAdapterFactory method CreateCodes (line 63) | ICodes CreateCodes(CreateCodesStackOptions options); FILE: sdks/code-interpreter/csharp/src/OpenSandbox.CodeInterpreter/Models/CodeModels.cs class SupportedLanguage (line 22) | public static class SupportedLanguage class CodeContext (line 58) | public class CodeContext class RunCodeRequest (line 76) | public class RunCodeRequest class RunCodeOptions (line 94) | public class RunCodeOptions class CreateContextRequest (line 120) | internal class CreateContextRequest FILE: sdks/code-interpreter/csharp/src/OpenSandbox.CodeInterpreter/Services/ICodes.cs type ICodes (line 24) | public interface ICodes method CreateContextAsync (line 34) | Task CreateContextAsync(string language, CancellationToke... method GetContextAsync (line 44) | Task GetContextAsync(string contextId, CancellationToken ... method ListContextsAsync (line 54) | Task> ListContextsAsync(string language, Ca... method DeleteContextAsync (line 63) | Task DeleteContextAsync(string contextId, CancellationToken cancellati... method DeleteContextsAsync (line 72) | Task DeleteContextsAsync(string language, CancellationToken cancellati... method RunAsync (line 83) | Task RunAsync(string code, RunCodeOptions? options = null, ... method RunStreamAsync (line 93) | IAsyncEnumerable RunStreamAsync(RunCodeRequest requ... method InterruptAsync (line 102) | Task InterruptAsync(string contextId, CancellationToken cancellationTo... FILE: sdks/code-interpreter/csharp/tests/OpenSandbox.CodeInterpreter.Tests/CodeInterpreterTests.cs class CodeInterpreterTests (line 21) | public class CodeInterpreterTests method CreateAsync_ThrowsOnNullSandbox (line 23) | [Fact] method CodeInterpreterCreateOptions_DefaultsAreNull (line 30) | [Fact] method CodeInterpreterCreateOptions_CanSetAdapterFactory (line 38) | [Fact] class TestAdapterFactory (line 50) | private class TestAdapterFactory : Factory.ICodeInterpreterAdapterFactory method CreateCodes (line 52) | public Services.ICodes CreateCodes(Factory.CreateCodesStackOptions o... FILE: sdks/code-interpreter/csharp/tests/OpenSandbox.CodeInterpreter.Tests/CodesAdapterTests.cs class CodesAdapterTests (line 29) | public class CodesAdapterTests method ListContextsAsync_ThrowsOnEmptyLanguage (line 31) | [Fact] method ListContextsAsync_SendsLanguageQuery (line 41) | [Fact] method RunStreamAsync_ThrowsOnEmptyCode (line 65) | [Fact] method RunStreamAsync_ParsesSseEvent (line 81) | [Fact] method DrainAsync (line 118) | private static async Task DrainAsync(IAsyncEnumerable source) method CreateAdapter (line 125) | private static CodesAdapter CreateAdapter(HttpMessageHandler httpHandl... class StubHttpMessageHandler (line 135) | private sealed class StubHttpMessageHandler : HttpMessageHandler method StubHttpMessageHandler (line 139) | public StubHttpMessageHandler(Func SendAsync(HttpReq... method MediaTypeToString (line 154) | private static string MediaTypeToString(MediaTypeWithQualityHeaderVa... FILE: sdks/code-interpreter/csharp/tests/OpenSandbox.CodeInterpreter.Tests/FactoryTests.cs class FactoryTests (line 23) | public class FactoryTests method DefaultCodeInterpreterAdapterFactory_Create_ReturnsInstance (line 25) | [Fact] method DefaultCodeInterpreterAdapterFactory_CreateCodes_ThrowsOnNullOptions (line 34) | [Fact] method DefaultCodeInterpreterAdapterFactory_CreateCodes_ThrowsOnNullConnectionConfig (line 42) | [Fact] method DefaultCodeInterpreterAdapterFactory_CreateCodes_ThrowsOnEmptyBaseUrl (line 58) | [Fact] method CreateCodesStackOptions_RequiredProperties (line 75) | [Fact] FILE: sdks/code-interpreter/csharp/tests/OpenSandbox.CodeInterpreter.Tests/ModelsTests.cs class ModelsTests (line 21) | public class ModelsTests method SupportedLanguage_HasCorrectValues (line 23) | [Fact] method CodeContext_SerializesToJson (line 34) | [Fact] method CodeContext_DeserializesFromJson (line 48) | [Fact] method CodeContext_DeserializesWithNullId (line 59) | [Fact] method RunCodeRequest_SerializesToJson (line 70) | [Fact] method RunCodeRequest_DeserializesFromJson (line 91) | [Fact] method RunCodeOptions_DefaultsAreNull (line 104) | [Fact] method RunCodeOptions_CanSetProperties (line 114) | [Fact] method RunCodeOptions_CanSetLanguageOnly (line 130) | [Fact] FILE: sdks/code-interpreter/javascript/src/adapters/codesAdapter.ts type ApiCreateContextRequest (line 28) | type ApiCreateContextRequest = type ApiCreateContextOk (line 30) | type ApiCreateContextOk = type ApiGetContextOk (line 32) | type ApiGetContextOk = type ApiListContextsOk (line 34) | type ApiListContextsOk = type ApiRunCodeRequest (line 36) | type ApiRunCodeRequest = function joinUrl (line 45) | function joinUrl(baseUrl: string, pathname: string): string { class CodesAdapter (line 51) | class CodesAdapter implements Codes { method constructor (line 54) | constructor( method createContext (line 61) | async createContext(language: SupportedLanguage): Promise { method getContext (line 77) | async getContext(contextId: string): Promise { method listContexts (line 95) | async listContexts(language?: SupportedLanguage): Promise { method deleteContexts (line 119) | async deleteContexts(language: SupportedLanguage): Promise { method interrupt (line 126) | async interrupt(contextId: string): Promise { method runStream (line 133) | async *runStream(req: ApiRunCodeRequest, signal?: AbortSignal): AsyncI... method run (line 152) | async run( FILE: sdks/code-interpreter/javascript/src/adapters/openapiError.ts function throwOnOpenApiFetchError (line 17) | function throwOnOpenApiFetchError( FILE: sdks/code-interpreter/javascript/src/adapters/sse.ts function tryParseJson (line 17) | function tryParseJson(line: string): unknown | undefined { FILE: sdks/code-interpreter/javascript/src/factory/adapterFactory.ts type CreateCodesStackOptions (line 18) | interface CreateCodesStackOptions { type AdapterFactory (line 27) | interface AdapterFactory { FILE: sdks/code-interpreter/javascript/src/factory/defaultAdapterFactory.ts class DefaultAdapterFactory (line 20) | class DefaultAdapterFactory implements AdapterFactory { method createCodes (line 21) | createCodes(opts: CreateCodesStackOptions): Codes { function createDefaultAdapterFactory (line 41) | function createDefaultAdapterFactory(): AdapterFactory { FILE: sdks/code-interpreter/javascript/src/interpreter.ts type CodeInterpreterCreateOptions (line 22) | interface CodeInterpreterCreateOptions { class CodeInterpreter (line 35) | class CodeInterpreter { method constructor (line 36) | private constructor( method create (line 41) | static async create(sandbox: Sandbox, opts: CodeInterpreterCreateOptio... method id (line 54) | get id() { method files (line 58) | get files() { method commands (line 62) | get commands() { method metrics (line 66) | get metrics() { FILE: sdks/code-interpreter/javascript/src/models.ts type SupportedLanguage (line 24) | type SupportedLanguage = type CodeContext (line 27) | interface CodeContext { type RunCodeRequest (line 32) | interface RunCodeRequest { FILE: sdks/code-interpreter/javascript/src/services/codes.ts type Codes (line 19) | interface Codes { FILE: sdks/code-interpreter/javascript/tests/interpreter.headers.test.mjs method getEndpoint (line 14) | async getEndpoint(port) { method createCodes (line 24) | createCodes(opts) { FILE: sdks/code-interpreter/python/src/code_interpreter/adapters/code_adapter.py function _normalize_sse_event (line 54) | def _normalize_sse_event(event_dict: dict) -> dict: class CodesAdapter (line 70) | class CodesAdapter(Codes): method __init__ (line 87) | def __init__( method _get_client (line 144) | async def _get_client(self): method _get_execd_url (line 148) | def _get_execd_url(self, path: str) -> str: method _get_sse_client (line 153) | async def _get_sse_client(self) -> httpx.AsyncClient: method create_context (line 157) | async def create_context(self, language: str) -> CodeContext: method get_context (line 189) | async def get_context(self, context_id: str) -> CodeContext: method list_contexts (line 208) | async def list_contexts(self, language: str) -> list[CodeContext]: method delete_context (line 224) | async def delete_context(self, context_id: str) -> None: method delete_contexts (line 238) | async def delete_contexts(self, language: str) -> None: method run (line 254) | async def run( method interrupt (line 342) | async def interrupt(self, execution_id: str) -> None: FILE: sdks/code-interpreter/python/src/code_interpreter/adapters/converter/code_execution_converter.py class CodeExecutionConverter (line 30) | class CodeExecutionConverter: method to_api_run_code_request (line 36) | def to_api_run_code_request(code: str, context: CodeContext | None) ->... method to_api_code_context (line 55) | def to_api_code_context(context: CodeContext) -> dict[str, Any]: method from_api_code_context (line 75) | def from_api_code_context(api_context: ApiCodeContext) -> CodeContext: method from_api_code_context_dict (line 95) | def from_api_code_context_dict(api_context: dict[str, Any]) -> CodeCon... FILE: sdks/code-interpreter/python/src/code_interpreter/adapters/factory.py class AdapterFactory (line 30) | class AdapterFactory: method __init__ (line 39) | def __init__(self, connection_config: ConnectionConfig) -> None: method create_code_execution_service (line 48) | def create_code_execution_service(self, endpoint: SandboxEndpoint) -> ... FILE: sdks/code-interpreter/python/src/code_interpreter/code_interpreter.py class CodeInterpreter (line 39) | class CodeInterpreter: method __init__ (line 88) | def __init__(self, sandbox: Sandbox, code_service: Codes) -> None: method sandbox (line 102) | def sandbox(self) -> Sandbox: method id (line 112) | def id(self) -> str: method files (line 122) | def files(self): method commands (line 134) | def commands(self): method metrics (line 146) | def metrics(self): method codes (line 158) | def codes(self) -> Codes: method create (line 173) | async def create(cls, sandbox: Sandbox) -> "CodeInterpreter": FILE: sdks/code-interpreter/python/src/code_interpreter/models/code.py class SupportedLanguage (line 26) | class SupportedLanguage: class CodeContext (line 41) | class CodeContext(BaseModel): method language_must_not_be_empty (line 62) | def language_must_not_be_empty(cls, v: str) -> str: FILE: sdks/code-interpreter/python/src/code_interpreter/models/code_sync.py class SupportedLanguageSync (line 23) | class SupportedLanguageSync: class CodeContextSync (line 32) | class CodeContextSync(BaseModel): method language_must_not_be_empty (line 38) | def language_must_not_be_empty(cls, v: str) -> str: FILE: sdks/code-interpreter/python/src/code_interpreter/services/code.py class Codes (line 30) | class Codes(Protocol): method create_context (line 74) | async def create_context(self, language: str) -> CodeContext: method get_context (line 94) | async def get_context(self, context_id: str) -> CodeContext: method list_contexts (line 106) | async def list_contexts(self, language: str) -> list[CodeContext]: method delete_context (line 118) | async def delete_context(self, context_id: str) -> None: method delete_contexts (line 127) | async def delete_contexts(self, language: str) -> None: method run (line 137) | async def run( method run (line 146) | async def run( method run (line 154) | async def run( method interrupt (line 194) | async def interrupt(self, execution_id: str) -> None: FILE: sdks/code-interpreter/python/src/code_interpreter/sync/adapters/code_adapter.py function _normalize_sse_event (line 49) | def _normalize_sse_event(event_dict: dict) -> dict: class CodesAdapterSync (line 65) | class CodesAdapterSync(CodesSync): method __init__ (line 84) | def __init__(self, execd_endpoint: SandboxEndpoint, connection_config:... method _get_execd_url (line 117) | def _get_execd_url(self, path: str) -> str: method create_context (line 121) | def create_context(self, language: str) -> CodeContextSync: method get_context (line 149) | def get_context(self, context_id: str) -> CodeContextSync: method list_contexts (line 169) | def list_contexts(self, language: str) -> list[CodeContextSync]: method delete_context (line 190) | def delete_context(self, context_id: str) -> None: method delete_contexts (line 203) | def delete_contexts(self, language: str) -> None: method run (line 218) | def run( method interrupt (line 298) | def interrupt(self, execution_id: str) -> None: FILE: sdks/code-interpreter/python/src/code_interpreter/sync/adapters/factory.py class AdapterFactorySync (line 27) | class AdapterFactorySync: method __init__ (line 35) | def __init__(self, connection_config: ConnectionConfigSync) -> None: method create_code_execution_service (line 44) | def create_code_execution_service(self, endpoint: SandboxEndpoint) -> ... FILE: sdks/code-interpreter/python/src/code_interpreter/sync/code_interpreter.py class CodeInterpreterSync (line 36) | class CodeInterpreterSync: method __init__ (line 71) | def __init__(self, sandbox: SandboxSync, code_service: CodesSync) -> N... method sandbox (line 85) | def sandbox(self) -> SandboxSync: method id (line 95) | def id(self) -> str: method files (line 105) | def files(self): method commands (line 115) | def commands(self): method metrics (line 125) | def metrics(self): method codes (line 135) | def codes(self) -> CodesSync: method create (line 150) | def create(cls, sandbox: SandboxSync) -> "CodeInterpreterSync": FILE: sdks/code-interpreter/python/src/code_interpreter/sync/services/code.py class CodesSync (line 33) | class CodesSync(Protocol): method create_context (line 58) | def create_context(self, language: str) -> CodeContextSync: method get_context (line 76) | def get_context(self, context_id: str) -> CodeContextSync: method list_contexts (line 80) | def list_contexts(self, language: str) -> list[CodeContextSync]: method delete_context (line 84) | def delete_context(self, context_id: str) -> None: method delete_contexts (line 88) | def delete_contexts(self, language: str) -> None: method run (line 93) | def run( method run (line 102) | def run( method run (line 110) | def run( method interrupt (line 148) | def interrupt(self, execution_id: str) -> None: FILE: sdks/code-interpreter/python/tests/test_adapter_eager_init.py function test_code_service_eager_init_and_client_available (line 24) | async def test_code_service_eager_init_and_client_available() -> None: FILE: sdks/code-interpreter/python/tests/test_code_interpreter_create_and_delegation.py class _FakeSandbox (line 24) | class _FakeSandbox: method __init__ (line 25) | def __init__(self) -> None: method id (line 33) | def id(self): method get_endpoint (line 36) | async def get_endpoint(self, port: int) -> SandboxEndpoint: method is_healthy (line 39) | async def is_healthy(self) -> bool: method get_info (line 42) | async def get_info(self): # pragma: no cover method get_metrics (line 45) | async def get_metrics(self): # pragma: no cover method renew (line 48) | async def renew(self, timeout): # pragma: no cover function test_create_requires_sandbox (line 53) | async def test_create_requires_sandbox() -> None: function test_create_wires_code_service_and_delegates_properties (line 59) | async def test_create_wires_code_service_and_delegates_properties() -> N... FILE: sdks/code-interpreter/python/tests/test_code_service_adapter_openapi_calls.py class _Resp (line 25) | class _Resp: method __init__ (line 26) | def __init__(self, *, status_code: int, parsed) -> None: function test_create_context_uses_openapi_and_converts (line 32) | async def test_create_context_uses_openapi_and_converts(monkeypatch: pyt... function test_interrupt_calls_openapi (line 54) | async def test_interrupt_calls_openapi(monkeypatch: pytest.MonkeyPatch) ... FILE: sdks/code-interpreter/python/tests/test_code_service_adapter_streaming.py class _SseTransport (line 33) | class _SseTransport(httpx.AsyncBaseTransport): method handle_async_request (line 34) | async def handle_async_request(self, request: httpx.Request) -> httpx.... function test_code_execution_converter_includes_context (line 63) | def test_code_execution_converter_includes_context() -> None: function test_run_code_streaming_happy_path_updates_execution (line 72) | async def test_run_code_streaming_happy_path_updates_execution() -> None: function test_run_code_can_accept_language_string_without_context (line 83) | async def test_run_code_can_accept_language_string_without_context() -> ... function test_run_code_rejects_blank_code (line 94) | async def test_run_code_rejects_blank_code() -> None: function test_run_code_rejects_mismatched_language_and_context (line 104) | async def test_run_code_rejects_mismatched_language_and_context() -> None: function test_run_code_non_200_raises_api_exception (line 118) | async def test_run_code_non_200_raises_api_exception() -> None: FILE: sdks/eslint.base.mjs function createBaseConfig (line 5) | function createBaseConfig({ FILE: sdks/mcp/sandbox/python/src/opensandbox_mcp/__main__.py function main (line 25) | def main() -> None: FILE: sdks/mcp/sandbox/python/src/opensandbox_mcp/server.py class ServerState (line 48) | class ServerState: method add (line 53) | async def add(self, sandbox: Sandbox) -> None: method get (line 57) | async def get(self, sandbox_id: str) -> Sandbox | None: method remove (line 61) | async def remove(self, sandbox_id: str) -> Sandbox | None: class StatusResponse (line 66) | class StatusResponse(BaseModel): class DirectoryEntryInput (line 69) | class DirectoryEntryInput(BaseModel): class SandboxInfoResponse (line 75) | class SandboxInfoResponse(BaseModel): class SandboxHealthResponse (line 79) | class SandboxHealthResponse(BaseModel): class FileReadResponse (line 83) | class FileReadResponse(BaseModel): function register_tools (line 88) | def register_tools( function create_server (line 732) | def create_server(connection_config: ConnectionConfig | None = None) -> ... FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/CommandsAdapter.cs class CommandsAdapter (line 29) | internal sealed class CommandsAdapter : IExecdCommands method CommandsAdapter (line 43) | public CommandsAdapter( method RunStreamAsync (line 57) | public async IAsyncEnumerable RunStreamAsync( method RunAsync (line 109) | public async Task RunAsync( method InterruptAsync (line 133) | public async Task InterruptAsync(string sessionId, CancellationToken c... method GetCommandStatusAsync (line 140) | public Task GetCommandStatusAsync(string executionId, C... method GetBackgroundCommandLogsAsync (line 151) | public async Task GetBackgroundCommandLogsAsync( method CreateApiException (line 187) | private static SandboxApiException CreateApiException(HttpResponseMess... FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/EgressAdapter.cs class EgressAdapter (line 24) | internal sealed class EgressAdapter : IEgress method EgressAdapter (line 28) | public EgressAdapter(HttpClientWrapper client) method GetPolicyAsync (line 33) | public async Task GetPolicyAsync(CancellationToken canc... method PatchRulesAsync (line 44) | public async Task PatchRulesAsync( method ParseNetworkPolicy (line 57) | private static NetworkPolicy ParseNetworkPolicy(JsonElement element) method ParseNetworkRule (line 76) | private static NetworkRule ParseNetworkRule(JsonElement element) method ParseNetworkRuleAction (line 87) | private static NetworkRuleAction ParseNetworkRuleAction(string? action) FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/FilesystemAdapter.cs class FilesystemAdapter (line 29) | internal sealed class FilesystemAdapter : ISandboxFiles method FilesystemAdapter (line 43) | public FilesystemAdapter( method GetFileInfoAsync (line 55) | public async Task> GetFil... method SearchAsync (line 64) | public async Task> SearchAsync( method CreateDirectoriesAsync (line 78) | public async Task CreateDirectoriesAsync( method DeleteDirectoriesAsync (line 94) | public async Task DeleteDirectoriesAsync( method WriteFilesAsync (line 102) | public async Task WriteFilesAsync( method ReadFileAsync (line 160) | public async Task ReadFileAsync( method ReadBytesAsync (line 170) | public async Task ReadBytesAsync( method ReadBytesStreamAsync (line 190) | public async IAsyncEnumerable ReadBytesStreamAsync( method DeleteFilesAsync (line 237) | public async Task DeleteFilesAsync( method MoveFilesAsync (line 245) | public async Task MoveFilesAsync( method ReplaceContentsAsync (line 258) | public async Task ReplaceContentsAsync( method SetPermissionsAsync (line 273) | public async Task SetPermissionsAsync( method CreateFileContent (line 289) | private static HttpContent CreateFileContent(object? data) method GetFileName (line 301) | private static string GetFileName(string path) method BuildRepeatedPathQuery (line 307) | private static string BuildRepeatedPathQuery(string route, string key,... method GetEncoding (line 322) | private static Encoding GetEncoding(string encodingName) method ParseFilesInfoResponse (line 334) | private static IReadOnlyDictionary ParseFiles... method ParseSearchFilesResponse (line 349) | private static IReadOnlyList ParseSearchFilesResponse... method ParseFileInfo (line 357) | private static SandboxFileInfo ParseFileInfo(JsonElement element) FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/HealthAdapter.cs class HealthAdapter (line 23) | internal sealed class HealthAdapter : IExecdHealth method HealthAdapter (line 27) | public HealthAdapter(HttpClientWrapper client) method PingAsync (line 32) | public async Task PingAsync(CancellationToken cancellationToken ... FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/MetricsAdapter.cs class MetricsAdapter (line 24) | internal sealed class MetricsAdapter : IExecdMetrics method MetricsAdapter (line 28) | public MetricsAdapter(HttpClientWrapper client) method GetMetricsAsync (line 33) | public async Task GetMetricsAsync(CancellationToken ca... method NormalizeMetrics (line 39) | private static SandboxMetrics NormalizeMetrics(Metrics m) FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/SandboxesAdapter.cs class SandboxesAdapter (line 27) | internal sealed class SandboxesAdapter : ISandboxes method SandboxesAdapter (line 38) | public SandboxesAdapter(HttpClientWrapper client) method CreateSandboxAsync (line 43) | public async Task CreateSandboxAsync( method GetSandboxAsync (line 51) | public async Task GetSandboxAsync( method ListSandboxesAsync (line 59) | public async Task ListSandboxesAsync( method DeleteSandboxAsync (line 96) | public async Task DeleteSandboxAsync( method PauseSandboxAsync (line 103) | public async Task PauseSandboxAsync( method ResumeSandboxAsync (line 110) | public async Task ResumeSandboxAsync( method RenewSandboxExpirationAsync (line 117) | public async Task RenewSandboxExpirati... method GetSandboxEndpointAsync (line 130) | public async Task GetSandboxEndpointAsync( method ParseIsoDate (line 155) | private static DateTime ParseIsoDate(string fieldName, JsonElement ele... method ParseOptionalIsoDate (line 171) | private static DateTime? ParseOptionalIsoDate(string fieldName, JsonEl... method ParseSandboxInfo (line 176) | private static SandboxInfo ParseSandboxInfo(JsonElement element) method ParseCreateSandboxResponse (line 208) | private static CreateSandboxResponse ParseCreateSandboxResponse(JsonEl... method ParseListSandboxesResponse (line 232) | private static ListSandboxesResponse ParseListSandboxesResponse(JsonEl... method ParseRenewSandboxExpirationResponse (line 256) | private static RenewSandboxExpirationResponse ParseRenewSandboxExpirat... FILE: sdks/sandbox/csharp/src/OpenSandbox/Adapters/SseParser.cs class SseParser (line 26) | internal static class SseParser method ParseJsonEventStreamAsync (line 43) | public static async IAsyncEnumerable ParseJsonEventStreamAsync( method TryParseJson (line 136) | private static T? TryParseJson(string json) FILE: sdks/sandbox/csharp/src/OpenSandbox/Config/ConnectionConfig.cs type ConnectionProtocol (line 22) | public enum ConnectionProtocol class ConnectionConfigOptions (line 38) | public class ConnectionConfigOptions class ConnectionConfig (line 81) | public sealed class ConnectionConfig method ConnectionConfig (line 125) | public ConnectionConfig(ConnectionConfigOptions? options = null) method GetBaseUrl (line 156) | public string GetBaseUrl() method GetHttpClient (line 172) | public HttpClient GetHttpClient() method CreateHttpClient (line 195) | public HttpClient CreateHttpClient() method CreateSseHttpClient (line 230) | public HttpClient CreateSseHttpClient() method NormalizeDomainBase (line 253) | private static (ConnectionProtocol?, string) NormalizeDomainBase(strin... method StripV1Suffix (line 272) | private static string StripV1Suffix(string s) FILE: sdks/sandbox/csharp/src/OpenSandbox/Config/DiagnosticsOptions.cs class SdkDiagnosticsOptions (line 22) | public sealed class SdkDiagnosticsOptions FILE: sdks/sandbox/csharp/src/OpenSandbox/Core/Constants.cs class Constants (line 20) | public static class Constants FILE: sdks/sandbox/csharp/src/OpenSandbox/Core/Exceptions.cs class SandboxErrorCodes (line 20) | public static class SandboxErrorCodes class SandboxError (line 51) | public sealed class SandboxError method SandboxError (line 68) | public SandboxError(string code, string? message = null) method ToString (line 75) | public override string ToString() => Message != null ? $"[{Code}] {Mes... class SandboxException (line 81) | public class SandboxException : Exception method SandboxException (line 100) | public SandboxException( method SandboxException (line 115) | public SandboxException( class SandboxApiException (line 130) | public class SandboxApiException : SandboxException method SandboxApiException (line 157) | public SandboxApiException( class SandboxInternalException (line 174) | public class SandboxInternalException : SandboxException method SandboxInternalException (line 181) | public SandboxInternalException(string? message = null, Exception? inn... class SandboxUnhealthyException (line 190) | public class SandboxUnhealthyException : SandboxException method SandboxUnhealthyException (line 197) | public SandboxUnhealthyException(string? message = null, Exception? in... class SandboxReadyTimeoutException (line 206) | public class SandboxReadyTimeoutException : SandboxException method SandboxReadyTimeoutException (line 213) | public SandboxReadyTimeoutException(string? message = null, Exception?... class InvalidArgumentException (line 222) | public class InvalidArgumentException : SandboxException method InvalidArgumentException (line 229) | public InvalidArgumentException(string? message = null, Exception? inn... FILE: sdks/sandbox/csharp/src/OpenSandbox/Factory/DefaultAdapterFactory.cs class DefaultAdapterFactory (line 24) | public sealed class DefaultAdapterFactory : IAdapterFactory method Create (line 30) | public static IAdapterFactory Create() => new DefaultAdapterFactory(); method CreateLifecycleStack (line 33) | public LifecycleStack CreateLifecycleStack(CreateLifecycleStackOptions... method CreateExecdStack (line 50) | public ExecdStack CreateExecdStack(CreateExecdStackOptions options) method CreateEgressStack (line 84) | public EgressStack CreateEgressStack(CreateEgressStackOptions options) FILE: sdks/sandbox/csharp/src/OpenSandbox/Factory/IAdapterFactory.cs class CreateLifecycleStackOptions (line 25) | public class CreateLifecycleStackOptions class CreateExecdStackOptions (line 51) | public class CreateExecdStackOptions class LifecycleStack (line 83) | public class LifecycleStack class ExecdStack (line 94) | public class ExecdStack class CreateEgressStackOptions (line 117) | public class CreateEgressStackOptions class EgressStack (line 130) | public class EgressStack type IAdapterFactory (line 138) | public interface IAdapterFactory method CreateLifecycleStack (line 145) | LifecycleStack CreateLifecycleStack(CreateLifecycleStackOptions options); method CreateExecdStack (line 152) | ExecdStack CreateExecdStack(CreateExecdStackOptions options); method CreateEgressStack (line 159) | EgressStack CreateEgressStack(CreateEgressStackOptions options); FILE: sdks/sandbox/csharp/src/OpenSandbox/HttpClientProvider.cs class HttpClientProvider (line 24) | public sealed class HttpClientProvider : IDisposable method HttpClientProvider (line 29) | internal HttpClientProvider(ConnectionConfig connectionConfig, ILogger... method Dispose (line 50) | public void Dispose() FILE: sdks/sandbox/csharp/src/OpenSandbox/Internal/ExecutionEventDispatcher.cs class ExecutionEventDispatcher (line 22) | internal sealed class ExecutionEventDispatcher method ExecutionEventDispatcher (line 27) | public ExecutionEventDispatcher(Execution execution, ExecutionHandlers... method DispatchAsync (line 33) | public async Task DispatchAsync(ServerStreamEvent ev) method HandleInitAsync (line 69) | private async Task HandleInitAsync(ServerStreamEvent ev, long timestamp) method HandleStdoutAsync (line 89) | private async Task HandleStdoutAsync(ServerStreamEvent ev, long timest... method HandleStderrAsync (line 106) | private async Task HandleStderrAsync(ServerStreamEvent ev, long timest... method HandleResultAsync (line 123) | private async Task HandleResultAsync(ServerStreamEvent ev, long timest... method HandleExecutionCount (line 141) | private void HandleExecutionCount(ServerStreamEvent ev) method HandleExecutionCompleteAsync (line 149) | private async Task HandleExecutionCompleteAsync(ServerStreamEvent ev, ... method HandleErrorAsync (line 165) | private async Task HandleErrorAsync(ServerStreamEvent ev, long timestamp) method ExtractText (line 186) | private static string? ExtractText(Dictionary? results) method GetStringValue (line 203) | private static string? GetStringValue(Dictionary dict,... method GetStringArrayValue (line 210) | private static IReadOnlyList? GetStringArrayValue(Dictionary GetAsync( method GetAsync (line 68) | public async Task GetAsync( method PostAsync (line 82) | public async Task PostAsync( method PostAsync (line 102) | public async Task PostAsync( method PatchAsync (line 122) | public async Task PatchAsync( method PatchAsync (line 142) | public async Task PatchAsync( method DeleteAsync (line 162) | public async Task DeleteAsync( method DeleteAsync (line 176) | public async Task DeleteAsync( method SendAsync (line 190) | public async Task SendAsync( method GetBytesAsync (line 199) | public async Task GetBytesAsync( method GetStreamAsync (line 222) | public async Task GetStreamAsync( method BuildUrl (line 245) | private string BuildUrl(string path, Dictionary? quer... method ApplyDefaultHeaders (line 260) | private void ApplyDefaultHeaders(HttpRequestMessage request) method HandleResponseAsync (line 271) | private async Task HandleResponseAsync(HttpResponseMessage respo... method EnsureSuccessAsync (line 304) | private async Task EnsureSuccessAsync(HttpResponseMessage response, Ca... method LogHttpFailure (line 314) | private void LogHttpFailure(HttpResponseMessage response) method ThrowApiException (line 329) | private static void ThrowApiException(HttpResponseMessage response, st... FILE: sdks/sandbox/csharp/src/OpenSandbox/Models/Execd.cs class ServerStreamEvent (line 22) | public class ServerStreamEvent class ServerStreamEventTypes (line 70) | public static class ServerStreamEventTypes class RunCommandRequest (line 111) | public class RunCommandRequest class RunCommandOptions (line 160) | public class RunCommandOptions class CommandStatus (line 198) | public class CommandStatus class CommandLogs (line 246) | public class CommandLogs class SupportedLanguages (line 262) | public static class SupportedLanguages class Metrics (line 298) | public class Metrics class SandboxMetrics (line 334) | public class SandboxMetrics class PingResponse (line 365) | public class PingResponse FILE: sdks/sandbox/csharp/src/OpenSandbox/Models/Execution.cs class OutputMessage (line 22) | public class OutputMessage class ExecutionResult (line 43) | public class ExecutionResult class ExecutionError (line 64) | public class ExecutionError class ExecutionComplete (line 90) | public class ExecutionComplete class ExecutionInit (line 106) | public class ExecutionInit class ExecutionLogs (line 122) | public class ExecutionLogs class Execution (line 138) | public class Execution class ExecutionHandlers (line 174) | public class ExecutionHandlers FILE: sdks/sandbox/csharp/src/OpenSandbox/Models/Filesystem.cs class SandboxFileInfo (line 22) | public class SandboxFileInfo class Permission (line 70) | public class Permission class FileMetadata (line 94) | public class FileMetadata class WriteEntry (line 124) | public class WriteEntry class CreateDirectoryEntry (line 156) | public class CreateDirectoryEntry class SearchEntry (line 182) | public class SearchEntry class MoveEntry (line 198) | public class MoveEntry class ContentReplaceEntry (line 214) | public class ContentReplaceEntry class SetPermissionEntry (line 235) | public class SetPermissionEntry class ReadFileOptions (line 261) | public class ReadFileOptions class ReadBytesOptions (line 277) | public class ReadBytesOptions class RenameFileItem (line 288) | public class RenameFileItem class ReplaceFileContentItem (line 306) | public class ReplaceFileContentItem FILE: sdks/sandbox/csharp/src/OpenSandbox/Models/Sandboxes.cs class ImageAuth (line 22) | public class ImageAuth class ImageSpec (line 46) | public class ImageSpec type NetworkRuleAction (line 64) | [JsonConverter(typeof(JsonStringEnumConverter))] class NetworkRule (line 83) | public class NetworkRule class NetworkPolicy (line 101) | public class NetworkPolicy class Host (line 119) | public class Host class PVC (line 131) | public class PVC class Volume (line 144) | public class Volume class SandboxStatus (line 186) | public class SandboxStatus class SandboxInfo (line 210) | public class SandboxInfo class CreateSandboxRequest (line 258) | public class CreateSandboxRequest class CreateSandboxResponse (line 318) | public class CreateSandboxResponse class PaginationInfo (line 360) | public class PaginationInfo class ListSandboxesResponse (line 396) | public class ListSandboxesResponse class ListSandboxesParams (line 414) | public class ListSandboxesParams class RenewSandboxExpirationRequest (line 440) | public class RenewSandboxExpirationRequest class RenewSandboxExpirationResponse (line 452) | public class RenewSandboxExpirationResponse class Endpoint (line 464) | public class Endpoint class SandboxStates (line 482) | public static class SandboxStates FILE: sdks/sandbox/csharp/src/OpenSandbox/Options.cs class SandboxCreateOptions (line 24) | public class SandboxCreateOptions class SandboxConnectOptions (line 122) | public class SandboxConnectOptions class SandboxResumeOptions (line 168) | public class SandboxResumeOptions class WaitUntilReadyOptions (line 189) | public class WaitUntilReadyOptions class SandboxManagerOptions (line 210) | public class SandboxManagerOptions class SandboxFilter (line 231) | public class SandboxFilter FILE: sdks/sandbox/csharp/src/OpenSandbox/Sandbox.cs class Sandbox (line 32) | public sealed class Sandbox : IAsyncDisposable method Sandbox (line 78) | private Sandbox( method CreateAsync (line 119) | public static async Task CreateAsync( method ConnectAsync (line 271) | public static async Task ConnectAsync( method ResumeAsync (line 382) | public static async Task ResumeAsync( method GetInfoAsync (line 419) | public Task GetInfoAsync(CancellationToken cancellationTo... method IsHealthyAsync (line 429) | public async Task IsHealthyAsync(CancellationToken cancellationT... method GetMetricsAsync (line 448) | public Task GetMetricsAsync(CancellationToken cancella... method PauseAsync (line 458) | public Task PauseAsync(CancellationToken cancellationToken = default) method ResumeAsync (line 472) | public async Task ResumeAsync( method KillAsync (line 498) | public Task KillAsync(CancellationToken cancellationToken = default) method RenewAsync (line 510) | public Task RenewAsync( method GetEgressPolicyAsync (line 526) | public async Task GetEgressPolicyAsync(CancellationToke... method PatchEgressRulesAsync (line 540) | public async Task PatchEgressRulesAsync( method GetEndpointAsync (line 554) | public Task GetEndpointAsync(int port, CancellationToken can... method GetEndpointUrlAsync (line 566) | public async Task GetEndpointUrlAsync(int port, CancellationTo... method WaitUntilReadyAsync (line 580) | public async Task WaitUntilReadyAsync( method DisposeAsync (line 639) | public ValueTask DisposeAsync() method MergeHeaders (line 652) | internal static IReadOnlyDictionary MergeHeaders( FILE: sdks/sandbox/csharp/src/OpenSandbox/SandboxManager.cs class SandboxManager (line 32) | public sealed class SandboxManager : IAsyncDisposable method SandboxManager (line 40) | private SandboxManager( method Create (line 58) | public static SandboxManager Create(SandboxManagerOptions? options = n... method ListSandboxInfosAsync (line 95) | public Task ListSandboxInfosAsync( method GetSandboxInfoAsync (line 116) | public Task GetSandboxInfoAsync( method KillSandboxAsync (line 131) | public Task KillSandboxAsync( method PauseSandboxAsync (line 146) | public Task PauseSandboxAsync( method ResumeSandboxAsync (line 161) | public Task ResumeSandboxAsync( method RenewSandboxAsync (line 177) | public async Task RenewSandboxAsync( method DisposeAsync (line 193) | public ValueTask DisposeAsync() FILE: sdks/sandbox/csharp/src/OpenSandbox/Services/IEgress.cs type IEgress (line 22) | public interface IEgress method GetPolicyAsync (line 24) | Task GetPolicyAsync(CancellationToken cancellationToken... method PatchRulesAsync (line 26) | Task PatchRulesAsync( FILE: sdks/sandbox/csharp/src/OpenSandbox/Services/IExecdCommands.cs type IExecdCommands (line 23) | public interface IExecdCommands method RunStreamAsync (line 35) | IAsyncEnumerable RunStreamAsync( method RunAsync (line 50) | Task RunAsync( method InterruptAsync (line 63) | Task InterruptAsync( method GetCommandStatusAsync (line 75) | Task GetCommandStatusAsync( method GetBackgroundCommandLogsAsync (line 88) | Task GetBackgroundCommandLogsAsync( FILE: sdks/sandbox/csharp/src/OpenSandbox/Services/IExecdHealth.cs type IExecdHealth (line 22) | public interface IExecdHealth method PingAsync (line 30) | Task PingAsync(CancellationToken cancellationToken = default); FILE: sdks/sandbox/csharp/src/OpenSandbox/Services/IExecdMetrics.cs type IExecdMetrics (line 23) | public interface IExecdMetrics method GetMetricsAsync (line 31) | Task GetMetricsAsync(CancellationToken cancellationTok... FILE: sdks/sandbox/csharp/src/OpenSandbox/Services/ISandboxFiles.cs type ISandboxFiles (line 23) | public interface ISandboxFiles method GetFileInfoAsync (line 33) | Task> GetFileInfoAsync( method SearchAsync (line 45) | Task> SearchAsync( method CreateDirectoriesAsync (line 56) | Task CreateDirectoriesAsync( method DeleteDirectoriesAsync (line 67) | Task DeleteDirectoriesAsync( method WriteFilesAsync (line 78) | Task WriteFilesAsync( method ReadFileAsync (line 91) | Task ReadFileAsync( method ReadBytesAsync (line 105) | Task ReadBytesAsync( method ReadBytesStreamAsync (line 119) | IAsyncEnumerable ReadBytesStreamAsync( method DeleteFilesAsync (line 131) | Task DeleteFilesAsync( method MoveFilesAsync (line 142) | Task MoveFilesAsync( method ReplaceContentsAsync (line 153) | Task ReplaceContentsAsync( method SetPermissionsAsync (line 164) | Task SetPermissionsAsync( FILE: sdks/sandbox/csharp/src/OpenSandbox/Services/ISandboxes.cs type ISandboxes (line 23) | public interface ISandboxes method CreateSandboxAsync (line 33) | Task CreateSandboxAsync( method GetSandboxAsync (line 45) | Task GetSandboxAsync( method ListSandboxesAsync (line 56) | Task ListSandboxesAsync( method DeleteSandboxAsync (line 67) | Task DeleteSandboxAsync( method PauseSandboxAsync (line 78) | Task PauseSandboxAsync( method ResumeSandboxAsync (line 89) | Task ResumeSandboxAsync( method RenewSandboxExpirationAsync (line 102) | Task RenewSandboxExpirationAsync( method GetSandboxEndpointAsync (line 117) | Task GetSandboxEndpointAsync( FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/CommandsAdapterTests.cs class CommandsAdapterTests (line 29) | public class CommandsAdapterTests method GetCommandStatusAsync_ShouldParseStatusResponse (line 31) | [Fact] method GetBackgroundCommandLogsAsync_ShouldParseCursorHeader (line 53) | [Fact] method GetBackgroundCommandLogsAsync_ShouldReturnNullCursorWhenHeaderMissing (line 74) | [Fact] method RunStreamAsync_ShouldSendTimeoutInMilliseconds (line 92) | [Fact] method RunStreamAsync_ShouldSendUidGidAndEnvs (line 120) | [Fact] method RunStreamAsync_ShouldRejectGidWithoutUid (line 158) | [Fact] method CreateAdapter (line 184) | private static CommandsAdapter CreateAdapter(HttpMessageHandler httpHa... class StubHttpMessageHandler (line 194) | private sealed class StubHttpMessageHandler : HttpMessageHandler method StubHttpMessageHandler (line 198) | public StubHttpMessageHandler(Func SendAsync(HttpReq... FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/ConnectionConfigTests.cs class ConnectionConfigTests (line 22) | public class ConnectionConfigTests method Constructor_WithDefaultOptions_ShouldUseDefaults (line 24) | [Fact] method Constructor_WithCustomOptions_ShouldApplyOptions (line 39) | [Fact] method Constructor_WithApiKey_ShouldAddApiKeyHeader (line 69) | [Fact] method GetBaseUrl_WithHttpProtocol_ShouldReturnHttpUrl (line 86) | [Fact] method GetBaseUrl_WithHttpsProtocol_ShouldReturnHttpsUrl (line 103) | [Fact] method GetBaseUrl_WithFullUrl_ShouldPreserveScheme (line 120) | [Fact] method GetBaseUrl_WithV1Suffix_ShouldNotDuplicate (line 136) | [Fact] method GetBaseUrl_WithTrailingSlash_ShouldNormalize (line 152) | [Fact] method CreateHttpClient_ShouldReturnConfiguredClient (line 168) | [Fact] method GetHttpClient_ShouldReturnSameInstance (line 185) | [Fact] method CreateSseHttpClient_ShouldHaveInfiniteTimeout (line 199) | [Fact] FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/ConstantsTests.cs class ConstantsTests (line 21) | public class ConstantsTests method DefaultExecdPort_ShouldBe44772 (line 23) | [Fact] method DefaultEntrypoint_ShouldBeTailCommand (line 29) | [Fact] method DefaultResourceLimits_ShouldContainCpuAndMemory (line 35) | [Fact] method DefaultTimeoutSeconds_ShouldBe600 (line 44) | [Fact] method DefaultReadyTimeoutSeconds_ShouldBe30 (line 50) | [Fact] method DefaultHealthCheckPollingIntervalMillis_ShouldBe200 (line 56) | [Fact] method DefaultRequestTimeoutSeconds_ShouldBe30 (line 62) | [Fact] method EnvDomain_ShouldBeCorrect (line 68) | [Fact] method EnvApiKey_ShouldBeCorrect (line 74) | [Fact] method ApiKeyHeader_ShouldBeCorrect (line 80) | [Fact] method RequestIdHeader_ShouldBeCorrect (line 86) | [Fact] FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/ExceptionTests.cs class ExceptionTests (line 21) | public class ExceptionTests method SandboxError_ShouldStoreCodeAndMessage (line 23) | [Fact] method SandboxError_ToString_WithMessage_ShouldFormatCorrectly (line 34) | [Fact] method SandboxError_ToString_WithoutMessage_ShouldFormatCorrectly (line 47) | [Fact] method SandboxException_ShouldContainError (line 60) | [Fact] method SandboxException_ShouldContainRequestId (line 74) | [Fact] method SandboxException_ShouldDeclareLegacyConstructor_ForBinaryCompatibility (line 84) | [Fact] method SandboxException_WithoutError_ShouldCreateDefaultError (line 98) | [Fact] method SandboxApiException_ShouldContainStatusCodeAndRequestId (line 109) | [Fact] method SandboxApiException_ShouldDeclareRequestIdProperty_ForBinaryCompatibility (line 127) | [Fact] method SandboxApiException_WithCustomError_ShouldUseProvidedError (line 139) | [Fact] method SandboxReadyTimeoutException_ShouldHaveCorrectErrorCode (line 156) | [Fact] method SandboxUnhealthyException_ShouldHaveCorrectErrorCode (line 167) | [Fact] method InvalidArgumentException_ShouldHaveCorrectErrorCode (line 178) | [Fact] method SandboxInternalException_ShouldHaveCorrectErrorCode (line 189) | [Fact] method SandboxException_WithInnerException_ShouldPreserveInnerException (line 200) | [Fact] FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/ModelsTests.cs class ModelsTests (line 21) | public class ModelsTests method Execution_ShouldInitializeWithEmptyCollections (line 23) | [Fact] method ExecutionLogs_ShouldAllowAddingMessages (line 40) | [Fact] method OutputMessage_ShouldStoreProperties (line 60) | [Fact] method ExecutionResult_ShouldStoreProperties (line 77) | [Fact] method ExecutionError_ShouldStoreProperties (line 94) | [Fact] method ExecutionComplete_ShouldStoreProperties (line 113) | [Fact] method SandboxInfo_ShouldStoreProperties (line 128) | [Fact] method SandboxStatus_ShouldStoreProperties (line 151) | [Fact] method ImageSpec_WithAuth_ShouldStoreCredentials (line 168) | [Fact] method NetworkPolicy_ShouldStoreRules (line 189) | [Fact] method SandboxMetrics_ShouldStoreProperties (line 210) | [Fact] method SandboxFileInfo_ShouldStoreProperties (line 231) | [Fact] method WriteEntry_ShouldStoreProperties (line 253) | [Fact] method SearchEntry_ShouldStoreProperties (line 272) | [Fact] method MoveEntry_ShouldStoreProperties (line 287) | [Fact] method RunCommandOptions_ShouldStoreProperties (line 302) | [Fact] method ServerStreamEvent_ShouldStoreProperties (line 328) | [Fact] method CommandStatus_ShouldStoreProperties (line 349) | [Fact] method CommandLogs_ShouldStoreProperties (line 373) | [Fact] method PaginationInfo_ShouldStoreProperties (line 386) | [Fact] FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/OptionsTests.cs class OptionsTests (line 23) | public class OptionsTests method SandboxCreateOptions_ShouldStoreProperties (line 25) | [Fact] method SandboxCreateOptions_WithNetworkPolicy_ShouldStorePolicy (line 54) | [Fact] method SandboxCreateOptions_WithImageAuth_ShouldStoreAuth (line 77) | [Fact] method SandboxConnectOptions_ShouldStoreProperties (line 97) | [Fact] method SandboxResumeOptions_ShouldStoreProperties (line 116) | [Fact] method WaitUntilReadyOptions_ShouldStoreProperties (line 133) | [Fact] method WaitUntilReadyOptions_WithCustomHealthCheck_ShouldStoreFunction (line 148) | [Fact] method SandboxManagerOptions_ShouldStoreProperties (line 171) | [Fact] method SandboxFilter_ShouldStoreProperties (line 190) | [Fact] method SandboxFilter_WithNullValues_ShouldAllowNulls (line 211) | [Fact] FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/SandboxEgressLifecycleTests.cs class SandboxEgressLifecycleTests (line 26) | public class SandboxEgressLifecycleTests method CreateAsync_ShouldBuildEgressStackOnce_AndReuseItForOperations (line 28) | [Fact] class StubAdapterFactory (line 65) | private sealed class StubAdapterFactory : IAdapterFactory method StubAdapterFactory (line 70) | public StubAdapterFactory(ISandboxes sandboxes, IEgress egress) method CreateLifecycleStack (line 80) | public LifecycleStack CreateLifecycleStack(CreateLifecycleStackOptio... method CreateExecdStack (line 88) | public ExecdStack CreateExecdStack(CreateExecdStackOptions options) method CreateEgressStack (line 99) | public EgressStack CreateEgressStack(CreateEgressStackOptions options) class StubSandboxes (line 110) | private sealed class StubSandboxes : ISandboxes method CreateSandboxAsync (line 114) | public Task CreateSandboxAsync(CreateSandboxR... method GetSandboxAsync (line 128) | public Task GetSandboxAsync(string sandboxId, Cancellat... method ListSandboxesAsync (line 131) | public Task ListSandboxesAsync(ListSandboxesP... method DeleteSandboxAsync (line 134) | public Task DeleteSandboxAsync(string sandboxId, CancellationToken c... method PauseSandboxAsync (line 137) | public Task PauseSandboxAsync(string sandboxId, CancellationToken ca... method ResumeSandboxAsync (line 140) | public Task ResumeSandboxAsync(string sandboxId, CancellationToken c... method RenewSandboxExpirationAsync (line 143) | public Task RenewSandboxExpirationAs... method GetSandboxEndpointAsync (line 146) | public Task GetSandboxEndpointAsync(string sandboxId, int ... class StubEgress (line 160) | private sealed class StubEgress : IEgress method GetPolicyAsync (line 166) | public Task GetPolicyAsync(CancellationToken cancella... method PatchRulesAsync (line 180) | public Task PatchRulesAsync(IReadOnlyList rules, Cancel... class StubCommands (line 187) | private sealed class StubCommands : IExecdCommands method RunStreamAsync (line 189) | public IAsyncEnumerable RunStreamAsync(string com... method RunAsync (line 192) | public Task RunAsync(string command, RunCommandOptions? o... method GetCommandStatusAsync (line 195) | public Task GetCommandStatusAsync(string executionId,... method GetBackgroundCommandLogsAsync (line 198) | public Task GetBackgroundCommandLogsAsync(string execut... method InterruptAsync (line 201) | public Task InterruptAsync(string executionId, CancellationToken can... class StubFiles (line 205) | private sealed class StubFiles : ISandboxFiles method GetFileInfoAsync (line 207) | public Task> GetFileInf... method SearchAsync (line 210) | public Task> SearchAsync(SearchEntry ... method CreateDirectoriesAsync (line 213) | public Task CreateDirectoriesAsync(IEnumerable... method DeleteDirectoriesAsync (line 216) | public Task DeleteDirectoriesAsync(IEnumerable paths, Cancel... method WriteFilesAsync (line 219) | public Task WriteFilesAsync(IEnumerable entries, Cancell... method ReadFileAsync (line 222) | public Task ReadFileAsync(string path, ReadFileOptions? opti... method ReadBytesAsync (line 225) | public Task ReadBytesAsync(string path, ReadBytesOptions? op... method ReadBytesStreamAsync (line 228) | public IAsyncEnumerable ReadBytesStreamAsync(string path, Re... method DeleteFilesAsync (line 231) | public Task DeleteFilesAsync(IEnumerable paths, Cancellation... method MoveFilesAsync (line 234) | public Task MoveFilesAsync(IEnumerable entries, Cancellat... method ReplaceContentsAsync (line 237) | public Task ReplaceContentsAsync(IEnumerable en... method SetPermissionsAsync (line 240) | public Task SetPermissionsAsync(IEnumerable entr... class StubHealth (line 244) | private sealed class StubHealth : IExecdHealth method PingAsync (line 246) | public Task PingAsync(CancellationToken cancellationToken = de... class StubMetrics (line 249) | private sealed class StubMetrics : IExecdMetrics method GetMetricsAsync (line 251) | public Task GetMetricsAsync(CancellationToken cancel... FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/SandboxReadinessDiagnosticsTests.cs class SandboxReadinessDiagnosticsTests (line 26) | public class SandboxReadinessDiagnosticsTests method WaitUntilReadyAsync_WhenHealthCheckThrows_IncludesLastErrorAndConnectionContext (line 28) | [Fact] method WaitUntilReadyAsync_WhenHealthCheckReturnsFalse_UsesFalseContinuouslyHint (line 64) | [Fact] method CreateSandboxForReadinessTestAsync (line 97) | private static async Task CreateSandboxForReadinessTestAsync( FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/SandboxesAdapterTests.cs class SandboxesAdapterTests (line 25) | public class SandboxesAdapterTests method GetSandboxEndpointAsync_ShouldIncludeUseServerProxyQueryParam (line 27) | [Fact] method GetSandboxEndpointAsync_ShouldDefaultUseServerProxyToFalse (line 45) | [Fact] method GetSandboxAsync_ShouldTreatMissingExpiresAtAsNull (line 62) | [Fact] method CreateSandboxAsync_ShouldTreatMissingExpiresAtAsNull (line 81) | [Fact] method CreateAdapterWithJsonResponse (line 104) | private static SandboxesAdapter CreateAdapterWithJsonResponse(string p... class CaptureHandler (line 112) | private sealed class CaptureHandler : HttpMessageHandler method SendAsync (line 116) | protected override Task SendAsync(HttpRequestMe... class StaticJsonHandler (line 128) | private sealed class StaticJsonHandler(string payload) : HttpMessageHa... method SendAsync (line 130) | protected override Task SendAsync(HttpRequestMe... FILE: sdks/sandbox/csharp/tests/OpenSandbox.Tests/SseParserTests.cs class SseParserTests (line 25) | public class SseParserTests method ParseJsonEventStreamAsync_WithSseFormat_ShouldParseEvents (line 27) | [Fact] method ParseJsonEventStreamAsync_WithNdjsonFormat_ShouldParseEvents (line 57) | [Fact] method ParseJsonEventStreamAsync_WithSseComments_ShouldSkipComments (line 82) | [Fact] method ParseJsonEventStreamAsync_WithSseMetadata_ShouldSkipMetadata (line 104) | [Fact] method ParseJsonEventStreamAsync_WithEmptyLines_ShouldSkipEmptyLines (line 127) | [Fact] method ParseJsonEventStreamAsync_WithInvalidJson_ShouldSkipInvalidLines (line 150) | [Fact] method ParseJsonEventStreamAsync_WithErrorResponse_ShouldThrowSandboxApiException (line 173) | [Fact] method ParseJsonEventStreamAsync_WithErrorResponseNoJson_ShouldUseFallbackMessage (line 194) | [Fact] method ParseJsonEventStreamAsync_WithCancellation_ShouldStopParsing (line 213) | [Fact] method CreateMockResponse (line 242) | private static HttpResponseMessage CreateMockResponse(HttpStatusCode s... FILE: sdks/sandbox/javascript/scripts/generate-api.mjs constant LICENSE_OWNER (line 23) | const LICENSE_OWNER = "Alibaba Group Holding Ltd."; constant LICENSE_MARKER_REGEX (line 24) | const LICENSE_MARKER_REGEX = new RegExp(`Copyright [0-9]{4} ${LICENSE_OW... function buildLicenseText (line 26) | function buildLicenseText() { function asLineCommentHeader (line 43) | function asLineCommentHeader(text) { function ensureLicenseHeader (line 50) | function ensureLicenseHeader(filePath) { function fail (line 60) | function fail(message) { function run (line 65) | function run(cmd, args, cwd) { FILE: sdks/sandbox/javascript/src/adapters/commandsAdapter.ts function joinUrl (line 30) | function joinUrl(baseUrl: string, pathname: string): string { type ApiRunCommandRequest (line 37) | type ApiRunCommandRequest = type ApiCommandStatusOk (line 39) | type ApiCommandStatusOk = type ApiCommandLogsOk (line 41) | type ApiCommandLogsOk = function toRunCommandRequest (line 44) | function toRunCommandRequest(command: string, opts?: RunCommandOpts): Ap... function parseOptionalDate (line 69) | function parseOptionalDate(value: unknown, field: string): Date | undefi... type CommandsAdapterOptions (line 82) | interface CommandsAdapterOptions { class CommandsAdapter (line 91) | class CommandsAdapter implements ExecdCommands { method constructor (line 94) | constructor( method interrupt (line 101) | async interrupt(sessionId: string): Promise { method getCommandStatus (line 108) | async getCommandStatus(commandId: string): Promise { method getBackgroundCommandLogs (line 128) | async getBackgroundCommandLogs(commandId: string, cursor?: number): Pr... method runStream (line 146) | async *runStream( method run (line 170) | async run( FILE: sdks/sandbox/javascript/src/adapters/egressAdapter.ts type ApiGetPolicyOk (line 21) | type ApiGetPolicyOk = type ApiPatchRulesRequest (line 23) | type ApiPatchRulesRequest = class EgressAdapter (line 26) | class EgressAdapter implements Egress { method constructor (line 27) | constructor(private readonly client: EgressClient) {} method getPolicy (line 29) | async getPolicy(): Promise { method patchRules (line 39) | async patchRules(rules: NetworkRule[]): Promise { FILE: sdks/sandbox/javascript/src/adapters/filesystemAdapter.ts function joinUrl (line 35) | function joinUrl(baseUrl: string, pathname: string): string { function toUploadBlob (line 41) | function toUploadBlob(data: Blob | Uint8Array | ArrayBuffer | string): B... function isReadableStream (line 50) | function isReadableStream(v: unknown): v is ReadableStream { function isAsyncIterable (line 54) | function isAsyncIterable(v: unknown): v is AsyncIterable { function isNodeRuntime (line 58) | function isNodeRuntime(): boolean { function collectBytes (line 63) | async function collectBytes( function toReadableStream (line 99) | function toReadableStream( function basename (line 120) | function basename(p: string): string { function encodeUtf8 (line 125) | function encodeUtf8(s: string): Uint8Array { type FilesystemAdapterOptions (line 174) | interface FilesystemAdapterOptions { function toPermission (line 184) | function toPermission(e: { class FilesystemAdapter (line 204) | class FilesystemAdapter implements SandboxFiles { method constructor (line 223) | constructor( method parseIsoDate (line 230) | private parseIsoDate(field: string, v: unknown): Date { method mapApiFileInfo (line 244) | private mapApiFileInfo(raw: typeof FilesystemAdapter._ApiFileInfo): Fi... method getFileInfo (line 264) | async getFileInfo(paths: string[]): Promise> { method deleteFiles (line 288) | async deleteFiles(paths: string[]): Promise { method createDirectories (line 295) | async createDirectories( method deleteDirectories (line 309) | async deleteDirectories(paths: string[]): Promise { method setPermissions (line 316) | async setPermissions(entries: SetPermissionEntry[]): Promise { method moveFiles (line 329) | async moveFiles(entries: MoveEntry[]): Promise { method replaceContents (line 342) | async replaceContents(entries: ContentReplaceEntry[]): Promise { method search (line 355) | async search(entry: SearchEntry): Promise { method uploadFile (line 372) | private async uploadFile( method readBytes (line 477) | async readBytes( method readBytesStream (line 509) | readBytesStream( method downloadStream (line 516) | private async *downloadStream( method readFile (line 555) | async readFile( method writeFiles (line 564) | async writeFiles(entries: WriteEntry[]): Promise { FILE: sdks/sandbox/javascript/src/adapters/healthAdapter.ts class HealthAdapter (line 19) | class HealthAdapter implements ExecdHealth { method constructor (line 20) | constructor(private readonly client: ExecdClient) {} method ping (line 22) | async ping(): Promise { FILE: sdks/sandbox/javascript/src/adapters/metricsAdapter.ts type ApiMetricsOk (line 21) | type ApiMetricsOk = function normalizeMetrics (line 24) | function normalizeMetrics(m: ApiMetricsOk): SandboxMetrics { class MetricsAdapter (line 39) | class MetricsAdapter implements ExecdMetrics { method constructor (line 40) | constructor(private readonly client: ExecdClient) {} method getMetrics (line 42) | async getMetrics(): Promise { FILE: sdks/sandbox/javascript/src/adapters/openapiError.ts function throwOnOpenApiFetchError (line 17) | function throwOnOpenApiFetchError( FILE: sdks/sandbox/javascript/src/adapters/sandboxesAdapter.ts type ApiCreateSandboxRequest (line 33) | type ApiCreateSandboxRequest = type ApiCreateSandboxOk (line 35) | type ApiCreateSandboxOk = type ApiGetSandboxOk (line 37) | type ApiGetSandboxOk = type ApiListSandboxesOk (line 39) | type ApiListSandboxesOk = type ApiRenewSandboxExpirationRequest (line 41) | type ApiRenewSandboxExpirationRequest = type ApiRenewSandboxExpirationOk (line 43) | type ApiRenewSandboxExpirationOk = type ApiEndpointOk (line 45) | type ApiEndpointOk = function encodeMetadataFilter (line 48) | function encodeMetadataFilter(metadata: Record): string { class SandboxesAdapter (line 58) | class SandboxesAdapter implements Sandboxes { method constructor (line 59) | constructor(private readonly client: LifecycleClient) {} method parseIsoDate (line 61) | private parseIsoDate(field: string, v: unknown): Date { method parseOptionalIsoDate (line 72) | private parseOptionalIsoDate(field: string, v: unknown): Date | null { method mapSandboxInfo (line 77) | private mapSandboxInfo(raw: ApiGetSandboxOk): SandboxInfo { method createSandbox (line 85) | async createSandbox(req: CreateSandboxRequest): Promise { method listSandboxes (line 115) | async listSandboxes(params: ListSandboxesParams = {}): Promise { method pauseSandbox (line 147) | async pauseSandbox(sandboxId: SandboxId): Promise { method resumeSandbox (line 154) | async resumeSandbox(sandboxId: SandboxId): Promise { method renewSandboxExpiration (line 161) | async renewSandboxExpiration( method getSandboxEndpoint (line 181) | async getSandboxEndpoint( FILE: sdks/sandbox/javascript/src/adapters/sse.ts function tryParseJson (line 17) | function tryParseJson(line: string): unknown | undefined { FILE: sdks/sandbox/javascript/src/api/egress.ts type paths (line 20) | interface paths { type webhooks (line 99) | type webhooks = Record; type components (line 100) | interface components { type $defs (line 183) | type $defs = Record; type operations (line 184) | type operations = Record; FILE: sdks/sandbox/javascript/src/api/execd.ts type paths (line 20) | interface paths { type webhooks (line 472) | type webhooks = Record; type components (line 473) | interface components { type $defs (line 865) | type $defs = Record; type operations (line 866) | interface operations { FILE: sdks/sandbox/javascript/src/api/lifecycle.ts type paths (line 20) | interface paths { type webhooks (line 441) | type webhooks = Record; type components (line 442) | interface components { type $defs (line 938) | type $defs = Record; type operations (line 939) | type operations = Record; FILE: sdks/sandbox/javascript/src/config/connection.ts type ConnectionProtocol (line 17) | type ConnectionProtocol = "http" | "https"; type ConnectionConfigOptions (line 24) | interface ConnectionConfigOptions { function isNodeRuntime (line 55) | function isNodeRuntime(): boolean { function redactHeaders (line 60) | function redactHeaders( function readEnv (line 70) | function readEnv(name: string): string | undefined { function stripTrailingSlashes (line 76) | function stripTrailingSlashes(s: string): string { function stripV1Suffix (line 80) | function stripV1Suffix(s: string): string { constant DEFAULT_KEEPALIVE_TIMEOUT_MS (line 85) | const DEFAULT_KEEPALIVE_TIMEOUT_MS = 30_000; function normalizeDomainBase (line 87) | function normalizeDomainBase(input: string): { function createNodeFetch (line 104) | function createNodeFetch(): { function createTimedFetch (line 174) | function createTimedFetch(opts: { class ConnectionConfig (line 251) | class ConnectionConfig { method constructor (line 276) | constructor(opts: ConnectionConfigOptions = {}) { method fetch (line 317) | get fetch(): typeof fetch { method sseFetch (line 321) | get sseFetch(): typeof fetch { method getBaseUrl (line 325) | getBaseUrl(): string { method initializeTransport (line 336) | private initializeTransport(): void { method withTransportIfMissing (line 364) | withTransportIfMissing(): ConnectionConfig { method closeTransport (line 385) | async closeTransport(): Promise { FILE: sdks/sandbox/javascript/src/core/constants.ts constant DEFAULT_EXECD_PORT (line 15) | const DEFAULT_EXECD_PORT = 44772; constant DEFAULT_EGRESS_PORT (line 16) | const DEFAULT_EGRESS_PORT = 18080; constant DEFAULT_ENTRYPOINT (line 18) | const DEFAULT_ENTRYPOINT: string[] = ["tail", "-f", "/dev/null"]; constant DEFAULT_RESOURCE_LIMITS (line 20) | const DEFAULT_RESOURCE_LIMITS: Record = { constant DEFAULT_TIMEOUT_SECONDS (line 25) | const DEFAULT_TIMEOUT_SECONDS = 600; constant DEFAULT_READY_TIMEOUT_SECONDS (line 26) | const DEFAULT_READY_TIMEOUT_SECONDS = 30; constant DEFAULT_HEALTH_CHECK_POLLING_INTERVAL_MILLIS (line 27) | const DEFAULT_HEALTH_CHECK_POLLING_INTERVAL_MILLIS = 200; constant DEFAULT_REQUEST_TIMEOUT_SECONDS (line 29) | const DEFAULT_REQUEST_TIMEOUT_SECONDS = 30; constant DEFAULT_USER_AGENT (line 30) | const DEFAULT_USER_AGENT = "OpenSandbox-JS-SDK/0.1.5"; FILE: sdks/sandbox/javascript/src/core/exceptions.ts type SandboxErrorCode (line 15) | type SandboxErrorCode = class SandboxError (line 30) | class SandboxError { method constructor (line 37) | constructor( type SandboxExceptionOpts (line 43) | interface SandboxExceptionOpts { class SandboxException (line 55) | class SandboxException extends Error { method constructor (line 61) | constructor(opts: SandboxExceptionOpts = {}) { class SandboxApiException (line 69) | class SandboxApiException extends SandboxException { method constructor (line 74) | constructor(opts: SandboxExceptionOpts & { class SandboxInternalException (line 89) | class SandboxInternalException extends SandboxException { method constructor (line 92) | constructor(opts: { message?: string; cause?: unknown }) { class SandboxUnhealthyException (line 101) | class SandboxUnhealthyException extends SandboxException { method constructor (line 104) | constructor(opts: { message?: string; cause?: unknown }) { class SandboxReadyTimeoutException (line 113) | class SandboxReadyTimeoutException extends SandboxException { method constructor (line 116) | constructor(opts: { message?: string; cause?: unknown }) { class InvalidArgumentException (line 125) | class InvalidArgumentException extends SandboxException { method constructor (line 128) | constructor(opts: { message?: string; cause?: unknown }) { FILE: sdks/sandbox/javascript/src/factory/adapterFactory.ts type CreateLifecycleStackOptions (line 23) | interface CreateLifecycleStackOptions { type LifecycleStack (line 28) | interface LifecycleStack { type CreateExecdStackOptions (line 32) | interface CreateExecdStackOptions { type ExecdStack (line 38) | interface ExecdStack { type CreateEgressStackOptions (line 45) | interface CreateEgressStackOptions { type EgressStack (line 51) | interface EgressStack { type AdapterFactory (line 60) | interface AdapterFactory { FILE: sdks/sandbox/javascript/src/factory/defaultAdapterFactory.ts class DefaultAdapterFactory (line 36) | class DefaultAdapterFactory implements AdapterFactory { method createLifecycleStack (line 37) | createLifecycleStack(opts: CreateLifecycleStackOptions): LifecycleStack { method createExecdStack (line 48) | createExecdStack(opts: CreateExecdStackOptions): ExecdStack { method createEgressStack (line 80) | createEgressStack(opts: CreateEgressStackOptions): EgressStack { function createDefaultAdapterFactory (line 96) | function createDefaultAdapterFactory(): AdapterFactory { FILE: sdks/sandbox/javascript/src/manager.ts type SandboxManagerOptions (line 22) | interface SandboxManagerOptions { type SandboxFilter (line 33) | interface SandboxFilter { class SandboxManager (line 57) | class SandboxManager { method constructor (line 61) | private constructor(opts: { sandboxes: Sandboxes; connectionConfig: Co... method create (line 66) | static create(opts: SandboxManagerOptions = {}): SandboxManager { method listSandboxInfos (line 86) | listSandboxInfos(filter: SandboxFilter = {}): Promise { method killSandbox (line 99) | killSandbox(sandboxId: SandboxId): Promise { method pauseSandbox (line 103) | pauseSandbox(sandboxId: SandboxId): Promise { method resumeSandbox (line 107) | resumeSandbox(sandboxId: SandboxId): Promise { method renewSandbox (line 114) | async renewSandbox(sandboxId: SandboxId, timeoutSeconds: number): Prom... method close (line 126) | async close(): Promise { FILE: sdks/sandbox/javascript/src/models/execd.ts type ServerStreamEvent (line 24) | interface ServerStreamEvent extends Record { type CodeContextRequest (line 40) | interface CodeContextRequest extends Record { type SupportedLanguage (line 44) | type SupportedLanguage = type RunCommandOpts (line 52) | interface RunCommandOpts { type CommandStatus (line 80) | interface CommandStatus { type CommandLogs (line 90) | interface CommandLogs { type CommandExecution (line 95) | type CommandExecution = Execution; type Metrics (line 97) | interface Metrics extends Record { type SandboxMetrics (line 108) | interface SandboxMetrics { type PingResponse (line 116) | type PingResponse = Record; FILE: sdks/sandbox/javascript/src/models/execution.ts type OutputMessage (line 15) | interface OutputMessage { type ExecutionResult (line 21) | interface ExecutionResult { type ExecutionError (line 30) | interface ExecutionError { type ExecutionComplete (line 37) | interface ExecutionComplete { type ExecutionInit (line 42) | interface ExecutionInit { type Execution (line 47) | interface Execution { type ExecutionHandlers (line 59) | interface ExecutionHandlers { FILE: sdks/sandbox/javascript/src/models/executionEventDispatcher.ts function extractText (line 18) | function extractText(results: ServerStreamEvent["results"] | undefined):... class ExecutionEventDispatcher (line 31) | class ExecutionEventDispatcher { method constructor (line 32) | constructor( method dispatch (line 37) | async dispatch(ev: ServerStreamEvent): Promise { FILE: sdks/sandbox/javascript/src/models/filesystem.ts type FileInfo (line 23) | interface FileInfo extends Record { type Permission (line 39) | interface Permission extends Record { type FileMetadata (line 45) | interface FileMetadata extends Record { type RenameFileItem (line 52) | interface RenameFileItem extends Record { type ReplaceFileContentItem (line 57) | interface ReplaceFileContentItem extends Record { type FilesInfoResponse (line 62) | type FilesInfoResponse = Record; type SearchFilesResponse (line 64) | type SearchFilesResponse = FileInfo[]; type WriteEntry (line 67) | interface WriteEntry { type SearchEntry (line 82) | interface SearchEntry { type MoveEntry (line 87) | interface MoveEntry { type ContentReplaceEntry (line 92) | interface ContentReplaceEntry { type SetPermissionEntry (line 98) | interface SetPermissionEntry { FILE: sdks/sandbox/javascript/src/models/sandboxes.ts type SandboxId (line 25) | type SandboxId = string; type ImageAuth (line 27) | interface ImageAuth extends Record { type ImageSpec (line 33) | interface ImageSpec { type ResourceLimits (line 38) | type ResourceLimits = Record; type NetworkRuleAction (line 40) | type NetworkRuleAction = "allow" | "deny"; type NetworkRule (line 42) | interface NetworkRule extends Record { type NetworkPolicy (line 54) | interface NetworkPolicy extends Record { type Host (line 75) | interface Host extends Record { type PVC (line 88) | interface PVC extends Record { type Volume (line 103) | interface Volume extends Record { type SandboxState (line 130) | type SandboxState = type SandboxStatus (line 141) | interface SandboxStatus extends Record { type SandboxInfo (line 147) | interface SandboxInfo extends Record { type CreateSandboxRequest (line 163) | interface CreateSandboxRequest extends Record { type CreateSandboxResponse (line 184) | interface CreateSandboxResponse extends Record { type PaginationInfo (line 199) | interface PaginationInfo extends Record { type ListSandboxesResponse (line 207) | interface ListSandboxesResponse extends Record { type RenewSandboxExpirationRequest (line 212) | interface RenewSandboxExpirationRequest { type RenewSandboxExpirationResponse (line 216) | interface RenewSandboxExpirationResponse extends Record { type Endpoint (line 223) | interface Endpoint extends Record { type ListSandboxesParams (line 232) | interface ListSandboxesParams { FILE: sdks/sandbox/javascript/src/openapi/egressClient.ts type EgressClient (line 20) | type EgressClient = Client; type CreateEgressClientOptions (line 22) | interface CreateEgressClientOptions { function createEgressClient (line 37) | function createEgressClient(opts: CreateEgressClientOptions): EgressClie... FILE: sdks/sandbox/javascript/src/openapi/execdClient.ts type ExecdClient (line 20) | type ExecdClient = Client; type CreateExecdClientOptions (line 22) | interface CreateExecdClientOptions { function createExecdClient (line 43) | function createExecdClient(opts: CreateExecdClientOptions): ExecdClient { FILE: sdks/sandbox/javascript/src/openapi/lifecycleClient.ts type LifecycleClient (line 20) | type LifecycleClient = Client; type CreateLifecycleClientOptions (line 22) | interface CreateLifecycleClientOptions { function readEnvApiKey (line 46) | function readEnvApiKey(): string | undefined { function createLifecycleClient (line 54) | function createLifecycleClient(opts: CreateLifecycleClientOptions = {}):... FILE: sdks/sandbox/javascript/src/sandbox.ts type SandboxCreateOptions (line 46) | interface SandboxCreateOptions { type SandboxConnectOptions (line 119) | interface SandboxConnectOptions { function sleep (line 151) | function sleep(ms: number): Promise { function toImageSpec (line 155) | function toImageSpec( class Sandbox (line 162) | class Sandbox { method constructor (line 197) | private constructor(opts: { method create (line 226) | static async create(opts: SandboxCreateOptions): Promise { method connect (line 362) | static async connect(opts: SandboxConnectOptions): Promise { method getInfo (line 439) | async getInfo(): Promise { method isHealthy (line 443) | async isHealthy(): Promise { method getMetrics (line 451) | async getMetrics() { method pause (line 455) | async pause(): Promise { method resume (line 465) | async resume( method resume (line 486) | static async resume(opts: SandboxConnectOptions): Promise { method kill (line 511) | async kill(): Promise { method close (line 518) | async close(): Promise { method renew (line 525) | async renew(timeoutSeconds: number): Promise { method patchEgressRules (line 536) | async patchEgressRules(rules: NetworkRule[]): Promise { method getEndpoint (line 543) | async getEndpoint(port: number): Promise { method getEndpointUrl (line 554) | async getEndpointUrl(port: number): Promise { method waitUntilReady (line 559) | async waitUntilReady(opts: { FILE: sdks/sandbox/javascript/src/services/egress.ts type Egress (line 17) | interface Egress { FILE: sdks/sandbox/javascript/src/services/execdCommands.ts type ExecdCommands (line 24) | interface ExecdCommands { FILE: sdks/sandbox/javascript/src/services/execdHealth.ts type ExecdHealth (line 15) | interface ExecdHealth { FILE: sdks/sandbox/javascript/src/services/execdMetrics.ts type ExecdMetrics (line 17) | interface ExecdMetrics { FILE: sdks/sandbox/javascript/src/services/filesystem.ts type SandboxFiles (line 31) | interface SandboxFiles { FILE: sdks/sandbox/javascript/src/services/sandboxes.ts type Sandboxes (line 27) | interface Sandboxes { FILE: sdks/sandbox/javascript/tests/sandbox.create.test.mjs function createAdapterFactory (line 11) | function createAdapterFactory() { FILE: sdks/sandbox/python/scripts/generate_api.py function run_command (line 34) | def run_command(cmd: list[str], description: str) -> subprocess.Complete... function generate_execd_api_client (line 54) | def generate_execd_api_client() -> None: function generate_egress_api_client (line 114) | def generate_egress_api_client() -> None: function generate_sandbox_lifecycle_api (line 168) | def generate_sandbox_lifecycle_api() -> None: function add_license_headers (line 226) | def add_license_headers(root: Path) -> None: function patch_lifecycle_nullable_nested_models (line 252) | def patch_lifecycle_nullable_nested_models(root: Path) -> None: function post_process_generated_code (line 300) | def post_process_generated_code() -> None: function main (line 322) | def main() -> None: FILE: sdks/sandbox/python/src/opensandbox/adapters/command_adapter.py class CommandsAdapter (line 61) | class CommandsAdapter(Commands): method __init__ (line 76) | def __init__( method _get_client (line 135) | async def _get_client(self): method _get_execd_url (line 139) | def _get_execd_url(self, path: str) -> str: method _get_sse_client (line 144) | async def _get_sse_client(self) -> httpx.AsyncClient: method run (line 148) | async def run( method interrupt (line 223) | async def interrupt(self, execution_id: str) -> None: method get_command_status (line 240) | async def get_command_status(self, execution_id: str) -> CommandStatus: method get_background_command_logs (line 260) | async def get_background_command_logs( FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/command_model_converter.py function _unwrap_optional (line 30) | def _unwrap_optional(value: Unset | T) -> T | None: function to_command_status (line 36) | def to_command_status(raw: CommandStatusResponse) -> CommandStatus: FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/event_node.py class EventNodeError (line 23) | class EventNodeError(BaseModel): class EventNodeResults (line 31) | class EventNodeResults(BaseModel): method get_text (line 36) | def get_text(self) -> str: class EventNode (line 43) | class EventNode(BaseModel): FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/exception_converter.py class ExceptionConverter (line 66) | class ExceptionConverter: method to_sandbox_exception (line 75) | def to_sandbox_exception(e: Exception) -> SandboxException: function _is_unexpected_status_error (line 147) | def _is_unexpected_status_error(e: Exception) -> bool: function _is_httpx_status_error (line 152) | def _is_httpx_status_error(e: Exception) -> bool: function _is_httpx_network_error (line 157) | def _is_httpx_network_error(e: Exception) -> bool: function _convert_unexpected_status_to_api_exception (line 162) | def _convert_unexpected_status_to_api_exception(e: Exception) -> Sandbox... function _convert_httpx_error_to_api_exception (line 178) | def _convert_httpx_error_to_api_exception(e: Exception) -> SandboxApiExc... function _parse_error_body (line 201) | def _parse_error_body(body: Any) -> SandboxError | None: function parse_sandbox_error (line 252) | def parse_sandbox_error(body: Any) -> SandboxError | None: FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/execution_converter.py class ExecutionConverter (line 33) | class ExecutionConverter: method to_api_run_command_request (line 44) | def to_api_run_command_request(command: str, opts: RunCommandOpts) -> ... method to_api_run_command_json (line 91) | def to_api_run_command_json(command: str, opts: RunCommandOpts) -> dic... FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/execution_event_dispatcher.py class ExecutionEventDispatcher (line 32) | class ExecutionEventDispatcher: method __init__ (line 37) | def __init__( method dispatch (line 45) | async def dispatch(self, event_node: EventNode) -> None: method _handle_init (line 66) | async def _handle_init(self, event_node: EventNode, timestamp: int) ->... method _handle_stdout (line 76) | async def _handle_stdout(self, event_node: EventNode, timestamp: int) ... method _handle_stderr (line 87) | async def _handle_stderr(self, event_node: EventNode, timestamp: int) ... method _handle_result (line 98) | async def _handle_result(self, event_node: EventNode, timestamp: int) ... method _handle_error (line 108) | async def _handle_error(self, event_node: EventNode, timestamp: int) -... method _handle_execution_complete (line 123) | async def _handle_execution_complete(self, event_node: EventNode, time... FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/filesystem_model_converter.py class FilesystemModelConverter (line 37) | class FilesystemModelConverter: method to_entry_info (line 46) | def to_entry_info(api_file_info: FileInfo) -> EntryInfo: method to_entry_info_list (line 59) | def to_entry_info_list(api_file_infos: list[FileInfo]) -> list[EntryIn... method to_entry_info_map (line 67) | def to_entry_info_map(api_response: Any) -> dict[str, EntryInfo]: method to_api_make_dirs_body (line 86) | def to_api_make_dirs_body(entries: list[WriteEntry]): method to_api_chmod_files_body (line 101) | def to_api_chmod_files_body(entries: list[SetPermissionEntry]): method to_api_replace_content_body (line 116) | def to_api_replace_content_body(entries: list[ContentReplaceEntry]): method to_api_rename_file_items (line 131) | def to_api_rename_file_items(entries: list[MoveEntry]): FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/metrics_model_converter.py class MetricsModelConverter (line 26) | class MetricsModelConverter: method to_sandbox_metrics (line 35) | def to_sandbox_metrics(api_metrics: Metrics) -> SandboxMetrics: FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/response_handler.py function extract_request_id (line 39) | def extract_request_id(headers: Any) -> str | None: function _status_code_to_int (line 55) | def _status_code_to_int(status_code: Any) -> int: function require_parsed (line 74) | def require_parsed(response_obj: Any, expected_type: type[T], operation_... function handle_api_error (line 101) | def handle_api_error(response_obj: Any, operation_name: str = "API call"... FILE: sdks/sandbox/python/src/opensandbox/adapters/converter/sandbox_model_converter.py class SandboxModelConverter (line 59) | class SandboxModelConverter: method to_api_image_spec (line 71) | def to_api_image_spec(spec: SandboxImageSpec) -> ImageSpec: method to_api_volume (line 90) | def to_api_volume(volume: Volume): method to_api_create_sandbox_request (line 139) | def to_api_create_sandbox_request( method to_api_renew_request (line 245) | def to_api_renew_request( method to_api_network_rules (line 263) | def to_api_network_rules(rules: list[NetworkRule]): method to_sandbox_network_policy (line 281) | def to_sandbox_network_policy(api_policy): method to_sandbox_renew_response (line 313) | def to_sandbox_renew_response( method to_sandbox_create_response (line 331) | def to_sandbox_create_response( method to_sandbox_info (line 342) | def to_sandbox_info(api_sandbox: Sandbox) -> SandboxInfo: method to_paged_sandbox_infos (line 394) | def to_paged_sandbox_infos( method to_sandbox_endpoint (line 410) | def to_sandbox_endpoint(api_endpoint: Endpoint) -> SandboxEndpoint: method _convert_sandbox_status (line 424) | def _convert_sandbox_status( method _convert_pagination_info (line 469) | def _convert_pagination_info( FILE: sdks/sandbox/python/src/opensandbox/adapters/egress_adapter.py class EgressAdapter (line 36) | class EgressAdapter(Egress): method __init__ (line 39) | def __init__(self, connection_config: ConnectionConfig, endpoint: Sand... method get_policy (line 65) | async def get_policy(self) -> NetworkPolicy: method patch_rules (line 89) | async def patch_rules(self, rules: list[NetworkRule]) -> None: FILE: sdks/sandbox/python/src/opensandbox/adapters/factory.py class AdapterFactory (line 43) | class AdapterFactory: method __init__ (line 56) | def __init__(self, connection_config: ConnectionConfig) -> None: method create_sandbox_service (line 65) | def create_sandbox_service(self) -> Sandboxes: method create_filesystem_service (line 73) | def create_filesystem_service(self, endpoint: SandboxEndpoint) -> File... method create_command_service (line 84) | def create_command_service(self, endpoint: SandboxEndpoint) -> Commands: method create_egress_service (line 95) | def create_egress_service(self, endpoint: SandboxEndpoint) -> Egress: method create_health_service (line 99) | def create_health_service(self, endpoint: SandboxEndpoint) -> Health: method create_metrics_service (line 110) | def create_metrics_service(self, endpoint: SandboxEndpoint) -> Metrics: FILE: sdks/sandbox/python/src/opensandbox/adapters/filesystem_adapter.py class _DownloadRequest (line 57) | class _DownloadRequest(TypedDict): class FilesystemAdapter (line 63) | class FilesystemAdapter(Filesystem): method __init__ (line 77) | def __init__( method _get_execd_base_url (line 114) | def _get_execd_base_url(self) -> str: method _get_httpx_client (line 118) | async def _get_httpx_client(self) -> httpx.AsyncClient: method _get_client (line 122) | async def _get_client(self): method _get_execd_url (line 126) | def _get_execd_url(self, path: str) -> str: method read_file (line 131) | async def read_file( method read_bytes (line 142) | async def read_bytes( method read_bytes_stream (line 182) | async def read_bytes_stream( method write_files (line 227) | async def write_files(self, entries: list[WriteEntry]) -> None: method write_file (line 292) | async def write_file( method create_directories (line 313) | async def create_directories(self, entries: list[WriteEntry]) -> None: method delete_files (line 337) | async def delete_files(self, paths: list[str]) -> None: method delete_directories (line 354) | async def delete_directories(self, paths: list[str]) -> None: method move_files (line 371) | async def move_files(self, entries: list[MoveEntry]) -> None: method set_permissions (line 396) | async def set_permissions(self, entries: list[SetPermissionEntry]) -> ... method replace_contents (line 413) | async def replace_contents(self, entries: list[ContentReplaceEntry]) -... method search (line 430) | async def search(self, entry: SearchEntry) -> list[EntryInfo]: method get_file_info (line 460) | async def get_file_info(self, paths: list[str]) -> dict[str, EntryInfo]: method _build_download_request (line 482) | def _build_download_request( FILE: sdks/sandbox/python/src/opensandbox/adapters/health_adapter.py class HealthAdapter (line 34) | class HealthAdapter(Health): method __init__ (line 43) | def __init__( method _get_client (line 84) | async def _get_client(self): method ping (line 88) | async def ping(self, sandbox_id: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/adapters/metrics_adapter.py class MetricsAdapter (line 43) | class MetricsAdapter(Metrics): method __init__ (line 52) | def __init__( method _get_client (line 93) | async def _get_client(self): method get_metrics (line 97) | async def get_metrics(self, sandbox_id: str) -> SandboxMetrics: FILE: sdks/sandbox/python/src/opensandbox/adapters/sandboxes_adapter.py class SandboxesAdapter (line 57) | class SandboxesAdapter(Sandboxes): method __init__ (line 68) | def __init__(self, connection_config: ConnectionConfig) -> None: method _get_client (line 107) | async def _get_client(self): method create_sandbox (line 111) | async def create_sandbox( method get_sandbox_info (line 161) | async def get_sandbox_info(self, sandbox_id: str) -> SandboxInfo: method list_sandboxes (line 184) | async def list_sandboxes(self, filter: SandboxFilter) -> PagedSandboxI... method get_sandbox_endpoint (line 220) | async def get_sandbox_endpoint( method pause_sandbox (line 256) | async def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 279) | async def resume_sandbox(self, sandbox_id: str) -> None: method renew_sandbox_expiration (line 302) | async def renew_sandbox_expiration( method kill_sandbox (line 348) | async def kill_sandbox(self, sandbox_id: str) -> None: FILE: sdks/sandbox/python/src/opensandbox/api/egress/api/policy/get_policy.py function _get_kwargs (line 28) | def _get_kwargs() -> dict[str, Any]: function _parse_response (line 37) | def _parse_response( function _build_response (line 59) | def _build_response( function sync_detailed (line 70) | def sync_detailed( function sync (line 96) | def sync( function asyncio_detailed (line 118) | async def asyncio_detailed( function asyncio (line 142) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/egress/api/policy/patch_policy.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 51) | def _parse_response( function _build_response (line 77) | def _build_response( function sync_detailed (line 88) | def sync_detailed( function sync (line 124) | def sync( function asyncio_detailed (line 155) | async def asyncio_detailed( function asyncio (line 189) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/egress/client.py class Client (line 25) | class Client: method with_headers (line 64) | def with_headers(self, headers: dict[str, str]) -> "Client": method with_cookies (line 72) | def with_cookies(self, cookies: dict[str, str]) -> "Client": method with_timeout (line 80) | def with_timeout(self, timeout: httpx.Timeout) -> "Client": method set_httpx_client (line 88) | def set_httpx_client(self, client: httpx.Client) -> "Client": method get_httpx_client (line 96) | def get_httpx_client(self) -> httpx.Client: method __enter__ (line 110) | def __enter__(self) -> "Client": method __exit__ (line 115) | def __exit__(self, *args: Any, **kwargs: Any) -> None: method set_async_httpx_client (line 119) | def set_async_httpx_client(self, async_client: httpx.AsyncClient) -> "... method get_async_httpx_client (line 127) | def get_async_httpx_client(self) -> httpx.AsyncClient: method __aenter__ (line 141) | async def __aenter__(self) -> "Client": method __aexit__ (line 146) | async def __aexit__(self, *args: Any, **kwargs: Any) -> None: class AuthenticatedClient (line 152) | class AuthenticatedClient: method with_headers (line 198) | def with_headers(self, headers: dict[str, str]) -> "AuthenticatedClient": method with_cookies (line 206) | def with_cookies(self, cookies: dict[str, str]) -> "AuthenticatedClient": method with_timeout (line 214) | def with_timeout(self, timeout: httpx.Timeout) -> "AuthenticatedClient": method set_httpx_client (line 222) | def set_httpx_client(self, client: httpx.Client) -> "AuthenticatedClie... method get_httpx_client (line 230) | def get_httpx_client(self) -> httpx.Client: method __enter__ (line 245) | def __enter__(self) -> "AuthenticatedClient": method __exit__ (line 250) | def __exit__(self, *args: Any, **kwargs: Any) -> None: method set_async_httpx_client (line 254) | def set_async_httpx_client(self, async_client: httpx.AsyncClient) -> "... method get_async_httpx_client (line 262) | def get_async_httpx_client(self) -> httpx.AsyncClient: method __aenter__ (line 277) | async def __aenter__(self) -> "AuthenticatedClient": method __aexit__ (line 282) | async def __aexit__(self, *args: Any, **kwargs: Any) -> None: FILE: sdks/sandbox/python/src/opensandbox/api/egress/errors.py class UnexpectedStatus (line 20) | class UnexpectedStatus(Exception): method __init__ (line 23) | def __init__(self, status_code: int, content: bytes): FILE: sdks/sandbox/python/src/opensandbox/api/egress/models/network_policy.py class NetworkPolicy (line 35) | class NetworkPolicy: method to_dict (line 49) | def to_dict(self) -> dict[str, Any]: method from_dict (line 72) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/egress/models/network_policy_default_action.py class NetworkPolicyDefaultAction (line 20) | class NetworkPolicyDefaultAction(str, Enum): method __str__ (line 24) | def __str__(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/api/egress/models/network_rule.py class NetworkRule (line 30) | class NetworkRule: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 58) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/egress/models/network_rule_action.py class NetworkRuleAction (line 20) | class NetworkRuleAction(str, Enum): method __str__ (line 24) | def __str__(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/api/egress/models/policy_status_response.py class PolicyStatusResponse (line 34) | class PolicyStatusResponse: method to_dict (line 52) | def to_dict(self) -> dict[str, Any]: method from_dict (line 82) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/egress/types.py class Unset (line 26) | class Unset: method __bool__ (line 27) | def __bool__(self) -> Literal[False]: class File (line 45) | class File: method to_tuple (line 52) | def to_tuple(self) -> FileTypes: class Response (line 61) | class Response(Generic[T]): FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/create_code_context.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 49) | def _parse_response( function _build_response (line 73) | def _build_response( function sync_detailed (line 84) | def sync_detailed( function sync (line 117) | def sync( function asyncio_detailed (line 145) | async def asyncio_detailed( function asyncio (line 176) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/delete_context.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 42) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 68) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 77) | def sync_detailed( function sync (line 109) | def sync( function asyncio_detailed (line 136) | async def asyncio_detailed( function asyncio (line 166) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/delete_contexts_by_language.py function _get_kwargs (line 28) | def _get_kwargs( function _parse_response (line 47) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 68) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 77) | def sync_detailed( function sync (line 109) | def sync( function asyncio_detailed (line 136) | async def asyncio_detailed( function asyncio (line 166) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/get_context.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 43) | def _parse_response( function _build_response (line 67) | def _build_response( function sync_detailed (line 78) | def sync_detailed( function sync (line 110) | def sync( function asyncio_detailed (line 137) | async def asyncio_detailed( function asyncio (line 167) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/interrupt_code.py function _get_kwargs (line 28) | def _get_kwargs( function _parse_response (line 47) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 68) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 77) | def sync_detailed( function sync (line 109) | def sync( function asyncio_detailed (line 136) | async def asyncio_detailed( function asyncio (line 166) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/list_contexts.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 48) | def _parse_response( function _build_response (line 77) | def _build_response( function sync_detailed (line 88) | def sync_detailed( function sync (line 120) | def sync( function asyncio_detailed (line 147) | async def asyncio_detailed( function asyncio (line 177) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/code_interpreting/run_code.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 49) | def _parse_response( function _build_response (line 73) | def _build_response( function sync_detailed (line 84) | def sync_detailed( function sync (line 118) | def sync( function asyncio_detailed (line 147) | async def asyncio_detailed( function asyncio (line 179) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/command/get_background_command_logs.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 51) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 77) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 86) | def sync_detailed( function sync (line 126) | def sync( function asyncio_detailed (line 161) | async def asyncio_detailed( function asyncio (line 199) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/command/get_command_status.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 43) | def _parse_response( function _build_response (line 72) | def _build_response( function sync_detailed (line 83) | def sync_detailed( function sync (line 115) | def sync( function asyncio_detailed (line 142) | async def asyncio_detailed( function asyncio (line 172) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/command/interrupt_command.py function _get_kwargs (line 28) | def _get_kwargs( function _parse_response (line 47) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 68) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 77) | def sync_detailed( function sync (line 109) | def sync( function asyncio_detailed (line 136) | async def asyncio_detailed( function asyncio (line 166) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/command/run_command.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 49) | def _parse_response( function _build_response (line 73) | def _build_response( function sync_detailed (line 84) | def sync_detailed( function sync (line 120) | def sync( function asyncio_detailed (line 151) | async def asyncio_detailed( function asyncio (line 185) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/chmod_files.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 48) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 69) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 78) | def sync_detailed( function sync (line 111) | def sync( function asyncio_detailed (line 139) | async def asyncio_detailed( function asyncio (line 170) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/download_file.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 54) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 91) | def _build_response( function sync_detailed (line 102) | def sync_detailed( function sync (line 138) | def sync( function asyncio_detailed (line 169) | async def asyncio_detailed( function asyncio (line 203) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/get_files_info.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 50) | def _parse_response( function _build_response (line 74) | def _build_response( function sync_detailed (line 85) | def sync_detailed( function sync (line 118) | def sync( function asyncio_detailed (line 146) | async def asyncio_detailed( function asyncio (line 177) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/make_dirs.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 48) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 69) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 78) | def sync_detailed( function sync (line 111) | def sync( function asyncio_detailed (line 139) | async def asyncio_detailed( function asyncio (line 170) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/remove_dirs.py function _get_kwargs (line 28) | def _get_kwargs( function _parse_response (line 49) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 65) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 74) | def sync_detailed( function sync (line 106) | def sync( function asyncio_detailed (line 133) | async def asyncio_detailed( function asyncio (line 163) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/remove_files.py function _get_kwargs (line 28) | def _get_kwargs( function _parse_response (line 49) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 65) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 74) | def sync_detailed( function sync (line 106) | def sync( function asyncio_detailed (line 133) | async def asyncio_detailed( function asyncio (line 163) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/rename_files.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 51) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 77) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 86) | def sync_detailed( function sync (line 119) | def sync( function asyncio_detailed (line 147) | async def asyncio_detailed( function asyncio (line 178) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/replace_content.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 48) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 69) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 78) | def sync_detailed( function sync (line 111) | def sync( function asyncio_detailed (line 139) | async def asyncio_detailed( function asyncio (line 170) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/search_files.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 51) | def _parse_response( function _build_response (line 85) | def _build_response( function sync_detailed (line 96) | def sync_detailed( function sync (line 132) | def sync( function asyncio_detailed (line 163) | async def asyncio_detailed( function asyncio (line 197) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/filesystem/upload_file.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 46) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 67) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 76) | def sync_detailed( function sync (line 110) | def sync( function asyncio_detailed (line 139) | async def asyncio_detailed( function asyncio (line 171) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/health/ping.py function _get_kwargs (line 27) | def _get_kwargs() -> dict[str, Any]: function _parse_response (line 36) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 46) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 55) | def sync_detailed( function asyncio_detailed (line 83) | async def asyncio_detailed( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/metric/get_metrics.py function _get_kwargs (line 29) | def _get_kwargs() -> dict[str, Any]: function _parse_response (line 38) | def _parse_response( function _build_response (line 57) | def _build_response( function sync_detailed (line 68) | def sync_detailed( function sync (line 95) | def sync( function asyncio_detailed (line 118) | async def asyncio_detailed( function asyncio (line 143) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/api/metric/watch_metrics.py function _get_kwargs (line 29) | def _get_kwargs() -> dict[str, Any]: function _parse_response (line 38) | def _parse_response( function _build_response (line 57) | def _build_response( function sync_detailed (line 68) | def sync_detailed( function sync (line 96) | def sync( function asyncio_detailed (line 120) | async def asyncio_detailed( function asyncio (line 146) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/execd/client.py class Client (line 25) | class Client: method with_headers (line 64) | def with_headers(self, headers: dict[str, str]) -> "Client": method with_cookies (line 72) | def with_cookies(self, cookies: dict[str, str]) -> "Client": method with_timeout (line 80) | def with_timeout(self, timeout: httpx.Timeout) -> "Client": method set_httpx_client (line 88) | def set_httpx_client(self, client: httpx.Client) -> "Client": method get_httpx_client (line 96) | def get_httpx_client(self) -> httpx.Client: method __enter__ (line 110) | def __enter__(self) -> "Client": method __exit__ (line 115) | def __exit__(self, *args: Any, **kwargs: Any) -> None: method set_async_httpx_client (line 119) | def set_async_httpx_client(self, async_client: httpx.AsyncClient) -> "... method get_async_httpx_client (line 127) | def get_async_httpx_client(self) -> httpx.AsyncClient: method __aenter__ (line 141) | async def __aenter__(self) -> "Client": method __aexit__ (line 146) | async def __aexit__(self, *args: Any, **kwargs: Any) -> None: class AuthenticatedClient (line 152) | class AuthenticatedClient: method with_headers (line 198) | def with_headers(self, headers: dict[str, str]) -> "AuthenticatedClient": method with_cookies (line 206) | def with_cookies(self, cookies: dict[str, str]) -> "AuthenticatedClient": method with_timeout (line 214) | def with_timeout(self, timeout: httpx.Timeout) -> "AuthenticatedClient": method set_httpx_client (line 222) | def set_httpx_client(self, client: httpx.Client) -> "AuthenticatedClie... method get_httpx_client (line 230) | def get_httpx_client(self) -> httpx.Client: method __enter__ (line 245) | def __enter__(self) -> "AuthenticatedClient": method __exit__ (line 250) | def __exit__(self, *args: Any, **kwargs: Any) -> None: method set_async_httpx_client (line 254) | def set_async_httpx_client(self, async_client: httpx.AsyncClient) -> "... method get_async_httpx_client (line 262) | def get_async_httpx_client(self) -> httpx.AsyncClient: method __aenter__ (line 277) | async def __aenter__(self) -> "AuthenticatedClient": method __aexit__ (line 282) | async def __aexit__(self, *args: Any, **kwargs: Any) -> None: FILE: sdks/sandbox/python/src/opensandbox/api/execd/errors.py class UnexpectedStatus (line 20) | class UnexpectedStatus(Exception): method __init__ (line 23) | def __init__(self, status_code: int, content: bytes): FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/chmod_files_body.py class ChmodFilesBody (line 33) | class ChmodFilesBody: method to_dict (line 38) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 62) | def additional_keys(self) -> list[str]: method __getitem__ (line 65) | def __getitem__(self, key: str) -> Permission: method __setitem__ (line 68) | def __setitem__(self, key: str, value: Permission) -> None: method __delitem__ (line 71) | def __delitem__(self, key: str) -> None: method __contains__ (line 74) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/code_context.py class CodeContext (line 31) | class CodeContext: method to_dict (line 43) | def to_dict(self) -> dict[str, Any]: method from_dict (line 61) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 76) | def additional_keys(self) -> list[str]: method __getitem__ (line 79) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 82) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 85) | def __delitem__(self, key: str) -> None: method __contains__ (line 88) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/code_context_request.py class CodeContextRequest (line 31) | class CodeContextRequest: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 53) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 65) | def additional_keys(self) -> list[str]: method __getitem__ (line 68) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 71) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 74) | def __delitem__(self, key: str) -> None: method __contains__ (line 77) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/command_status_response.py class CommandStatusResponse (line 33) | class CommandStatusResponse: method to_dict (line 56) | def to_dict(self) -> dict[str, Any]: method from_dict (line 104) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 161) | def additional_keys(self) -> list[str]: method __getitem__ (line 164) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 167) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 170) | def __delitem__(self, key: str) -> None: method __contains__ (line 173) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/error_response.py class ErrorResponse (line 29) | class ErrorResponse: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 58) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 73) | def additional_keys(self) -> list[str]: method __getitem__ (line 76) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 79) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 82) | def __delitem__(self, key: str) -> None: method __contains__ (line 85) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/file_info.py class FileInfo (line 31) | class FileInfo: method to_dict (line 53) | def to_dict(self) -> dict[str, Any]: method from_dict (line 85) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 115) | def additional_keys(self) -> list[str]: method __getitem__ (line 118) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 121) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 124) | def __delitem__(self, key: str) -> None: method __contains__ (line 127) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/file_metadata.py class FileMetadata (line 31) | class FileMetadata: method to_dict (line 47) | def to_dict(self) -> dict[str, Any]: method from_dict (line 71) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 92) | def additional_keys(self) -> list[str]: method __getitem__ (line 95) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 98) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 101) | def __delitem__(self, key: str) -> None: method __contains__ (line 104) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/get_files_info_response_200.py class GetFilesInfoResponse200 (line 33) | class GetFilesInfoResponse200: method to_dict (line 38) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 62) | def additional_keys(self) -> list[str]: method __getitem__ (line 65) | def __getitem__(self, key: str) -> FileInfo: method __setitem__ (line 68) | def __setitem__(self, key: str, value: FileInfo) -> None: method __delitem__ (line 71) | def __delitem__(self, key: str) -> None: method __contains__ (line 74) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/make_dirs_body.py class MakeDirsBody (line 33) | class MakeDirsBody: method to_dict (line 38) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 62) | def additional_keys(self) -> list[str]: method __getitem__ (line 65) | def __getitem__(self, key: str) -> Permission: method __setitem__ (line 68) | def __setitem__(self, key: str, value: Permission) -> None: method __delitem__ (line 71) | def __delitem__(self, key: str) -> None: method __contains__ (line 74) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/metrics.py class Metrics (line 29) | class Metrics: method to_dict (line 47) | def to_dict(self) -> dict[str, Any]: method from_dict (line 73) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 97) | def additional_keys(self) -> list[str]: method __getitem__ (line 100) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 103) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 106) | def __delitem__(self, key: str) -> None: method __contains__ (line 109) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/permission.py class Permission (line 31) | class Permission: method to_dict (line 45) | def to_dict(self) -> dict[str, Any]: method from_dict (line 67) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 85) | def additional_keys(self) -> list[str]: method __getitem__ (line 88) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 91) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 94) | def __delitem__(self, key: str) -> None: method __contains__ (line 97) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/rename_file_item.py class RenameFileItem (line 29) | class RenameFileItem: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 58) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 73) | def additional_keys(self) -> list[str]: method __getitem__ (line 76) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 79) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 82) | def __delitem__(self, key: str) -> None: method __contains__ (line 85) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/replace_content_body.py class ReplaceContentBody (line 33) | class ReplaceContentBody: method to_dict (line 38) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 62) | def additional_keys(self) -> list[str]: method __getitem__ (line 65) | def __getitem__(self, key: str) -> ReplaceFileContentItem: method __setitem__ (line 68) | def __setitem__(self, key: str, value: ReplaceFileContentItem) -> None: method __delitem__ (line 71) | def __delitem__(self, key: str) -> None: method __contains__ (line 74) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/replace_file_content_item.py class ReplaceFileContentItem (line 29) | class ReplaceFileContentItem: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 58) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 73) | def additional_keys(self) -> list[str]: method __getitem__ (line 76) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 79) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 82) | def __delitem__(self, key: str) -> None: method __contains__ (line 85) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/run_code_request.py class RunCodeRequest (line 35) | class RunCodeRequest: method to_dict (line 50) | def to_dict(self) -> dict[str, Any]: method from_dict (line 70) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 92) | def additional_keys(self) -> list[str]: method __getitem__ (line 95) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 98) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 101) | def __delitem__(self, key: str) -> None: method __contains__ (line 104) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/run_command_request.py class RunCommandRequest (line 35) | class RunCommandRequest: method to_dict (line 61) | def to_dict(self) -> dict[str, Any]: method from_dict (line 101) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 138) | def additional_keys(self) -> list[str]: method __getitem__ (line 141) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 144) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 147) | def __delitem__(self, key: str) -> None: method __contains__ (line 150) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/run_command_request_envs.py class RunCommandRequestEnvs (line 29) | class RunCommandRequestEnvs: method to_dict (line 39) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 54) | def additional_keys(self) -> list[str]: method __getitem__ (line 57) | def __getitem__(self, key: str) -> str: method __setitem__ (line 60) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 63) | def __delitem__(self, key: str) -> None: method __contains__ (line 66) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/server_stream_event.py class ServerStreamEvent (line 37) | class ServerStreamEvent: method to_dict (line 61) | def to_dict(self) -> dict[str, Any]: method from_dict (line 103) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 151) | def additional_keys(self) -> list[str]: method __getitem__ (line 154) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 157) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 160) | def __delitem__(self, key: str) -> None: method __contains__ (line 163) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/server_stream_event_error.py class ServerStreamEventError (line 31) | class ServerStreamEventError: method to_dict (line 46) | def to_dict(self) -> dict[str, Any]: method from_dict (line 68) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 86) | def additional_keys(self) -> list[str]: method __getitem__ (line 89) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 92) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 95) | def __delitem__(self, key: str) -> None: method __contains__ (line 98) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/server_stream_event_results.py class ServerStreamEventResults (line 29) | class ServerStreamEventResults: method to_dict (line 39) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 54) | def additional_keys(self) -> list[str]: method __getitem__ (line 57) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 60) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 63) | def __delitem__(self, key: str) -> None: method __contains__ (line 66) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/server_stream_event_type.py class ServerStreamEventType (line 20) | class ServerStreamEventType(str, Enum): method __str__ (line 31) | def __str__(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/api/execd/models/upload_file_body.py class UploadFileBody (line 33) | class UploadFileBody: method to_dict (line 45) | def to_dict(self) -> dict[str, Any]: method to_multipart (line 62) | def to_multipart(self) -> types.RequestFiles: method from_dict (line 77) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 97) | def additional_keys(self) -> list[str]: method __getitem__ (line 100) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 103) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 106) | def __delitem__(self, key: str) -> None: method __contains__ (line 109) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/execd/types.py class Unset (line 26) | class Unset: method __bool__ (line 27) | def __bool__(self) -> Literal[False]: class File (line 45) | class File: method to_tuple (line 52) | def to_tuple(self) -> FileTypes: class Response (line 61) | class Response(Generic[T]): FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/delete_sandboxes_sandbox_id.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 42) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 78) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 87) | def sync_detailed( function sync (line 119) | def sync( function asyncio_detailed (line 146) | async def asyncio_detailed( function asyncio (line 176) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/get_sandboxes.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 61) | def _parse_response( function _build_response (line 90) | def _build_response( function sync_detailed (line 101) | def sync_detailed( function sync (line 142) | def sync( function asyncio_detailed (line 178) | async def asyncio_detailed( function asyncio (line 217) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/get_sandboxes_sandbox_id.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 43) | def _parse_response( function _build_response (line 77) | def _build_response( function sync_detailed (line 88) | def sync_detailed( function sync (line 124) | def sync( function asyncio_detailed (line 155) | async def asyncio_detailed( function asyncio (line 189) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/get_sandboxes_sandbox_id_endpoints_port.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 54) | def _parse_response( function _build_response (line 88) | def _build_response( function sync_detailed (line 99) | def sync_detailed( function sync (line 138) | def sync( function asyncio_detailed (line 172) | async def asyncio_detailed( function asyncio (line 209) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/post_sandboxes.py function _get_kwargs (line 30) | def _get_kwargs( function _parse_response (line 49) | def _parse_response( function _build_response (line 83) | def _build_response( function sync_detailed (line 94) | def sync_detailed( function sync (line 134) | def sync( function asyncio_detailed (line 169) | async def asyncio_detailed( function asyncio (line 207) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/post_sandboxes_sandbox_id_pause.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 42) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 78) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 87) | def sync_detailed( function sync (line 119) | def sync( function asyncio_detailed (line 146) | async def asyncio_detailed( function asyncio (line 176) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/post_sandboxes_sandbox_id_renew_expiration.py function _get_kwargs (line 31) | def _get_kwargs( function _parse_response (line 53) | def _parse_response( function _build_response (line 97) | def _build_response( function sync_detailed (line 108) | def sync_detailed( function sync (line 142) | def sync( function asyncio_detailed (line 171) | async def asyncio_detailed( function asyncio (line 203) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/api/sandboxes/post_sandboxes_sandbox_id_resume.py function _get_kwargs (line 29) | def _get_kwargs( function _parse_response (line 42) | def _parse_response(*, client: AuthenticatedClient | Client, response: h... function _build_response (line 78) | def _build_response(*, client: AuthenticatedClient | Client, response: h... function sync_detailed (line 87) | def sync_detailed( function sync (line 119) | def sync( function asyncio_detailed (line 146) | async def asyncio_detailed( function asyncio (line 176) | async def asyncio( FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/client.py class Client (line 25) | class Client: method with_headers (line 64) | def with_headers(self, headers: dict[str, str]) -> "Client": method with_cookies (line 72) | def with_cookies(self, cookies: dict[str, str]) -> "Client": method with_timeout (line 80) | def with_timeout(self, timeout: httpx.Timeout) -> "Client": method set_httpx_client (line 88) | def set_httpx_client(self, client: httpx.Client) -> "Client": method get_httpx_client (line 96) | def get_httpx_client(self) -> httpx.Client: method __enter__ (line 110) | def __enter__(self) -> "Client": method __exit__ (line 115) | def __exit__(self, *args: Any, **kwargs: Any) -> None: method set_async_httpx_client (line 119) | def set_async_httpx_client(self, async_client: httpx.AsyncClient) -> "... method get_async_httpx_client (line 127) | def get_async_httpx_client(self) -> httpx.AsyncClient: method __aenter__ (line 141) | async def __aenter__(self) -> "Client": method __aexit__ (line 146) | async def __aexit__(self, *args: Any, **kwargs: Any) -> None: class AuthenticatedClient (line 152) | class AuthenticatedClient: method with_headers (line 198) | def with_headers(self, headers: dict[str, str]) -> "AuthenticatedClient": method with_cookies (line 206) | def with_cookies(self, cookies: dict[str, str]) -> "AuthenticatedClient": method with_timeout (line 214) | def with_timeout(self, timeout: httpx.Timeout) -> "AuthenticatedClient": method set_httpx_client (line 222) | def set_httpx_client(self, client: httpx.Client) -> "AuthenticatedClie... method get_httpx_client (line 230) | def get_httpx_client(self) -> httpx.Client: method __enter__ (line 245) | def __enter__(self) -> "AuthenticatedClient": method __exit__ (line 250) | def __exit__(self, *args: Any, **kwargs: Any) -> None: method set_async_httpx_client (line 254) | def set_async_httpx_client(self, async_client: httpx.AsyncClient) -> "... method get_async_httpx_client (line 262) | def get_async_httpx_client(self) -> httpx.AsyncClient: method __aenter__ (line 277) | async def __aenter__(self) -> "AuthenticatedClient": method __aexit__ (line 282) | async def __aexit__(self, *args: Any, **kwargs: Any) -> None: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/errors.py class UnexpectedStatus (line 20) | class UnexpectedStatus(Exception): method __init__ (line 23) | def __init__(self, status_code: int, content: bytes): FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/create_sandbox_request.py class CreateSandboxRequest (line 41) | class CreateSandboxRequest: method to_dict (line 114) | def to_dict(self) -> dict[str, Any]: method from_dict (line 175) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 253) | def additional_keys(self) -> list[str]: method __getitem__ (line 256) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 259) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 262) | def __delitem__(self, key: str) -> None: method __contains__ (line 265) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/create_sandbox_request_env.py class CreateSandboxRequestEnv (line 29) | class CreateSandboxRequestEnv: method to_dict (line 39) | def to_dict(self) -> dict[str, Any]: method from_dict (line 46) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 54) | def additional_keys(self) -> list[str]: method __getitem__ (line 57) | def __getitem__(self, key: str) -> str: method __setitem__ (line 60) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 63) | def __delitem__(self, key: str) -> None: method __contains__ (line 66) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/create_sandbox_request_extensions.py class CreateSandboxRequestExtensions (line 29) | class CreateSandboxRequestExtensions: method to_dict (line 43) | def to_dict(self) -> dict[str, Any]: method from_dict (line 50) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 58) | def additional_keys(self) -> list[str]: method __getitem__ (line 61) | def __getitem__(self, key: str) -> str: method __setitem__ (line 64) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 67) | def __delitem__(self, key: str) -> None: method __contains__ (line 70) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/create_sandbox_request_metadata.py class CreateSandboxRequestMetadata (line 29) | class CreateSandboxRequestMetadata: method to_dict (line 40) | def to_dict(self) -> dict[str, Any]: method from_dict (line 47) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 55) | def additional_keys(self) -> list[str]: method __getitem__ (line 58) | def __getitem__(self, key: str) -> str: method __setitem__ (line 61) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 64) | def __delitem__(self, key: str) -> None: method __contains__ (line 67) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/create_sandbox_response.py class CreateSandboxResponse (line 38) | class CreateSandboxResponse: method to_dict (line 59) | def to_dict(self) -> dict[str, Any]: method from_dict (line 98) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 148) | def additional_keys(self) -> list[str]: method __getitem__ (line 151) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 154) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 157) | def __delitem__(self, key: str) -> None: method __contains__ (line 160) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/create_sandbox_response_metadata.py class CreateSandboxResponseMetadata (line 29) | class CreateSandboxResponseMetadata: method to_dict (line 34) | def to_dict(self) -> dict[str, Any]: method from_dict (line 41) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 49) | def additional_keys(self) -> list[str]: method __getitem__ (line 52) | def __getitem__(self, key: str) -> str: method __setitem__ (line 55) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 58) | def __delitem__(self, key: str) -> None: method __contains__ (line 61) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/endpoint.py class Endpoint (line 34) | class Endpoint: method to_dict (line 48) | def to_dict(self) -> dict[str, Any]: method from_dict (line 68) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/endpoint_headers.py class EndpointHeaders (line 29) | class EndpointHeaders: method to_dict (line 34) | def to_dict(self) -> dict[str, Any]: method from_dict (line 41) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 49) | def additional_keys(self) -> list[str]: method __getitem__ (line 52) | def __getitem__(self, key: str) -> str: method __setitem__ (line 55) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 58) | def __delitem__(self, key: str) -> None: method __contains__ (line 61) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/error_response.py class ErrorResponse (line 28) | class ErrorResponse: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 58) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/host.py class Host (line 28) | class Host: method to_dict (line 42) | def to_dict(self) -> dict[str, Any]: method from_dict (line 56) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/image_spec.py class ImageSpec (line 34) | class ImageSpec: method to_dict (line 53) | def to_dict(self) -> dict[str, Any]: method from_dict (line 73) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/image_spec_auth.py class ImageSpecAuth (line 30) | class ImageSpecAuth: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 57) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/list_sandboxes_response.py class ListSandboxesResponse (line 34) | class ListSandboxesResponse: method to_dict (line 45) | def to_dict(self) -> dict[str, Any]: method from_dict (line 65) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 88) | def additional_keys(self) -> list[str]: method __getitem__ (line 91) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 94) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 97) | def __delitem__(self, key: str) -> None: method __contains__ (line 100) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/network_policy.py class NetworkPolicy (line 35) | class NetworkPolicy: method to_dict (line 49) | def to_dict(self) -> dict[str, Any]: method from_dict (line 72) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/network_policy_default_action.py class NetworkPolicyDefaultAction (line 20) | class NetworkPolicyDefaultAction(str, Enum): method __str__ (line 24) | def __str__(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/network_rule.py class NetworkRule (line 30) | class NetworkRule: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 58) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/network_rule_action.py class NetworkRuleAction (line 20) | class NetworkRuleAction(str, Enum): method __str__ (line 24) | def __str__(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/ossfs.py class OSSFS (line 31) | class OSSFS: method to_dict (line 61) | def to_dict(self) -> dict[str, Any]: method from_dict (line 96) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/ossfs_version.py class OSSFSVersion (line 20) | class OSSFSVersion(str, Enum): method __str__ (line 24) | def __str__(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/pagination_info.py class PaginationInfo (line 29) | class PaginationInfo: method to_dict (line 47) | def to_dict(self) -> dict[str, Any]: method from_dict (line 73) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 97) | def additional_keys(self) -> list[str]: method __getitem__ (line 100) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 103) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 106) | def __delitem__(self, key: str) -> None: method __contains__ (line 109) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/pvc.py class PVC (line 28) | class PVC: method to_dict (line 46) | def to_dict(self) -> dict[str, Any]: method from_dict (line 60) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/renew_sandbox_expiration_request.py class RenewSandboxExpirationRequest (line 30) | class RenewSandboxExpirationRequest: method to_dict (line 41) | def to_dict(self) -> dict[str, Any]: method from_dict (line 55) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/renew_sandbox_expiration_response.py class RenewSandboxExpirationResponse (line 30) | class RenewSandboxExpirationResponse: method to_dict (line 40) | def to_dict(self) -> dict[str, Any]: method from_dict (line 54) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/resource_limits.py class ResourceLimits (line 29) | class ResourceLimits: method to_dict (line 45) | def to_dict(self) -> dict[str, Any]: method from_dict (line 52) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 60) | def additional_keys(self) -> list[str]: method __getitem__ (line 63) | def __getitem__(self, key: str) -> str: method __setitem__ (line 66) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 69) | def __delitem__(self, key: str) -> None: method __contains__ (line 72) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/sandbox.py class Sandbox (line 39) | class Sandbox: method to_dict (line 65) | def to_dict(self) -> dict[str, Any]: method from_dict (line 107) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 161) | def additional_keys(self) -> list[str]: method __getitem__ (line 164) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 167) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 170) | def __delitem__(self, key: str) -> None: method __contains__ (line 173) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/sandbox_metadata.py class SandboxMetadata (line 29) | class SandboxMetadata: method to_dict (line 34) | def to_dict(self) -> dict[str, Any]: method from_dict (line 41) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 49) | def additional_keys(self) -> list[str]: method __getitem__ (line 52) | def __getitem__(self, key: str) -> str: method __setitem__ (line 55) | def __setitem__(self, key: str, value: str) -> None: method __delitem__ (line 58) | def __delitem__(self, key: str) -> None: method __contains__ (line 61) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/sandbox_status.py class SandboxStatus (line 33) | class SandboxStatus: method to_dict (line 71) | def to_dict(self) -> dict[str, Any]: method from_dict (line 99) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: method additional_keys (line 125) | def additional_keys(self) -> list[str]: method __getitem__ (line 128) | def __getitem__(self, key: str) -> Any: method __setitem__ (line 131) | def __setitem__(self, key: str, value: Any) -> None: method __delitem__ (line 134) | def __delitem__(self, key: str) -> None: method __contains__ (line 137) | def __contains__(self, key: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/models/volume.py class Volume (line 36) | class Volume: method to_dict (line 81) | def to_dict(self) -> dict[str, Any]: method from_dict (line 124) | def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T: FILE: sdks/sandbox/python/src/opensandbox/api/lifecycle/types.py class Unset (line 26) | class Unset: method __bool__ (line 27) | def __bool__(self) -> Literal[False]: class File (line 45) | class File: method to_tuple (line 52) | def to_tuple(self) -> FileTypes: class Response (line 61) | class Response(Generic[T]): FILE: sdks/sandbox/python/src/opensandbox/config/connection.py class ConnectionConfig (line 33) | class ConnectionConfig(BaseModel): method model_post_init (line 95) | def model_post_init(self, __context: object) -> None: method with_transport_if_missing (line 99) | def with_transport_if_missing(self) -> "ConnectionConfig": method close_transport_if_owned (line 119) | async def close_transport_if_owned(self) -> None: method protocol_must_be_valid (line 131) | def protocol_must_be_valid(cls, v: str) -> str: method timeout_must_be_positive (line 139) | def timeout_must_be_positive(cls, v: timedelta) -> timedelta: method get_api_key (line 144) | def get_api_key(self) -> str: method get_domain (line 154) | def get_domain(self) -> str: method get_base_url (line 158) | def get_base_url(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/config/connection_sync.py class ConnectionConfigSync (line 29) | class ConnectionConfigSync(BaseModel): method model_post_init (line 81) | def model_post_init(self, __context: object) -> None: method with_transport_if_missing (line 84) | def with_transport_if_missing(self) -> "ConnectionConfigSync": method close_transport_if_owned (line 104) | def close_transport_if_owned(self) -> None: method protocol_must_be_valid (line 115) | def protocol_must_be_valid(cls, v: str) -> str: method timeout_must_be_positive (line 123) | def timeout_must_be_positive(cls, v: timedelta) -> timedelta: method get_api_key (line 128) | def get_api_key(self) -> str: method get_domain (line 131) | def get_domain(self) -> str: method get_base_url (line 134) | def get_base_url(self) -> str: FILE: sdks/sandbox/python/src/opensandbox/exceptions/sandbox.py class SandboxError (line 21) | class SandboxError: method __init__ (line 32) | def __init__(self, code: str, message: str | None = None) -> None: method __repr__ (line 36) | def __repr__(self) -> str: class SandboxException (line 40) | class SandboxException(Exception): method __init__ (line 48) | def __init__( class SandboxApiException (line 61) | class SandboxApiException(SandboxException): method __init__ (line 67) | def __init__( class SandboxInternalException (line 84) | class SandboxInternalException(SandboxException): method __init__ (line 89) | def __init__( class SandboxUnhealthyException (line 99) | class SandboxUnhealthyException(SandboxException): method __init__ (line 104) | def __init__( class SandboxReadyTimeoutException (line 112) | class SandboxReadyTimeoutException(SandboxException): method __init__ (line 117) | def __init__( class InvalidArgumentException (line 127) | class InvalidArgumentException(SandboxException): method __init__ (line 133) | def __init__( FILE: sdks/sandbox/python/src/opensandbox/manager.py class SandboxManager (line 39) | class SandboxManager: method __init__ (line 79) | def __init__( method connection_config (line 97) | def connection_config(self) -> ConnectionConfig: method create (line 102) | async def create( method list_sandbox_infos (line 120) | async def list_sandbox_infos(self, filter: SandboxFilter) -> PagedSand... method get_sandbox_info (line 135) | async def get_sandbox_info(self, sandbox_id: str) -> SandboxInfo: method kill_sandbox (line 151) | async def kill_sandbox(self, sandbox_id: str) -> None: method renew_sandbox (line 165) | async def renew_sandbox(self, sandbox_id: str, timeout: timedelta) -> ... method pause_sandbox (line 185) | async def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 198) | async def resume_sandbox(self, sandbox_id: str) -> None: method close (line 211) | async def close(self) -> None: method __aenter__ (line 229) | async def __aenter__(self) -> "SandboxManager": method __aexit__ (line 233) | async def __aexit__( FILE: sdks/sandbox/python/src/opensandbox/models/execd.py class OutputMessage (line 29) | class OutputMessage(BaseModel): class ExecutionResult (line 48) | class ExecutionResult(BaseModel): class ExecutionError (line 69) | class ExecutionError(BaseModel): class ExecutionLogs (line 89) | class ExecutionLogs(BaseModel): method add_stdout (line 104) | def add_stdout(self, message: OutputMessage) -> None: method add_stderr (line 108) | def add_stderr(self, message: OutputMessage) -> None: class ExecutionComplete (line 113) | class ExecutionComplete(BaseModel): class ExecutionInit (line 129) | class ExecutionInit(BaseModel): class Execution (line 142) | class Execution(BaseModel): method add_result (line 167) | def add_result(self, result: ExecutionResult) -> None: method text (line 172) | def text(self) -> str: method __str__ (line 191) | def __str__(self) -> str: class ExecutionHandlers (line 214) | class ExecutionHandlers(BaseModel): class RunCommandOpts (line 259) | class RunCommandOpts(BaseModel): method validate_uid_gid_dependency (line 292) | def validate_uid_gid_dependency(self) -> "RunCommandOpts": class CommandStatus (line 301) | class CommandStatus(BaseModel): class CommandLogs (line 327) | class CommandLogs(BaseModel): FILE: sdks/sandbox/python/src/opensandbox/models/execd_sync.py class ExecutionHandlersSync (line 31) | class ExecutionHandlersSync(BaseModel): FILE: sdks/sandbox/python/src/opensandbox/models/filesystem.py class EntryInfo (line 28) | class EntryInfo(BaseModel): class WriteEntry (line 51) | class WriteEntry(BaseModel): method path_must_not_be_empty (line 73) | def path_must_not_be_empty(cls, v: str) -> str: method mode_must_be_non_negative (line 80) | def mode_must_be_non_negative(cls, v: int) -> int: method encoding_must_not_be_empty (line 87) | def encoding_must_not_be_empty(cls, v: str) -> str: class MoveEntry (line 93) | class MoveEntry(BaseModel): method src_must_not_be_empty (line 111) | def src_must_not_be_empty(cls, v: str) -> str: method dest_must_not_be_empty (line 118) | def dest_must_not_be_empty(cls, v: str) -> str: class SetPermissionEntry (line 126) | class SetPermissionEntry(BaseModel): method path_must_not_be_empty (line 141) | def path_must_not_be_empty(cls, v: str) -> str: method mode_must_be_non_negative (line 148) | def mode_must_be_non_negative(cls, v: int) -> int: class ContentReplaceEntry (line 154) | class ContentReplaceEntry(BaseModel): method path_must_not_be_empty (line 172) | def path_must_not_be_empty(cls, v: str) -> str: class SearchEntry (line 180) | class SearchEntry(BaseModel): method path_must_not_be_empty (line 195) | def path_must_not_be_empty(cls, v: str) -> str: method pattern_must_not_be_empty (line 202) | def pattern_must_not_be_empty(cls, v: str) -> str: FILE: sdks/sandbox/python/src/opensandbox/models/sandboxes.py class SandboxImageAuth (line 28) | class SandboxImageAuth(BaseModel): method username_must_not_be_empty (line 38) | def username_must_not_be_empty(cls, v: str) -> str: method password_must_not_be_empty (line 45) | def password_must_not_be_empty(cls, v: str) -> str: class SandboxImageSpec (line 51) | class SandboxImageSpec(BaseModel): method __init__ (line 73) | def __init__( method image_must_not_be_empty (line 91) | def image_must_not_be_empty(cls, v: str) -> str: class NetworkRule (line 97) | class NetworkRule(BaseModel): method target_must_not_be_empty (line 111) | def target_must_not_be_empty(cls, v: str) -> str: class NetworkPolicy (line 117) | class NetworkPolicy(BaseModel): class Host (line 140) | class Host(BaseModel): method path_must_be_absolute (line 154) | def path_must_be_absolute(cls, v: str) -> str: class PVC (line 160) | class PVC(BaseModel): method claim_name_must_not_be_empty (line 177) | def claim_name_must_not_be_empty(cls, v: str) -> str: class OSSFS (line 183) | class OSSFS(BaseModel): method validate_inline_credentials (line 209) | def validate_inline_credentials(self) -> "OSSFS": class Volume (line 217) | class Volume(BaseModel): method name_must_not_be_empty (line 277) | def name_must_not_be_empty(cls, v: str) -> str: method mount_path_must_be_absolute (line 284) | def mount_path_must_be_absolute(cls, v: str) -> str: method validate_exactly_one_backend (line 290) | def validate_exactly_one_backend(self) -> "Volume": class SandboxStatus (line 305) | class SandboxStatus(BaseModel): class SandboxInfo (line 328) | class SandboxInfo(BaseModel): class SandboxCreateResponse (line 352) | class SandboxCreateResponse(BaseModel): class SandboxRenewResponse (line 360) | class SandboxRenewResponse(BaseModel): class SandboxEndpoint (line 373) | class SandboxEndpoint(BaseModel): class PaginationInfo (line 385) | class PaginationInfo(BaseModel): class PagedSandboxInfos (line 403) | class PagedSandboxInfos(BaseModel): class SandboxFilter (line 416) | class SandboxFilter(BaseModel): method page_size_must_be_positive (line 434) | def page_size_must_be_positive(cls, v: int | None) -> int | None: method page_must_be_non_negative (line 441) | def page_must_be_non_negative(cls, v: int | None) -> int | None: class SandboxMetrics (line 449) | class SandboxMetrics(BaseModel): class SandboxState (line 474) | class SandboxState: method values (line 511) | def values(cls) -> set[str]: FILE: sdks/sandbox/python/src/opensandbox/sandbox.py class Sandbox (line 58) | class Sandbox: method __init__ (line 108) | def __init__( method files (line 134) | def files(self) -> Filesystem: method commands (line 143) | def commands(self) -> Commands: method metrics (line 152) | def metrics(self) -> Metrics: method connection_config (line 161) | def connection_config(self) -> ConnectionConfig: method get_info (line 165) | async def get_info(self) -> SandboxInfo: method get_endpoint (line 177) | async def get_endpoint(self, port: int) -> SandboxEndpoint: method get_metrics (line 194) | async def get_metrics(self) -> SandboxMetrics: method renew (line 206) | async def renew(self, timeout: timedelta) -> SandboxRenewResponse: method get_egress_policy (line 228) | async def get_egress_policy(self) -> NetworkPolicy: method patch_egress_rules (line 234) | async def patch_egress_rules(self, rules: list[NetworkRule]) -> None: method pause (line 247) | async def pause(self) -> None: method kill (line 261) | async def kill(self) -> None: method close (line 276) | async def close(self) -> None: method is_healthy (line 297) | async def is_healthy(self) -> bool: method _ping (line 308) | async def _ping(self) -> bool: method check_ready (line 315) | async def check_ready( method create (line 393) | async def create( method connect (line 526) | async def connect( method resume (line 602) | async def resume( method __aenter__ (line 675) | async def __aenter__(self) -> "Sandbox": method __aexit__ (line 679) | async def __aexit__(self, exc_type: Any, exc_val: Any, exc_tb: Any) ->... FILE: sdks/sandbox/python/src/opensandbox/services/command.py class Commands (line 33) | class Commands(Protocol): method run (line 42) | async def run( method interrupt (line 68) | async def interrupt(self, execution_id: str) -> None: method get_command_status (line 83) | async def get_command_status(self, execution_id: str) -> CommandStatus: method get_background_command_logs (line 98) | async def get_background_command_logs( FILE: sdks/sandbox/python/src/opensandbox/services/egress.py class Egress (line 27) | class Egress(Protocol): method get_policy (line 30) | async def get_policy(self) -> NetworkPolicy: method patch_rules (line 39) | async def patch_rules(self, rules: list[NetworkRule]) -> None: FILE: sdks/sandbox/python/src/opensandbox/services/filesystem.py class Filesystem (line 35) | class Filesystem(Protocol): method read_file (line 44) | async def read_file( method read_bytes (line 67) | async def read_bytes( method read_bytes_stream (line 88) | async def read_bytes_stream( method write_files (line 100) | async def write_files(self, entries: list[WriteEntry]) -> None: method write_file (line 112) | async def write_file( method create_directories (line 138) | async def create_directories(self, entries: list[WriteEntry]) -> None: method delete_files (line 150) | async def delete_files(self, paths: list[str]) -> None: method delete_directories (line 162) | async def delete_directories(self, paths: list[str]) -> None: method move_files (line 174) | async def move_files(self, entries: list[MoveEntry]) -> None: method set_permissions (line 186) | async def set_permissions(self, entries: list[SetPermissionEntry]) -> ... method replace_contents (line 198) | async def replace_contents(self, entries: list[ContentReplaceEntry]) -... method search (line 210) | async def search(self, entry: SearchEntry) -> list[EntryInfo]: method get_file_info (line 225) | async def get_file_info(self, paths: list[str]) -> dict[str, EntryInfo]: FILE: sdks/sandbox/python/src/opensandbox/services/health.py class Health (line 25) | class Health(Protocol): method ping (line 33) | async def ping(self, sandbox_id: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/services/metrics.py class Metrics (line 27) | class Metrics(Protocol): method get_metrics (line 35) | async def get_metrics(self, sandbox_id: str) -> SandboxMetrics: FILE: sdks/sandbox/python/src/opensandbox/services/sandbox.py class Sandboxes (line 38) | class Sandboxes(Protocol): method create_sandbox (line 46) | async def create_sandbox( method get_sandbox_info (line 81) | async def get_sandbox_info(self, sandbox_id: str) -> SandboxInfo: method list_sandboxes (line 96) | async def list_sandboxes(self, filter: SandboxFilter) -> PagedSandboxI... method get_sandbox_endpoint (line 111) | async def get_sandbox_endpoint( method pause_sandbox (line 130) | async def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 142) | async def resume_sandbox(self, sandbox_id: str) -> None: method renew_sandbox_expiration (line 154) | async def renew_sandbox_expiration( method kill_sandbox (line 172) | async def kill_sandbox(self, sandbox_id: str) -> None: FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/command_adapter.py class CommandsAdapterSync (line 54) | class CommandsAdapterSync(CommandsSync): method __init__ (line 64) | def __init__(self, connection_config: ConnectionConfigSync, execd_endp... method _get_execd_url (line 114) | def _get_execd_url(self, path: str) -> str: method run (line 118) | def run( method interrupt (line 164) | def interrupt(self, execution_id: str) -> None: method get_command_status (line 180) | def get_command_status(self, execution_id: str) -> CommandStatus: method get_background_command_logs (line 201) | def get_background_command_logs( FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/converter/execution_event_dispatcher.py class ExecutionEventDispatcherSync (line 32) | class ExecutionEventDispatcherSync: method __init__ (line 37) | def __init__(self, execution: Execution, handlers: ExecutionHandlersSy... method dispatch (line 41) | def dispatch(self, event_node: EventNode) -> None: method _handle_init (line 61) | def _handle_init(self, event_node: EventNode, timestamp: int) -> None: method _handle_stdout (line 68) | def _handle_stdout(self, event_node: EventNode, timestamp: int) -> None: method _handle_stderr (line 74) | def _handle_stderr(self, event_node: EventNode, timestamp: int) -> None: method _handle_result (line 80) | def _handle_result(self, event_node: EventNode, timestamp: int) -> None: method _handle_error (line 87) | def _handle_error(self, event_node: EventNode, timestamp: int) -> None: method _handle_execution_complete (line 101) | def _handle_execution_complete(self, event_node: EventNode, timestamp:... FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/egress_adapter.py class EgressAdapterSync (line 36) | class EgressAdapterSync(EgressSync): method __init__ (line 39) | def __init__(self, connection_config: ConnectionConfigSync, endpoint: ... method get_policy (line 65) | def get_policy(self) -> NetworkPolicy: method patch_rules (line 89) | def patch_rules(self, rules: list[NetworkRule]) -> None: FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/factory.py class AdapterFactorySync (line 38) | class AdapterFactorySync: method __init__ (line 39) | def __init__(self, connection_config: ConnectionConfigSync) -> None: method create_sandbox_service (line 42) | def create_sandbox_service(self) -> SandboxesSync: method create_filesystem_service (line 45) | def create_filesystem_service(self, endpoint: SandboxEndpoint) -> File... method create_command_service (line 48) | def create_command_service(self, endpoint: SandboxEndpoint) -> Command... method create_egress_service (line 51) | def create_egress_service(self, endpoint: SandboxEndpoint) -> EgressSync: method create_health_service (line 54) | def create_health_service(self, endpoint: SandboxEndpoint) -> HealthSync: method create_metrics_service (line 57) | def create_metrics_service(self, endpoint: SandboxEndpoint) -> Metrics... FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/filesystem_adapter.py class _DownloadRequest (line 54) | class _DownloadRequest(TypedDict): class FilesystemAdapterSync (line 60) | class FilesystemAdapterSync(FilesystemSync): method __init__ (line 64) | def __init__(self, connection_config: ConnectionConfigSync, execd_endp... method _get_execd_base_url (line 87) | def _get_execd_base_url(self) -> str: method _get_execd_url (line 90) | def _get_execd_url(self, path: str) -> str: method _build_download_request (line 93) | def _build_download_request(self, path: str, range_header: str | None ... method read_file (line 101) | def read_file( method read_bytes (line 111) | def read_bytes(self, path: str, *, range_header: str | None = None) ->... method read_bytes_stream (line 132) | def read_bytes_stream( method write_files (line 171) | def write_files(self, entries: list[WriteEntry]) -> None: method write_file (line 219) | def write_file( method create_directories (line 232) | def create_directories(self, entries: list[WriteEntry]) -> None: method delete_files (line 245) | def delete_files(self, paths: list[str]) -> None: method delete_directories (line 255) | def delete_directories(self, paths: list[str]) -> None: method move_files (line 265) | def move_files(self, entries: list[MoveEntry]) -> None: method set_permissions (line 276) | def set_permissions(self, entries: list[SetPermissionEntry]) -> None: method replace_contents (line 289) | def replace_contents(self, entries: list[ContentReplaceEntry]) -> None: method search (line 302) | def search(self, entry: SearchEntry) -> list[EntryInfo]: method get_file_info (line 326) | def get_file_info(self, paths: list[str]) -> dict[str, EntryInfo]: FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/health_adapter.py class HealthAdapterSync (line 32) | class HealthAdapterSync(HealthSync): method __init__ (line 33) | def __init__(self, connection_config: ConnectionConfigSync, execd_endp... method ping (line 55) | def ping(self, sandbox_id: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/metrics_adapter.py class MetricsAdapterSync (line 41) | class MetricsAdapterSync(MetricsSync): method __init__ (line 42) | def __init__(self, connection_config: ConnectionConfigSync, execd_endp... method get_metrics (line 64) | def get_metrics(self, sandbox_id: str) -> SandboxMetrics: FILE: sdks/sandbox/python/src/opensandbox/sync/adapters/sandboxes_adapter.py class SandboxesAdapterSync (line 53) | class SandboxesAdapterSync(SandboxesSync): method __init__ (line 54) | def __init__(self, connection_config: ConnectionConfigSync) -> None: method _get_client (line 85) | def _get_client(self): method create_sandbox (line 88) | def create_sandbox( method get_sandbox_info (line 127) | def get_sandbox_info(self, sandbox_id: str) -> SandboxInfo: method list_sandboxes (line 143) | def list_sandboxes(self, filter: SandboxFilter) -> PagedSandboxInfos: method get_sandbox_endpoint (line 179) | def get_sandbox_endpoint( method pause_sandbox (line 201) | def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 215) | def resume_sandbox(self, sandbox_id: str) -> None: method renew_sandbox_expiration (line 229) | def renew_sandbox_expiration( method kill_sandbox (line 257) | def kill_sandbox(self, sandbox_id: str) -> None: FILE: sdks/sandbox/python/src/opensandbox/sync/manager.py class SandboxManagerSync (line 37) | class SandboxManagerSync: method __init__ (line 60) | def __init__( method connection_config (line 76) | def connection_config(self) -> ConnectionConfigSync: method create (line 81) | def create(cls, connection_config: ConnectionConfigSync | None = None)... method list_sandbox_infos (line 97) | def list_sandbox_infos(self, filter: SandboxFilter) -> PagedSandboxInfos: method get_sandbox_info (line 112) | def get_sandbox_info(self, sandbox_id: str) -> SandboxInfo: method kill_sandbox (line 128) | def kill_sandbox(self, sandbox_id: str) -> None: method renew_sandbox (line 142) | def renew_sandbox(self, sandbox_id: str, timeout: timedelta) -> Sandbo... method pause_sandbox (line 160) | def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 173) | def resume_sandbox(self, sandbox_id: str) -> None: method close (line 186) | def close(self) -> None: method __enter__ (line 200) | def __enter__(self) -> "SandboxManagerSync": method __exit__ (line 204) | def __exit__(self, exc_type: Any, exc_val: Any, exc_tb: Any) -> None: FILE: sdks/sandbox/python/src/opensandbox/sync/sandbox.py class SandboxSync (line 57) | class SandboxSync: method __init__ (line 114) | def __init__( method files (line 140) | def files(self) -> FilesystemSync: method commands (line 149) | def commands(self) -> CommandsSync: method metrics (line 158) | def metrics(self) -> MetricsSync: method connection_config (line 167) | def connection_config(self) -> ConnectionConfigSync: method get_info (line 171) | def get_info(self) -> SandboxInfo: method get_endpoint (line 183) | def get_endpoint(self, port: int) -> SandboxEndpoint: method get_metrics (line 200) | def get_metrics(self) -> SandboxMetrics: method renew (line 212) | def renew(self, timeout: timedelta) -> SandboxRenewResponse: method get_egress_policy (line 236) | def get_egress_policy(self) -> NetworkPolicy: method patch_egress_rules (line 242) | def patch_egress_rules(self, rules: list[NetworkRule]) -> None: method pause (line 255) | def pause(self) -> None: method kill (line 269) | def kill(self) -> None: method close (line 284) | def close(self) -> None: method is_healthy (line 301) | def is_healthy(self) -> bool: method check_ready (line 315) | def check_ready(self, timeout: timedelta, polling_interval: timedelta)... method create (line 383) | def create( method connect (line 506) | def connect( method resume (line 580) | def resume( method __enter__ (line 654) | def __enter__(self) -> "SandboxSync": method __exit__ (line 658) | def __exit__(self, exc_type: Any, exc_val: Any, exc_tb: Any) -> None: FILE: sdks/sandbox/python/src/opensandbox/sync/services/command.py class CommandsSync (line 34) | class CommandsSync(Protocol): method run (line 46) | def run( method interrupt (line 72) | def interrupt(self, execution_id: str) -> None: method get_command_status (line 87) | def get_command_status(self, execution_id: str) -> CommandStatus: method get_background_command_logs (line 102) | def get_background_command_logs( FILE: sdks/sandbox/python/src/opensandbox/sync/services/egress.py class EgressSync (line 25) | class EgressSync(Protocol): method get_policy (line 28) | def get_policy(self) -> NetworkPolicy: method patch_rules (line 32) | def patch_rules(self, rules: list[NetworkRule]) -> None: FILE: sdks/sandbox/python/src/opensandbox/sync/services/filesystem.py class FilesystemSync (line 37) | class FilesystemSync(Protocol): method read_file (line 49) | def read_file( method read_bytes (line 72) | def read_bytes(self, path: str, *, range_header: str | None = None) ->... method read_bytes_stream (line 88) | def read_bytes_stream( method write_files (line 107) | def write_files(self, entries: list[WriteEntry]) -> None: method write_file (line 119) | def write_file( method create_directories (line 145) | def create_directories(self, entries: list[WriteEntry]) -> None: method delete_files (line 157) | def delete_files(self, paths: list[str]) -> None: method delete_directories (line 169) | def delete_directories(self, paths: list[str]) -> None: method move_files (line 181) | def move_files(self, entries: list[MoveEntry]) -> None: method set_permissions (line 193) | def set_permissions(self, entries: list[SetPermissionEntry]) -> None: method replace_contents (line 205) | def replace_contents(self, entries: list[ContentReplaceEntry]) -> None: method search (line 217) | def search(self, entry: SearchEntry) -> list[EntryInfo]: method get_file_info (line 232) | def get_file_info(self, paths: list[str]) -> dict[str, EntryInfo]: FILE: sdks/sandbox/python/src/opensandbox/sync/services/health.py class HealthSync (line 26) | class HealthSync(Protocol): method ping (line 34) | def ping(self, sandbox_id: str) -> bool: FILE: sdks/sandbox/python/src/opensandbox/sync/services/metrics.py class MetricsSync (line 28) | class MetricsSync(Protocol): method get_metrics (line 35) | def get_metrics(self, sandbox_id: str) -> SandboxMetrics: FILE: sdks/sandbox/python/src/opensandbox/sync/services/sandbox.py class SandboxesSync (line 39) | class SandboxesSync(Protocol): method create_sandbox (line 47) | def create_sandbox( method get_sandbox_info (line 82) | def get_sandbox_info(self, sandbox_id: str) -> SandboxInfo: method list_sandboxes (line 97) | def list_sandboxes(self, filter: SandboxFilter) -> PagedSandboxInfos: method get_sandbox_endpoint (line 112) | def get_sandbox_endpoint( method pause_sandbox (line 131) | def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 143) | def resume_sandbox(self, sandbox_id: str) -> None: method renew_sandbox_expiration (line 155) | def renew_sandbox_expiration( method kill_sandbox (line 173) | def kill_sandbox(self, sandbox_id: str) -> None: FILE: sdks/sandbox/python/tests/test_adapters_eager_init.py function test_sandbox_service_adapter_eager_init (line 27) | def test_sandbox_service_adapter_eager_init() -> None: function test_execd_service_adapters_eager_init_and_urls (line 34) | async def test_execd_service_adapters_eager_init_and_urls() -> None: FILE: sdks/sandbox/python/tests/test_command_service_adapter_streaming.py class _SseTransport (line 29) | class _SseTransport(httpx.AsyncBaseTransport): method __init__ (line 30) | def __init__(self) -> None: method handle_async_request (line 33) | async def handle_async_request(self, request: httpx.Request) -> httpx.... function test_run_command_streaming_happy_path_updates_execution (line 58) | async def test_run_command_streaming_happy_path_updates_execution() -> N... function test_run_command_rejects_blank_command (line 74) | async def test_run_command_rejects_blank_command() -> None: function test_run_command_non_200_raises_api_exception (line 84) | async def test_run_command_non_200_raises_api_exception() -> None: FILE: sdks/sandbox/python/tests/test_command_service_sse_client_config.py function test_sse_client_has_event_stream_headers_and_no_read_timeout (line 22) | def test_sse_client_has_event_stream_headers_and_no_read_timeout() -> None: FILE: sdks/sandbox/python/tests/test_connection_config.py function test_protocol_validation (line 22) | def test_protocol_validation() -> None: function test_get_base_url_with_domain_and_protocol (line 30) | def test_get_base_url_with_domain_and_protocol() -> None: function test_get_base_url_domain_can_include_scheme (line 35) | def test_get_base_url_domain_can_include_scheme() -> None: function test_close_transport_if_owned_default_transport (line 41) | async def test_close_transport_if_owned_default_transport() -> None: function test_close_transport_if_owned_does_not_close_user_transport (line 48) | async def test_close_transport_if_owned_does_not_close_user_transport() ... FILE: sdks/sandbox/python/tests/test_connection_config_env_and_timeout.py function test_get_api_key_from_env (line 23) | def test_get_api_key_from_env(monkeypatch: pytest.MonkeyPatch) -> None: function test_get_domain_from_env_and_default (line 29) | def test_get_domain_from_env_and_default(monkeypatch: pytest.MonkeyPatch... function test_timeout_must_be_positive (line 39) | def test_timeout_must_be_positive() -> None: FILE: sdks/sandbox/python/tests/test_converters_and_error_handling.py function test_parse_sandbox_error_from_json_bytes (line 53) | def test_parse_sandbox_error_from_json_bytes() -> None: function test_parse_sandbox_error_from_plain_text_string (line 60) | def test_parse_sandbox_error_from_plain_text_string() -> None: function test_parse_sandbox_error_from_invalid_utf8_bytes_fallback_message (line 67) | def test_parse_sandbox_error_from_invalid_utf8_bytes_fallback_message() ... function test_handle_api_error_raises_with_parsed_message (line 75) | def test_handle_api_error_raises_with_parsed_message() -> None: function test_handle_api_error_noop_on_success (line 90) | def test_handle_api_error_noop_on_success() -> None: function test_require_parsed_includes_request_id_on_invalid_payload (line 98) | def test_require_parsed_includes_request_id_on_invalid_payload() -> None: function test_exception_converter_maps_common_types (line 109) | def test_exception_converter_maps_common_types() -> None: function test_exception_converter_maps_generated_unexpected_status_to_api_exception (line 117) | def test_exception_converter_maps_generated_unexpected_status_to_api_exc... function test_exception_converter_maps_httpx_status_error_to_api_exception (line 130) | def test_exception_converter_maps_httpx_status_error_to_api_exception() ... function test_execution_converter_to_api_run_command_request (line 145) | def test_execution_converter_to_api_run_command_request() -> None: function test_run_command_opts_validates_gid_requires_uid (line 194) | def test_run_command_opts_validates_gid_requires_uid() -> None: function test_filesystem_and_metrics_converters (line 199) | def test_filesystem_and_metrics_converters() -> None: function test_sandbox_model_converter_to_api_create_request_and_renew_tz (line 227) | def test_sandbox_model_converter_to_api_create_request_and_renew_tz() ->... function test_sandbox_model_converter_omits_timeout_for_manual_cleanup (line 257) | def test_sandbox_model_converter_omits_timeout_for_manual_cleanup() -> N... FILE: sdks/sandbox/python/tests/test_filesystem_search_error_handling.py function test_async_search_unexpected_response_without_headers_still_raises_api_exception (line 30) | async def test_async_search_unexpected_response_without_headers_still_ra... function test_sync_search_unexpected_response_without_headers_still_raises_api_exception (line 55) | def test_sync_search_unexpected_response_without_headers_still_raises_ap... FILE: sdks/sandbox/python/tests/test_models_stability.py function test_sandbox_image_spec_supports_positional_image (line 49) | def test_sandbox_image_spec_supports_positional_image() -> None: function test_sandbox_image_spec_rejects_blank_image (line 54) | def test_sandbox_image_spec_rejects_blank_image() -> None: function test_api_image_spec_tolerates_null_auth (line 59) | def test_api_image_spec_tolerates_null_auth() -> None: function test_api_create_sandbox_response_tolerates_null_metadata (line 65) | def test_api_create_sandbox_response_tolerates_null_metadata() -> None: function test_api_sandbox_tolerates_null_metadata (line 81) | def test_api_sandbox_tolerates_null_metadata() -> None: function test_sandbox_image_auth_rejects_blank_username_and_password (line 98) | def test_sandbox_image_auth_rejects_blank_username_and_password() -> None: function test_sandbox_filter_validations (line 105) | def test_sandbox_filter_validations() -> None: function test_sandbox_status_and_info_alias_dump_is_stable (line 113) | def test_sandbox_status_and_info_alias_dump_is_stable() -> None: function test_sandbox_info_supports_manual_cleanup_expiration (line 133) | def test_sandbox_info_supports_manual_cleanup_expiration() -> None: function test_filesystem_models_aliases_and_validation (line 147) | def test_filesystem_models_aliases_and_validation() -> None: function test_host_backend_requires_absolute_path (line 161) | def test_host_backend_requires_absolute_path() -> None: function test_pvc_backend_rejects_blank_claim_name (line 169) | def test_pvc_backend_rejects_blank_claim_name() -> None: function test_ossfs_backend_default_version_is_2_0 (line 177) | def test_ossfs_backend_default_version_is_2_0() -> None: function test_volume_with_host_backend (line 187) | def test_volume_with_host_backend() -> None: function test_volume_with_pvc_backend (line 202) | def test_volume_with_pvc_backend() -> None: function test_volume_rejects_blank_name (line 219) | def test_volume_rejects_blank_name() -> None: function test_volume_requires_absolute_mount_path (line 228) | def test_volume_requires_absolute_mount_path() -> None: function test_volume_serialization_uses_aliases (line 237) | def test_volume_serialization_uses_aliases() -> None: function test_volume_rejects_no_backend (line 253) | def test_volume_rejects_no_backend() -> None: function test_volume_rejects_multiple_backends (line 262) | def test_volume_rejects_multiple_backends() -> None: function _make_output (line 278) | def _make_output(text: str, *, is_error: bool = False) -> OutputMessage: function _make_result (line 282) | def _make_result(text: str) -> ExecutionResult: function test_execution_str_stdout_only (line 286) | def test_execution_str_stdout_only() -> None: function test_execution_str_with_stderr (line 295) | def test_execution_str_with_stderr() -> None: function test_execution_str_with_error (line 305) | def test_execution_str_with_error() -> None: function test_execution_str_empty (line 312) | def test_execution_str_empty() -> None: function test_execution_text_property (line 317) | def test_execution_text_property() -> None: function test_execution_text_includes_results (line 327) | def test_execution_text_includes_results() -> None: function test_execution_text_combines_stdout_and_results (line 336) | def test_execution_text_combines_stdout_and_results() -> None: function test_execution_text_strips_trailing_newlines (line 346) | def test_execution_text_strips_trailing_newlines() -> None: FILE: sdks/sandbox/python/tests/test_sandbox_business_logic.py class _SandboxServiceStub (line 30) | class _SandboxServiceStub: method __init__ (line 31) | def __init__(self) -> None: method renew_sandbox_expiration (line 35) | async def renew_sandbox_expiration(self, sandbox_id, expires_at: datet... method get_sandbox_endpoint (line 38) | async def get_sandbox_endpoint(self, sandbox_id, port: int, use_server... class _HealthServiceStub (line 43) | class _HealthServiceStub: method __init__ (line 44) | def __init__(self, *, should_raise: bool = False) -> None: method ping (line 48) | async def ping(self, sandbox_id) -> bool: class _Noop (line 55) | class _Noop: class _EgressServiceStub (line 59) | class _EgressServiceStub: method __init__ (line 60) | def __init__(self) -> None: method get_policy (line 63) | async def get_policy(self) -> NetworkPolicy: method patch_rules (line 69) | async def patch_rules(self, rules: list[NetworkRule]) -> None: function _make_sandbox (line 73) | def _make_sandbox( function test_is_healthy_uses_ping_and_swallows_ping_errors (line 94) | async def test_is_healthy_uses_ping_and_swallows_ping_errors() -> None: function test_check_ready_succeeds_after_retries_without_real_sleep (line 103) | async def test_check_ready_succeeds_after_retries_without_real_sleep(mon... function test_check_ready_timeout_raises (line 127) | async def test_check_ready_timeout_raises() -> None: function test_check_ready_timeout_message_includes_troubleshooting_hints (line 142) | async def test_check_ready_timeout_message_includes_troubleshooting_hint... function test_renew_passes_timezone_aware_utc_datetime (line 162) | async def test_renew_passes_timezone_aware_utc_datetime() -> None: function test_get_egress_policy_uses_injected_egress_service (line 180) | async def test_get_egress_policy_uses_injected_egress_service() -> None: function test_patch_egress_rules_uses_injected_egress_service (line 195) | async def test_patch_egress_rules_uses_injected_egress_service( function test_create_resolves_egress_endpoint_and_builds_service (line 220) | async def test_create_resolves_egress_endpoint_and_builds_service( FILE: sdks/sandbox/python/tests/test_sandbox_close_and_connect_validation.py class _NoopService (line 25) | class _NoopService: class _NoopEgressService (line 29) | class _NoopEgressService: method get_policy (line 30) | async def get_policy(self) -> NetworkPolicy: # pragma: no cover method patch_rules (line 36) | async def patch_rules(self, rules: list[NetworkRule]) -> None: # prag... function test_sandbox_close_does_not_close_user_transport (line 41) | async def test_sandbox_close_does_not_close_user_transport() -> None: function test_sandbox_connect_requires_id (line 72) | async def test_sandbox_connect_requires_id() -> None: FILE: sdks/sandbox/python/tests/test_sandbox_manager_business_logic.py class _SandboxServiceStub (line 28) | class _SandboxServiceStub: method __init__ (line 29) | def __init__(self) -> None: method list_sandboxes (line 33) | async def list_sandboxes(self, _filter): # pragma: no cover method get_sandbox_info (line 36) | async def get_sandbox_info(self, _sandbox_id): # pragma: no cover method kill_sandbox (line 39) | async def kill_sandbox(self, _sandbox_id): # pragma: no cover method renew_sandbox_expiration (line 42) | async def renew_sandbox_expiration(self, sandbox_id, new_expiration_ti... method pause_sandbox (line 45) | async def pause_sandbox(self, sandbox_id) -> None: method resume_sandbox (line 48) | async def resume_sandbox(self, _sandbox_id): # pragma: no cover function test_manager_renew_uses_utc_datetime (line 53) | async def test_manager_renew_uses_utc_datetime() -> None: function test_manager_close_does_not_close_user_transport (line 66) | async def test_manager_close_does_not_close_user_transport() -> None: FILE: sdks/sandbox/python/tests/test_sandbox_manager_sync_business_logic.py class _SandboxServiceStub (line 27) | class _SandboxServiceStub: method __init__ (line 28) | def __init__(self) -> None: method list_sandboxes (line 31) | def list_sandboxes(self, _filter): # pragma: no cover method get_sandbox_info (line 34) | def get_sandbox_info(self, _sandbox_id): # pragma: no cover method kill_sandbox (line 37) | def kill_sandbox(self, _sandbox_id): # pragma: no cover method renew_sandbox_expiration (line 40) | def renew_sandbox_expiration(self, sandbox_id, new_expiration_time: da... method pause_sandbox (line 43) | def pause_sandbox(self, _sandbox_id) -> None: # pragma: no cover method resume_sandbox (line 46) | def resume_sandbox(self, _sandbox_id): # pragma: no cover function test_sync_manager_renew_uses_utc_datetime (line 50) | def test_sync_manager_renew_uses_utc_datetime() -> None: function test_sync_manager_close_does_not_close_user_transport (line 62) | def test_sync_manager_close_does_not_close_user_transport() -> None: FILE: sdks/sandbox/python/tests/test_sandbox_service_adapter_lifecycle.py class _Resp (line 34) | class _Resp: method __init__ (line 35) | def __init__(self, *, status_code: int, parsed) -> None: function _api_create_sandbox_response (line 40) | def _api_create_sandbox_response(sandbox_id: str): function _api_list_sandboxes_response (line 55) | def _api_list_sandboxes_response(): function test_create_sandbox_success (line 85) | async def test_create_sandbox_success(monkeypatch: pytest.MonkeyPatch) -... function test_create_sandbox_manual_cleanup_omits_timeout (line 123) | async def test_create_sandbox_manual_cleanup_omits_timeout(monkeypatch: ... function test_create_sandbox_empty_response_raises (line 152) | async def test_create_sandbox_empty_response_raises(monkeypatch: pytest.... function test_list_sandboxes_metadata_double_encoded (line 177) | async def test_list_sandboxes_metadata_double_encoded(monkeypatch: pytes... function test_pause_resume_kill_call_openapi (line 202) | async def test_pause_resume_kill_call_openapi(monkeypatch: pytest.Monkey... function test_renew_sandbox_expiration_sends_timezone_aware (line 240) | async def test_renew_sandbox_expiration_sends_timezone_aware(monkeypatch... FILE: sdks/sandbox/python/tests/test_sandbox_sync_business_logic.py class _Noop (line 30) | class _Noop: class _SandboxServiceStub (line 34) | class _SandboxServiceStub: method __init__ (line 35) | def __init__(self) -> None: method get_sandbox_endpoint (line 38) | def get_sandbox_endpoint(self, sandbox_id, port: int, use_server_proxy... class _EgressServiceStub (line 43) | class _EgressServiceStub: method __init__ (line 44) | def __init__(self) -> None: method get_policy (line 47) | def get_policy(self) -> NetworkPolicy: method patch_rules (line 53) | def patch_rules(self, rules: list[NetworkRule]) -> None: function test_sync_check_ready_timeout_message_includes_troubleshooting_hints (line 57) | def test_sync_check_ready_timeout_message_includes_troubleshooting_hints... function test_sync_get_egress_policy_uses_injected_egress_service (line 84) | def test_sync_get_egress_policy_uses_injected_egress_service() -> None: function test_sync_patch_egress_rules_uses_injected_egress_service (line 103) | def test_sync_patch_egress_rules_uses_injected_egress_service() -> None: function test_sync_create_resolves_egress_endpoint_and_builds_service (line 125) | def test_sync_create_resolves_egress_endpoint_and_builds_service( FILE: server/src/__init__.py function hello (line 15) | def hello() -> str: FILE: server/src/api/lifecycle.py function create_sandbox (line 85) | async def create_sandbox( function list_sandboxes (line 121) | async def list_sandboxes( function get_sandbox (line 185) | async def get_sandbox( function delete_sandbox (line 221) | async def delete_sandbox( function pause_sandbox (line 261) | async def pause_sandbox( function resume_sandbox (line 298) | async def resume_sandbox( function renew_sandbox_expiration (line 337) | async def renew_sandbox_expiration( function get_sandbox_endpoint (line 379) | async def get_sandbox_endpoint( function proxy_sandbox_endpoint_request (line 422) | async def proxy_sandbox_endpoint_request(request: Request, sandbox_id: s... FILE: server/src/api/schema.py class ImageAuth (line 32) | class ImageAuth(BaseModel): class ImageSpec (line 40) | class ImageSpec(BaseModel): class ResourceLimits (line 60) | class ResourceLimits(RootModel[Dict[str, str]]): class NetworkRule (line 73) | class NetworkRule(BaseModel): class Config (line 85) | class Config: class NetworkPolicy (line 89) | class NetworkPolicy(BaseModel): class Config (line 104) | class Config: class Host (line 113) | class Host(BaseModel): class PVC (line 131) | class PVC(BaseModel): class Config (line 155) | class Config: class OSSFS (line 159) | class OSSFS(BaseModel): class Config (line 204) | class Config: method validate_inline_credentials (line 208) | def validate_inline_credentials(self) -> "OSSFS": class Volume (line 217) | class Volume(BaseModel): class Config (line 262) | class Config: method validate_exactly_one_backend (line 266) | def validate_exactly_one_backend(self) -> "Volume": class SandboxStatus (line 281) | class SandboxStatus(BaseModel): class Config (line 303) | class Config: class CreateSandboxRequest (line 311) | class CreateSandboxRequest(BaseModel): class Config (line 366) | class Config: class CreateSandboxResponse (line 370) | class CreateSandboxResponse(BaseModel): class Config (line 387) | class Config: class Sandbox (line 391) | class Sandbox(BaseModel): class Config (line 409) | class Config: class SandboxFilter (line 417) | class SandboxFilter(BaseModel): class PaginationRequest (line 432) | class PaginationRequest(BaseModel): class Config (line 445) | class Config: class ListSandboxesRequest (line 449) | class ListSandboxesRequest(BaseModel): class PaginationInfo (line 460) | class PaginationInfo(BaseModel): class Config (line 470) | class Config: class ListSandboxesResponse (line 474) | class ListSandboxesResponse(BaseModel): class RenewSandboxExpirationRequest (line 486) | class RenewSandboxExpirationRequest(BaseModel): class Config (line 496) | class Config: class RenewSandboxExpirationResponse (line 500) | class RenewSandboxExpirationResponse(BaseModel): class Config (line 510) | class Config: class Endpoint (line 518) | class Endpoint(BaseModel): class ErrorResponse (line 536) | class ErrorResponse(BaseModel): FILE: server/src/cli.py function _build_parser (line 45) | def _build_parser() -> argparse.ArgumentParser: function copy_example_config (line 96) | def copy_example_config( function render_full_config (line 118) | def render_full_config(destination: str | Path | None = None, *, force: ... function main (line 196) | def main() -> None: FILE: server/src/config.py function _is_valid_ip (line 57) | def _is_valid_ip(host: str) -> bool: function _is_valid_ip_or_ip_port (line 65) | def _is_valid_ip_or_ip_port(address: str) -> bool: function _is_valid_domain (line 82) | def _is_valid_domain(host: str) -> bool: function _is_wildcard_domain (line 86) | def _is_wildcard_domain(host: str) -> bool: class GatewayRouteModeConfig (line 90) | class GatewayRouteModeConfig(BaseModel): class Config (line 102) | class Config: class GatewayConfig (line 106) | class GatewayConfig(BaseModel): class IngressConfig (line 120) | class IngressConfig(BaseModel): method validate_ingress_mode (line 133) | def validate_ingress_mode(self) -> "IngressConfig": class ServerConfig (line 164) | class ServerConfig(BaseModel): class KubernetesRuntimeConfig (line 201) | class KubernetesRuntimeConfig(BaseModel): class ExecdInitResources (line 297) | class ExecdInitResources(BaseModel): class AgentSandboxRuntimeConfig (line 310) | class AgentSandboxRuntimeConfig(BaseModel): class StorageConfig (line 327) | class StorageConfig(BaseModel): class EgressConfig (line 348) | class EgressConfig(BaseModel): class RuntimeConfig (line 365) | class RuntimeConfig(BaseModel): class SecureRuntimeConfig (line 379) | class SecureRuntimeConfig(BaseModel): method validate_secure_runtime (line 408) | def validate_secure_runtime(self) -> "SecureRuntimeConfig": class DockerConfig (line 436) | class DockerConfig(BaseModel): class AppConfig (line 493) | class AppConfig(BaseModel): method validate_runtime_blocks (line 510) | def validate_runtime_blocks(self) -> "AppConfig": function _resolve_config_path (line 540) | def _resolve_config_path(path: str | Path | None = None) -> Path: function _load_toml_data (line 550) | def _load_toml_data(path: Path) -> dict[str, Any]: function load_config (line 566) | def load_config(path: str | Path | None = None) -> AppConfig: function get_config (line 596) | def get_config() -> AppConfig: function get_config_path (line 609) | def get_config_path() -> Path: FILE: server/src/main.py function lifespan (line 82) | async def lifespan(app: FastAPI): function _normalize_error_detail (line 153) | def _normalize_error_detail(detail: Any) -> dict[str, str]: function sandbox_http_exception_handler (line 166) | async def sandbox_http_exception_handler(request: Request, exc: HTTPExce... function health_check (line 179) | async def health_check(): FILE: server/src/middleware/auth.py class AuthMiddleware (line 31) | class AuthMiddleware(BaseHTTPMiddleware): method _is_proxy_path (line 49) | def _is_proxy_path(path: str) -> bool: method __init__ (line 55) | def __init__(self, app, config: Optional[AppConfig] = None): method _load_api_keys (line 68) | def _load_api_keys(self) -> set: method dispatch (line 82) | async def dispatch(self, request: Request, call_next: Callable) -> Res... FILE: server/src/middleware/request_id.py function get_request_id (line 39) | def get_request_id() -> str | None: class RequestIdMiddleware (line 44) | class RequestIdMiddleware(BaseHTTPMiddleware): method dispatch (line 53) | async def dispatch(self, request: Request, call_next: Callable) -> Res... class RequestIdFilter (line 65) | class RequestIdFilter(logging.Filter): method filter (line 73) | def filter(self, record: logging.LogRecord) -> bool: FILE: server/src/services/constants.py class SandboxErrorCodes (line 38) | class SandboxErrorCodes: FILE: server/src/services/docker.py function _running_inside_docker_container (line 101) | def _running_inside_docker_container() -> bool: class PendingSandbox (line 119) | class PendingSandbox: class DockerSandboxService (line 126) | class DockerSandboxService(OSSFSMixin, SandboxService): method __init__ (line 133) | def __init__(self, config: Optional[AppConfig] = None): method _resolve_api_timeout (line 208) | def _resolve_api_timeout(self) -> int: method _docker_operation (line 216) | def _docker_operation(self, action: str, sandbox_id: Optional[str] = N... method _get_container_by_sandbox_id (line 241) | def _get_container_by_sandbox_id(self, sandbox_id: str): method _schedule_expiration (line 268) | def _schedule_expiration( method _remove_expiration_tracking (line 296) | def _remove_expiration_tracking(self, sandbox_id: str) -> None: method _has_manual_cleanup (line 305) | def _has_manual_cleanup(labels: Dict[str, str]) -> bool: method _get_tracked_expiration (line 309) | def _get_tracked_expiration( method _expire_sandbox (line 324) | def _expire_sandbox( method _restore_existing_sandboxes (line 399) | def _restore_existing_sandboxes(self) -> None: method _fetch_execd_archive (line 490) | def _fetch_execd_archive(self) -> bytes: method _container_to_sandbox (line 560) | def _container_to_sandbox(self, container, sandbox_id: Optional[str] =... method _ensure_directory (line 647) | def _ensure_directory(self, container, path: str, sandbox_id: Optional... method _copy_execd_to_container (line 674) | def _copy_execd_to_container(self, container, sandbox_id: str) -> None: method _install_bootstrap_script (line 691) | def _install_bootstrap_script(self, container, sandbox_id: str) -> None: method _prepare_sandbox_runtime (line 727) | def _prepare_sandbox_runtime(self, container, sandbox_id: str) -> None: method _prepare_creation_context (line 732) | def _prepare_creation_context( method _allocate_host_port (line 744) | def _allocate_host_port( method create_sandbox (line 759) | async def create_sandbox(self, request: CreateSandboxRequest) -> Creat... method _async_provision_worker (line 784) | def _async_provision_worker( method _mark_pending_failed (line 807) | def _mark_pending_failed(self, sandbox_id: str, message: str) -> None: method _cleanup_failed_containers (line 819) | def _cleanup_failed_containers(self, sandbox_id: str) -> None: method _remove_pending_sandbox (line 855) | def _remove_pending_sandbox(self, sandbox_id: str) -> None: method _get_pending_sandbox (line 862) | def _get_pending_sandbox(self, sandbox_id: str) -> Optional[PendingSan... method _iter_pending_sandboxes (line 867) | def _iter_pending_sandboxes(self) -> list[tuple[str, PendingSandbox]]: method _pending_to_sandbox (line 872) | def _pending_to_sandbox(sandbox_id: str, pending: PendingSandbox) -> S... method _update_container_labels (line 883) | def _update_container_labels(self, container, labels: Dict[str, str]) ... method _schedule_pending_cleanup (line 896) | def _schedule_pending_cleanup(self, sandbox_id: str) -> None: method _pull_image (line 909) | def _pull_image( method _ensure_image_available (line 927) | def _ensure_image_available( method _provision_sandbox (line 948) | def _provision_sandbox( method _is_user_defined_network (line 1060) | def _is_user_defined_network(self) -> bool: method _validate_network_exists (line 1067) | def _validate_network_exists(self) -> None: method _ensure_network_policy_support (line 1093) | def _ensure_network_policy_support(self, request: CreateSandboxRequest... method _validate_volumes (line 1129) | def _validate_volumes(self, request: CreateSandboxRequest) -> dict[str... method _validate_host_volume (line 1169) | def _validate_host_volume(volume, allowed_prefixes: Optional[list[str]... method _validate_pvc_volume (line 1209) | def _validate_pvc_volume(self, volume) -> dict: method _build_volume_binds (line 1369) | def _build_volume_binds( method list_sandboxes (line 1445) | def list_sandboxes(self, request: ListSandboxesRequest) -> ListSandbox... method get_sandbox (line 1511) | def get_sandbox(self, sandbox_id: str) -> Sandbox: method delete_sandbox (line 1536) | def delete_sandbox(self, sandbox_id: str) -> None: method pause_sandbox (line 1576) | def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 1609) | def resume_sandbox(self, sandbox_id: str) -> None: method renew_expiration (line 1642) | def renew_expiration( method get_endpoint (line 1694) | def get_endpoint(self, sandbox_id: str, port: int, resolve_internal: b... method _resolve_host_mapped_endpoint (line 1750) | def _resolve_host_mapped_endpoint( method _attach_egress_auth_headers (line 1789) | def _attach_egress_auth_headers( method _get_docker_host_ip (line 1802) | def _get_docker_host_ip(self) -> Optional[str]: method _resolve_public_host (line 1807) | def _resolve_public_host(self) -> str: method _resolve_proxy_host (line 1822) | def _resolve_proxy_host(self) -> str: method _resolve_internal_endpoint (line 1838) | def _resolve_internal_endpoint(self, container, port: int) -> Endpoint: method _build_labels_and_env (line 1849) | def _build_labels_and_env( method _resolve_image_auth (line 1871) | def _resolve_image_auth( method _resolve_resource_limits (line 1884) | def _resolve_resource_limits( method _base_host_config_kwargs (line 1892) | def _base_host_config_kwargs( method _allocate_distinct_host_ports (line 1926) | def _allocate_distinct_host_ports(self) -> tuple[int, int]: method _cleanup_egress_sidecar (line 1949) | def _cleanup_egress_sidecar(self, sandbox_id: str) -> None: method _start_egress_sidecar (line 1973) | def _start_egress_sidecar( method _create_and_start_container (line 2077) | def _create_and_start_container( method _parse_host_port_label (line 2158) | def _parse_host_port_label(value: Optional[str], label_name: str) -> O... method _extract_bridge_ip (line 2170) | def _extract_bridge_ip(self, container) -> str: FILE: server/src/services/endpoint_auth.py function generate_egress_token (line 26) | def generate_egress_token() -> str: function build_egress_auth_headers (line 31) | def build_egress_auth_headers(token: str) -> dict[str, str]: function merge_endpoint_headers (line 36) | def merge_endpoint_headers( FILE: server/src/services/factory.py function create_sandbox_service (line 33) | def create_sandbox_service( FILE: server/src/services/helpers.py function parse_memory_limit (line 60) | def parse_memory_limit(value: Optional[str]) -> Optional[int]: function parse_nano_cpus (line 77) | def parse_nano_cpus(value: Optional[str]) -> Optional[int]: function parse_timestamp (line 96) | def parse_timestamp(timestamp: Optional[str]) -> datetime: function normalize_external_endpoint_url (line 135) | def normalize_external_endpoint_url(endpoint: str, default_scheme: str =... function matches_filter (line 143) | def matches_filter(sandbox: Sandbox, filter_: SandboxFilter) -> bool: function format_ingress_endpoint (line 163) | def format_ingress_endpoint( FILE: server/src/services/k8s/agent_sandbox_provider.py function _to_dns1035_label (line 57) | def _to_dns1035_label(value: str, prefix: str = "sandbox") -> str: class AgentSandboxProvider (line 78) | class AgentSandboxProvider(WorkloadProvider): method __init__ (line 83) | def __init__( method _resource_name (line 111) | def _resource_name(self, sandbox_id: str) -> str: method _resource_name_candidates (line 114) | def _resource_name_candidates(self, sandbox_id: str) -> List[str]: method create_workload (line 125) | def create_workload( method _build_pod_spec (line 215) | def _build_pod_spec( method _build_execd_init_container (line 270) | def _build_execd_init_container( method _build_main_container (line 310) | def _build_main_container( method _container_to_dict (line 356) | def _container_to_dict(self, container: V1Container) -> Dict[str, Any]: method get_workload (line 387) | def get_workload(self, sandbox_id: str, namespace: str) -> Optional[Di... method delete_workload (line 404) | def delete_workload(self, sandbox_id: str, namespace: str) -> None: method list_workloads (line 419) | def list_workloads(self, namespace: str, label_selector: str) -> List[... method update_expiration (line 429) | def update_expiration(self, sandbox_id: str, namespace: str, expires_a... method get_expiration (line 450) | def get_expiration(self, workload: Dict[str, Any]) -> Optional[datetime]: method get_status (line 464) | def get_status(self, workload: Dict[str, Any]) -> Dict[str, Any]: method _pod_state_from_selector (line 515) | def _pod_state_from_selector(self, workload: Dict[str, Any]) -> Option... method get_endpoint_info (line 563) | def get_endpoint_info(self, workload: Dict[str, Any], port: int, sandb... FILE: server/src/services/k8s/agent_sandbox_template.py class AgentSandboxTemplateManager (line 24) | class AgentSandboxTemplateManager(BaseSandboxTemplateManager): method __init__ (line 29) | def __init__(self, template_file_path: Optional[str] = None): FILE: server/src/services/k8s/batchsandbox_provider.py class BatchSandboxProvider (line 57) | class BatchSandboxProvider(WorkloadProvider): method __init__ (line 65) | def __init__( method supports_image_auth (line 100) | def supports_image_auth(self) -> bool: method create_workload (line 104) | def create_workload( method _create_workload_from_pool (line 309) | def _create_workload_from_pool( method _extract_template_pod_extras (line 374) | def _extract_template_pod_extras(self) -> tuple[list[Dict[str, Any]], ... method _merge_pod_spec_extras (line 405) | def _merge_pod_spec_extras( method _build_task_template (line 455) | def _build_task_template( method _build_execd_init_container (line 498) | def _build_execd_init_container( method _build_main_container (line 556) | def _build_main_container( method _container_to_dict (line 617) | def _container_to_dict(self, container: V1Container) -> Dict[str, Any]: method get_workload (line 664) | def get_workload(self, sandbox_id: str, namespace: str) -> Optional[Di... method delete_workload (line 689) | def delete_workload(self, sandbox_id: str, namespace: str) -> None: method list_workloads (line 704) | def list_workloads(self, namespace: str, label_selector: str) -> List[... method update_expiration (line 714) | def update_expiration(self, sandbox_id: str, namespace: str, expires_a... method get_expiration (line 745) | def get_expiration(self, workload: Dict[str, Any]) -> Optional[datetime]: method _parse_pod_ip (line 767) | def _parse_pod_ip(self, workload: Dict[str, Any]) -> Optional[str]: method get_status (line 785) | def get_status(self, workload: Dict[str, Any]) -> Dict[str, Any]: method get_endpoint_info (line 833) | def get_endpoint_info(self, workload: Dict[str, Any], port: int, sandb... FILE: server/src/services/k8s/batchsandbox_template.py class BatchSandboxTemplateManager (line 24) | class BatchSandboxTemplateManager(BaseSandboxTemplateManager): method __init__ (line 29) | def __init__(self, template_file_path: Optional[str] = None): FILE: server/src/services/k8s/client.py class K8sClient (line 38) | class K8sClient: method __init__ (line 46) | def __init__(self, k8s_config: KubernetesRuntimeConfig): method _load_config (line 71) | def _load_config(self) -> None: method get_core_v1_api (line 81) | def get_core_v1_api(self) -> CoreV1Api: method get_custom_objects_api (line 86) | def get_custom_objects_api(self) -> CustomObjectsApi: method get_node_v1_api (line 91) | def get_node_v1_api(self) -> NodeV1Api: method _get_informer (line 100) | def _get_informer(self, group: str, version: str, plural: str, namespa... method create_custom_object (line 135) | def create_custom_object( method get_custom_object (line 154) | def get_custom_object( method list_custom_objects (line 191) | def list_custom_objects( method delete_custom_object (line 216) | def delete_custom_object( method patch_custom_object (line 237) | def patch_custom_object( method create_secret (line 262) | def create_secret(self, namespace: str, body: Any) -> Any: method list_pods (line 275) | def list_pods( method read_runtime_class (line 293) | def read_runtime_class(self, name: str) -> Any: FILE: server/src/services/k8s/egress_helper.py function prep_execd_init_for_egress (line 34) | def prep_execd_init_for_egress(exec_install_script: str) -> tuple[str, D... function build_security_context_for_sandbox_container (line 53) | def build_security_context_for_sandbox_container( function apply_egress_to_spec (line 72) | def apply_egress_to_spec( FILE: server/src/services/k8s/image_pull_secret_helper.py function build_image_pull_secret_name (line 29) | def build_image_pull_secret_name(sandbox_id: str) -> str: function build_image_pull_secret (line 34) | def build_image_pull_secret( FILE: server/src/services/k8s/informer.py class WorkloadInformer (line 27) | class WorkloadInformer: method __init__ (line 30) | def __init__( method has_synced (line 63) | def has_synced(self) -> bool: method start (line 67) | def start(self) -> None: method stop (line 79) | def stop(self) -> None: method get (line 83) | def get(self, name: str) -> Optional[Dict[str, Any]]: method update_cache (line 88) | def update_cache(self, obj: Dict[str, Any]) -> None: method _advance_resource_version (line 103) | def _advance_resource_version(self, rv: Optional[str]) -> None: method _run (line 124) | def _run(self) -> None: method _full_resync (line 155) | def _full_resync(self) -> None: method _run_watch_loop (line 176) | def _run_watch_loop(self) -> None: method _handle_event (line 191) | def _handle_event(self, event: Dict[str, Any]) -> None: FILE: server/src/services/k8s/kubernetes_service.py class KubernetesSandboxService (line 69) | class KubernetesSandboxService(SandboxService): method __init__ (line 76) | def __init__(self, config: Optional[AppConfig] = None): method _wait_for_sandbox_ready (line 142) | async def _wait_for_sandbox_ready( method _ensure_network_policy_support (line 224) | def _ensure_network_policy_support(self, request: CreateSandboxRequest... method _ensure_image_auth_support (line 233) | def _ensure_image_auth_support(self, request: CreateSandboxRequest) ->... method create_sandbox (line 254) | async def create_sandbox(self, request: CreateSandboxRequest) -> Creat... method get_sandbox (line 409) | def get_sandbox(self, sandbox_id: str) -> Sandbox: method list_sandboxes (line 451) | def list_sandboxes(self, request: ListSandboxesRequest) -> ListSandbox... method delete_sandbox (line 515) | def delete_sandbox(self, sandbox_id: str) -> None: method pause_sandbox (line 552) | def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 570) | def resume_sandbox(self, sandbox_id: str) -> None: method renew_expiration (line 588) | def renew_expiration( method get_endpoint (line 664) | def get_endpoint( method _attach_egress_auth_headers (line 725) | def _attach_egress_auth_headers(self, endpoint: Endpoint, workload: An... method _get_egress_auth_token (line 735) | def _get_egress_auth_token(self, workload: Any) -> Optional[str]: method _build_sandbox_from_workload (line 747) | def _build_sandbox_from_workload(self, workload: Any) -> Sandbox: method _apply_filters (line 820) | def _apply_filters(self, sandboxes: list[Sandbox], filter_spec: Any) -... FILE: server/src/services/k8s/provider_factory.py function create_workload_provider (line 43) | def create_workload_provider( function register_provider (line 94) | def register_provider(name: str, provider_class: Type[WorkloadProvider])... function list_available_providers (line 125) | def list_available_providers() -> list[str]: FILE: server/src/services/k8s/rate_limiter.py class TokenBucketRateLimiter (line 29) | class TokenBucketRateLimiter: method __init__ (line 42) | def __init__(self, qps: float, burst: float = 0.0) -> None: method acquire (line 55) | def acquire(self) -> None: method try_acquire (line 65) | def try_acquire(self) -> bool: method _try_acquire (line 77) | def _try_acquire(self) -> float: method _refill (line 92) | def _refill(self) -> None: FILE: server/src/services/k8s/security_context.py function build_security_context_from_dict (line 20) | def build_security_context_from_dict( function serialize_security_context_to_dict (line 54) | def serialize_security_context_to_dict( FILE: server/src/services/k8s/template_manager.py class BaseSandboxTemplateManager (line 28) | class BaseSandboxTemplateManager: method __init__ (line 33) | def __init__(self, template_file_path: Optional[str], template_kind: s... method _load_template (line 41) | def _load_template(self) -> None: method get_base_template (line 70) | def get_base_template(self) -> Dict[str, Any]: method merge_with_runtime_values (line 75) | def merge_with_runtime_values(self, runtime_manifest: Dict[str, Any]) ... method _deep_copy (line 84) | def _deep_copy(obj: Any) -> Any: method _deep_merge (line 92) | def _deep_merge(base: Dict[str, Any], override: Dict[str, Any]) -> Dic... FILE: server/src/services/k8s/volume_helper.py function apply_volumes_to_pod_spec (line 27) | def apply_volumes_to_pod_spec( FILE: server/src/services/k8s/workload_provider.py class WorkloadProvider (line 27) | class WorkloadProvider(ABC): method create_workload (line 36) | def create_workload( method get_workload (line 85) | def get_workload(self, sandbox_id: str, namespace: str) -> Optional[Any]: method delete_workload (line 99) | def delete_workload(self, sandbox_id: str, namespace: str) -> None: method list_workloads (line 113) | def list_workloads(self, namespace: str, label_selector: str) -> List[... method update_expiration (line 127) | def update_expiration(self, sandbox_id: str, namespace: str, expires_a... method get_expiration (line 142) | def get_expiration(self, workload: Any) -> Optional[datetime]: method get_status (line 155) | def get_status(self, workload: Any) -> Dict[str, Any]: method get_endpoint_info (line 168) | def get_endpoint_info(self, workload: Any, port: int, sandbox_id: str)... method supports_image_auth (line 182) | def supports_image_auth(self) -> bool: method legacy_resource_name (line 191) | def legacy_resource_name(self, sandbox_id: str) -> str: FILE: server/src/services/ossfs_mixin.py class OSSFSMixin (line 36) | class OSSFSMixin: method _validate_bucket_name (line 38) | def _validate_bucket_name(bucket: str) -> None: method _validate_ossfs_option (line 70) | def _validate_ossfs_option(option: str) -> None: method _validate_mount_path (line 92) | def _validate_mount_path(path: str) -> None: method _validate_endpoint_url (line 133) | def _validate_endpoint_url(endpoint_url: str) -> None: method _normalize_ossfs_option (line 164) | def _normalize_ossfs_option(raw_option: str) -> str: method _resolve_ossfs_paths (line 170) | def _resolve_ossfs_paths(self, volume) -> tuple[str, str]: method _build_ossfs_v1_command (line 209) | def _build_ossfs_v1_command( method _build_ossfs_v2_config_lines (line 240) | def _build_ossfs_v2_config_lines( method _build_ossfs_v2_mount_command (line 268) | def _build_ossfs_v2_mount_command(self, backend_path: str, conf_file: ... method _run_ossfs_mount_command (line 274) | def _run_ossfs_mount_command(cmd: list[str], volume_name: str) -> None: method _mount_ossfs_backend_path (line 294) | def _mount_ossfs_backend_path(self, volume, backend_path: str) -> None: method _ensure_ossfs_mounted (line 384) | def _ensure_ossfs_mounted(self, volume_or_mount_key) -> str: method _release_ossfs_mount (line 418) | def _release_ossfs_mount(self, mount_key: str) -> None: method _release_ossfs_mounts (line 462) | def _release_ossfs_mounts(self, mount_keys: list[str]) -> None: method _prepare_ossfs_mounts (line 469) | def _prepare_ossfs_mounts(self, volumes: Optional[list]) -> list[str]: method _validate_ossfs_volume (line 489) | def _validate_ossfs_volume(self, volume) -> None: FILE: server/src/services/runtime_resolver.py class SecureRuntimeResolver (line 40) | class SecureRuntimeResolver: method __init__ (line 62) | def __init__(self, config: AppConfig): method is_enabled (line 74) | def is_enabled(self) -> bool: method get_docker_runtime (line 81) | def get_docker_runtime(self) -> Optional[str]: method get_k8s_runtime_class (line 105) | def get_k8s_runtime_class(self) -> Optional[str]: function validate_secure_runtime_on_startup (line 130) | async def validate_secure_runtime_on_startup( function _validate_docker_runtime (line 169) | async def _validate_docker_runtime( function _validate_k8s_runtime_class (line 214) | async def _validate_k8s_runtime_class( FILE: server/src/services/sandbox_service.py class SandboxService (line 39) | class SandboxService(ABC): method generate_sandbox_id (line 48) | def generate_sandbox_id() -> str: method _resolve_bind_ip (line 58) | def _resolve_bind_ip(family: int = socket.AF_INET) -> str: method validate_port (line 91) | def validate_port(port: int) -> None: method create_sandbox (line 104) | async def create_sandbox(self, request: CreateSandboxRequest) -> Creat... method list_sandboxes (line 120) | def list_sandboxes(self, request: ListSandboxesRequest) -> ListSandbox... method get_sandbox (line 133) | def get_sandbox(self, sandbox_id: str) -> Sandbox: method delete_sandbox (line 149) | def delete_sandbox(self, sandbox_id: str) -> None: method pause_sandbox (line 162) | def pause_sandbox(self, sandbox_id: str) -> None: method resume_sandbox (line 175) | def resume_sandbox(self, sandbox_id: str) -> None: method renew_expiration (line 188) | def renew_expiration( method get_endpoint (line 209) | def get_endpoint(self, sandbox_id: str, port: int, resolve_internal: b... FILE: server/src/services/validators.py function ensure_entrypoint (line 38) | def ensure_entrypoint(entrypoint: Sequence[str]) -> None: function _is_valid_label_key (line 61) | def _is_valid_label_key(key: str) -> bool: function _is_valid_label_value (line 81) | def _is_valid_label_value(value: str) -> bool: function ensure_metadata_labels (line 87) | def ensure_metadata_labels(metadata: Optional[Dict[str, str]]) -> None: function ensure_future_expiration (line 134) | def ensure_future_expiration(expires_at: datetime) -> datetime: function ensure_valid_port (line 164) | def ensure_valid_port(port: int) -> None: function ensure_timeout_within_limit (line 181) | def ensure_timeout_within_limit(timeout_seconds: Optional[int], max_time... function calculate_expiration_or_raise (line 213) | def calculate_expiration_or_raise(created_at: datetime, timeout_seconds:... function ensure_valid_volume_name (line 240) | def ensure_valid_volume_name(name: str) -> None: function ensure_valid_mount_path (line 276) | def ensure_valid_mount_path(mount_path: str) -> None: function ensure_valid_sub_path (line 304) | def ensure_valid_sub_path(sub_path: Optional[str]) -> None: function ensure_valid_host_path (line 345) | def ensure_valid_host_path( function ensure_valid_pvc_name (line 421) | def ensure_valid_pvc_name(claim_name: str) -> None: function ensure_valid_ossfs_volume (line 457) | def ensure_valid_ossfs_volume(ossfs: "OSSFS") -> None: function ensure_egress_configured (line 521) | def ensure_egress_configured( function ensure_volumes_valid (line 551) | def ensure_volumes_valid( FILE: server/tests/conftest.py function test_api_key (line 42) | def test_api_key() -> str: function client (line 50) | def client() -> TestClient: function auth_headers (line 58) | def auth_headers(test_api_key: str) -> dict: function sample_sandbox_request (line 66) | def sample_sandbox_request() -> dict: FILE: server/tests/k8s/conftest.py function stub_workload_informer (line 25) | def stub_workload_informer(monkeypatch): FILE: server/tests/k8s/fixtures/k8s_fixtures.py function mock_k8s_client (line 31) | def mock_k8s_client(): function k8s_runtime_config (line 52) | def k8s_runtime_config(): function agent_sandbox_runtime_config (line 63) | def agent_sandbox_runtime_config(): function k8s_runtime_config_with_template (line 74) | def k8s_runtime_config_with_template(tmp_path): function valid_batchsandbox_template (line 99) | def valid_batchsandbox_template() -> Dict[str, Any]: function sample_create_request (line 132) | def sample_create_request(): function mock_batchsandbox_response (line 145) | def mock_batchsandbox_response(): function mock_batchsandbox_list_response (line 190) | def mock_batchsandbox_list_response(mock_batchsandbox_response): function fixed_datetime (line 200) | def fixed_datetime(): function k8s_app_config (line 206) | def k8s_app_config(k8s_runtime_config): function agent_sandbox_app_config (line 226) | def agent_sandbox_app_config(agent_sandbox_runtime_config): function app_config_no_k8s (line 251) | def app_config_no_k8s(): function app_config_docker (line 271) | def app_config_docker(): function k8s_service (line 291) | def k8s_service(k8s_app_config): function create_sandbox_request (line 317) | def create_sandbox_request(): function mock_workload (line 332) | def mock_workload(): function isolated_registry (line 357) | def isolated_registry(): FILE: server/tests/k8s/test_agent_sandbox_provider.py function _app_config (line 41) | def _app_config(shutdown_policy: str = "Delete", service_account: str | ... class TestAgentSandboxProvider (line 55) | class TestAgentSandboxProvider: method test_init_sets_crd_constants_correctly (line 58) | def test_init_sets_crd_constants_correctly(self, mock_k8s_client): method test_create_workload_builds_correct_manifest_init_mode (line 68) | def test_create_workload_builds_correct_manifest_init_mode(self, mock_... method test_create_workload_sanitizes_resource_name (line 109) | def test_create_workload_sanitizes_resource_name(self, mock_k8s_client): method test_resource_name_uses_hash_when_id_has_no_alnum (line 136) | def test_resource_name_uses_hash_when_id_has_no_alnum(self, mock_k8s_c... method test_get_workload_returns_none_on_404 (line 149) | def test_get_workload_returns_none_on_404(self, mock_k8s_client): method test_get_workload_prefers_sanitized_name (line 160) | def test_get_workload_prefers_sanitized_name(self, mock_k8s_client): method test_get_workload_falls_back_to_legacy_name (line 176) | def test_get_workload_falls_back_to_legacy_name(self, mock_k8s_client): method test_get_workload_reraises_non_404_exceptions (line 192) | def test_get_workload_reraises_non_404_exceptions(self, mock_k8s_client): method test_get_workload_prefers_informer_cache (line 204) | def test_get_workload_prefers_informer_cache(self, mock_k8s_client): method test_create_workload_updates_informer_cache (line 218) | def test_create_workload_updates_informer_cache(self, mock_k8s_client): method test_update_expiration_patches_spec (line 243) | def test_update_expiration_patches_spec(self, mock_k8s_client): method test_get_expiration_parses_z_suffix (line 258) | def test_get_expiration_parses_z_suffix(self): method test_get_status_ready_condition_true (line 269) | def test_get_status_ready_condition_true(self): method test_get_status_expired_condition (line 295) | def test_get_status_expired_condition(self): method test_get_status_falls_back_to_pod_state (line 320) | def test_get_status_falls_back_to_pod_state(self, mock_k8s_client): method test_get_status_falls_back_to_allocated_when_ip_assigned_not_running (line 340) | def test_get_status_falls_back_to_allocated_when_ip_assigned_not_runni... method test_get_endpoint_info_prefers_running_pod (line 360) | def test_get_endpoint_info_prefers_running_pod(self, mock_k8s_client): method test_get_endpoint_info_falls_back_to_service_fqdn (line 380) | def test_get_endpoint_info_falls_back_to_service_fqdn(self, mock_k8s_c... class TestAgentSandboxProviderExecdInit (line 397) | class TestAgentSandboxProviderExecdInit: method test_init_container_has_no_resources_when_not_configured (line 400) | def test_init_container_has_no_resources_when_not_configured(self, moc... method test_init_container_has_resources_when_configured (line 426) | def test_init_container_has_resources_when_configured(self, mock_k8s_c... class TestAgentSandboxProviderEgress (line 459) | class TestAgentSandboxProviderEgress: method test_create_workload_without_network_policy_no_sidecar (line 462) | def test_create_workload_without_network_policy_no_sidecar(self, mock_... method test_create_workload_with_network_policy_adds_sidecar (line 497) | def test_create_workload_with_network_policy_adds_sidecar(self, mock_k... method test_create_workload_with_network_policy_persists_annotation_and_sidecar_token (line 556) | def test_create_workload_with_network_policy_persists_annotation_and_s... method test_create_workload_with_egress_mode_dns_nft (line 588) | def test_create_workload_with_egress_mode_dns_nft(self, mock_k8s_client): method test_create_workload_with_network_policy_does_not_add_pod_ipv6_sysctls (line 616) | def test_create_workload_with_network_policy_does_not_add_pod_ipv6_sys... method test_create_workload_with_network_policy_drops_net_admin_from_main_container (line 653) | def test_create_workload_with_network_policy_drops_net_admin_from_main... method test_create_workload_without_egress_image_no_sidecar (line 696) | def test_create_workload_without_egress_image_no_sidecar(self, mock_k8... method test_egress_sidecar_contains_network_policy_in_env (line 733) | def test_egress_sidecar_contains_network_policy_in_env(self, mock_k8s_... method test_main_container_no_security_context_without_network_policy (line 783) | def test_main_container_no_security_context_without_network_policy(sel... FILE: server/tests/k8s/test_agent_sandbox_template.py class TestAgentSandboxTemplateManager (line 25) | class TestAgentSandboxTemplateManager: method test_load_valid_yaml_template_successfully (line 28) | def test_load_valid_yaml_template_successfully(self, tmp_path): method test_load_nonexistent_file_raises_error (line 44) | def test_load_nonexistent_file_raises_error(self): method test_load_invalid_yaml_raises_error (line 53) | def test_load_invalid_yaml_raises_error(self, tmp_path): method test_load_non_dict_yaml_raises_error (line 65) | def test_load_non_dict_yaml_raises_error(self, tmp_path): method test_init_without_template_file_creates_empty_manager (line 78) | def test_init_without_template_file_creates_empty_manager(self): method test_deep_merge_runtime_overrides_template (line 87) | def test_deep_merge_runtime_overrides_template(self): method test_deep_merge_preserves_template_only_fields (line 98) | def test_deep_merge_preserves_template_only_fields(self): method test_deep_merge_nested_dicts_recursively (line 120) | def test_deep_merge_nested_dicts_recursively(self): method test_deep_merge_replaces_lists_not_merges (line 132) | def test_deep_merge_replaces_lists_not_merges(self): method test_deep_merge_none_values_do_not_override (line 143) | def test_deep_merge_none_values_do_not_override(self): method test_deep_copy_creates_independent_copies (line 154) | def test_deep_copy_creates_independent_copies(self): method test_get_base_template_returns_copy (line 170) | def test_get_base_template_returns_copy(self, tmp_path): method test_get_base_template_returns_empty_dict_when_no_template (line 186) | def test_get_base_template_returns_empty_dict_when_no_template(self): FILE: server/tests/k8s/test_batchsandbox_provider.py function _app_config_with_template (line 40) | def _app_config_with_template(template_file_path: str) -> AppConfig: function _app_config_with_execd_resources (line 51) | def _app_config_with_execd_resources(execd_init_resources: ExecdInitReso... class TestBatchSandboxProvider (line 62) | class TestBatchSandboxProvider: method test_init_without_template_creates_provider (line 67) | def test_init_without_template_creates_provider(self, mock_k8s_client): method test_init_with_template_loads_template (line 79) | def test_init_with_template_loads_template(self, mock_k8s_client, tmp_... method test_init_sets_crd_constants_correctly (line 90) | def test_init_sets_crd_constants_correctly(self, mock_k8s_client): method test_create_workload_builds_correct_manifest (line 102) | def test_create_workload_builds_correct_manifest(self, mock_k8s_client): method test_create_workload_builds_execd_init_container (line 142) | def test_create_workload_builds_execd_init_container(self, mock_k8s_cl... method test_create_workload_init_container_with_configured_resources (line 174) | def test_create_workload_init_container_with_configured_resources(self... method test_create_workload_wraps_entrypoint_with_bootstrap (line 206) | def test_create_workload_wraps_entrypoint_with_bootstrap(self, mock_k8... method test_create_workload_converts_env_to_list (line 236) | def test_create_workload_converts_env_to_list(self, mock_k8s_client): method test_create_workload_merges_template_volumes_and_mounts (line 269) | def test_create_workload_merges_template_volumes_and_mounts(self, mock... method test_create_workload_dedupes_template_volume_and_mount_names (line 323) | def test_create_workload_dedupes_template_volume_and_mount_names(self,... method test_create_workload_sets_resource_limits_and_requests (line 375) | def test_create_workload_sets_resource_limits_and_requests(self, mock_... method test_create_workload_handles_empty_resource_limits (line 402) | def test_create_workload_handles_empty_resource_limits(self, mock_k8s_... method test_get_workload_finds_existing_sandbox (line 430) | def test_get_workload_finds_existing_sandbox( method test_get_workload_returns_none_when_not_found (line 444) | def test_get_workload_returns_none_when_not_found(self, mock_k8s_client): method test_get_workload_falls_back_to_legacy_name (line 455) | def test_get_workload_falls_back_to_legacy_name(self, mock_k8s_client): method test_get_workload_handles_404_gracefully (line 471) | def test_get_workload_handles_404_gracefully(self, mock_k8s_client): method test_get_workload_reraises_non_404_exceptions (line 483) | def test_get_workload_reraises_non_404_exceptions(self, mock_k8s_client): method test_get_workload_prefers_informer_cache (line 498) | def test_get_workload_prefers_informer_cache(self, mock_k8s_client): method test_get_workload_logs_unexpected_errors (line 512) | def test_get_workload_logs_unexpected_errors(self, mock_k8s_client): method test_create_workload_updates_informer_cache (line 522) | def test_create_workload_updates_informer_cache(self, mock_k8s_client): method test_list_workloads_returns_items (line 549) | def test_list_workloads_returns_items( method test_list_workloads_returns_empty_on_404 (line 563) | def test_list_workloads_returns_empty_on_404(self, mock_k8s_client): method test_delete_workload_deletes_existing_sandbox (line 576) | def test_delete_workload_deletes_existing_sandbox( method test_delete_workload_raises_when_not_found (line 596) | def test_delete_workload_raises_when_not_found(self, mock_k8s_client): method test_delete_workload_sets_grace_period_zero (line 608) | def test_delete_workload_sets_grace_period_zero( method test_update_expiration_patches_spec (line 624) | def test_update_expiration_patches_spec( method test_get_expiration_parses_iso_format (line 641) | def test_get_expiration_parses_iso_format(self): method test_get_expiration_handles_z_suffix (line 654) | def test_get_expiration_handles_z_suffix(self): method test_get_expiration_returns_none_on_invalid_format (line 667) | def test_get_expiration_returns_none_on_invalid_format(self): method test_get_expiration_returns_none_when_missing (line 681) | def test_get_expiration_returns_none_when_missing(self): method test_get_status_running_with_ip (line 694) | def test_get_status_running_with_ip(self): method test_get_status_allocated_with_ip_not_ready (line 715) | def test_get_status_allocated_with_ip_not_ready(self): method test_get_status_pending_scheduled (line 735) | def test_get_status_pending_scheduled(self): method test_get_status_pending_when_endpoints_invalid_json (line 750) | def test_get_status_pending_when_endpoints_invalid_json(self): method test_get_status_pending_when_endpoints_empty_array (line 770) | def test_get_status_pending_when_endpoints_empty_array(self): method test_get_status_pending_unallocated (line 790) | def test_get_status_pending_unallocated(self): method test_get_endpoint_info_parses_json_annotation (line 807) | def test_get_endpoint_info_parses_json_annotation(self): method test_get_endpoint_info_uses_first_ip (line 825) | def test_get_endpoint_info_uses_first_ip(self): method test_get_endpoint_info_returns_none_when_missing (line 843) | def test_get_endpoint_info_returns_none_when_missing(self): method test_get_endpoint_info_returns_none_on_invalid_json (line 854) | def test_get_endpoint_info_returns_none_on_invalid_json(self): method test_get_endpoint_info_returns_none_on_empty_array (line 871) | def test_get_endpoint_info_returns_none_on_empty_array(self): method test_create_workload_poolref_ignores_image_spec (line 890) | def test_create_workload_poolref_ignores_image_spec(self, mock_k8s_cli... method test_create_workload_poolref_ignores_resource_limits (line 922) | def test_create_workload_poolref_ignores_resource_limits(self, mock_k8... method test_create_workload_poolref_allows_entrypoint_and_env (line 954) | def test_create_workload_poolref_allows_entrypoint_and_env(self, mock_... method test_build_task_template_with_env (line 998) | def test_build_task_template_with_env(self, mock_k8s_client): method test_build_task_template_without_env (line 1038) | def test_build_task_template_without_env(self, mock_k8s_client): method test_build_task_template_uses_default_env_path (line 1068) | def test_build_task_template_uses_default_env_path(self, mock_k8s_clie... method test_build_task_template_escapes_special_characters (line 1090) | def test_build_task_template_escapes_special_characters(self, mock_k8s... method test_create_workload_poolref_builds_correct_manifest (line 1117) | def test_create_workload_poolref_builds_correct_manifest(self, mock_k8... class TestBatchSandboxProviderEgress (line 1164) | class TestBatchSandboxProviderEgress: method test_create_workload_without_network_policy_no_sidecar (line 1167) | def test_create_workload_without_network_policy_no_sidecar(self, mock_... method test_create_workload_with_network_policy_adds_sidecar (line 1202) | def test_create_workload_with_network_policy_adds_sidecar(self, mock_k... method test_create_workload_with_network_policy_persists_annotation_and_sidecar_token (line 1261) | def test_create_workload_with_network_policy_persists_annotation_and_s... method test_create_workload_with_egress_mode_dns_nft (line 1293) | def test_create_workload_with_egress_mode_dns_nft(self, mock_k8s_client): method test_create_workload_with_network_policy_does_not_add_pod_ipv6_sysctls (line 1321) | def test_create_workload_with_network_policy_does_not_add_pod_ipv6_sys... method test_create_workload_with_network_policy_drops_net_admin_from_main_container (line 1359) | def test_create_workload_with_network_policy_drops_net_admin_from_main... method test_create_workload_without_egress_image_no_sidecar (line 1402) | def test_create_workload_without_egress_image_no_sidecar(self, mock_k8... method test_egress_sidecar_contains_network_policy_in_env (line 1439) | def test_egress_sidecar_contains_network_policy_in_env(self, mock_k8s_... method test_main_container_no_security_context_without_network_policy (line 1489) | def test_main_container_no_security_context_without_network_policy(sel... method test_create_workload_with_network_policy_works_with_template (line 1522) | def test_create_workload_with_network_policy_works_with_template(self,... method test_supports_image_auth_returns_true (line 1583) | def test_supports_image_auth_returns_true(self, mock_k8s_client): method test_create_workload_with_image_auth_injects_image_pull_secrets (line 1590) | def test_create_workload_with_image_auth_injects_image_pull_secrets(se... method test_create_workload_with_image_auth_creates_secret (line 1618) | def test_create_workload_with_image_auth_creates_secret(self, mock_k8s... method test_create_workload_without_image_auth_skips_secret (line 1652) | def test_create_workload_without_image_auth_skips_secret(self, mock_k8... method test_create_workload_with_image_auth_secret_failure_rolls_back_batchsandbox (line 1677) | def test_create_workload_with_image_auth_secret_failure_rolls_back_bat... method test_create_workload_with_pvc_volume (line 1714) | def test_create_workload_with_pvc_volume(self, mock_k8s_client): method test_create_workload_with_pvc_volume_readonly (line 1774) | def test_create_workload_with_pvc_volume_readonly(self, mock_k8s_client): method test_create_workload_with_pvc_volume_subpath (line 1816) | def test_create_workload_with_pvc_volume_subpath(self, mock_k8s_client): method test_create_workload_with_host_volume (line 1859) | def test_create_workload_with_host_volume(self, mock_k8s_client): method test_create_workload_with_multiple_volumes (line 1910) | def test_create_workload_with_multiple_volumes(self, mock_k8s_client): method test_create_workload_pool_mode_rejects_volumes (line 1963) | def test_create_workload_pool_mode_rejects_volumes(self, mock_k8s_clie... method test_apply_volumes_to_pod_spec_empty_volumes (line 1994) | def test_apply_volumes_to_pod_spec_empty_volumes(self, mock_k8s_client): method test_apply_volumes_to_pod_spec_no_containers (line 2009) | def test_apply_volumes_to_pod_spec_no_containers(self, mock_k8s_client): method test_apply_volumes_to_pod_spec_duplicate_internal_volume (line 2024) | def test_apply_volumes_to_pod_spec_duplicate_internal_volume(self, moc... method test_apply_volumes_to_pod_spec_same_pvc_multiple_mounts (line 2042) | def test_apply_volumes_to_pod_spec_same_pvc_multiple_mounts(self, mock... FILE: server/tests/k8s/test_batchsandbox_template.py class TestBatchSandboxTemplateManager (line 25) | class TestBatchSandboxTemplateManager: method test_load_valid_yaml_template_successfully (line 28) | def test_load_valid_yaml_template_successfully(self, tmp_path): method test_load_nonexistent_file_raises_error (line 45) | def test_load_nonexistent_file_raises_error(self): method test_load_invalid_yaml_raises_error (line 55) | def test_load_invalid_yaml_raises_error(self, tmp_path): method test_load_non_dict_yaml_raises_error (line 69) | def test_load_non_dict_yaml_raises_error(self, tmp_path): method test_init_without_template_file_creates_empty_manager (line 84) | def test_init_without_template_file_creates_empty_manager(self): method test_deep_merge_runtime_overrides_template (line 93) | def test_deep_merge_runtime_overrides_template(self): method test_deep_merge_preserves_template_only_fields (line 104) | def test_deep_merge_preserves_template_only_fields(self): method test_deep_merge_nested_dicts_recursively (line 126) | def test_deep_merge_nested_dicts_recursively(self): method test_deep_merge_replaces_lists_not_merges (line 138) | def test_deep_merge_replaces_lists_not_merges(self): method test_deep_merge_none_values_do_not_override (line 149) | def test_deep_merge_none_values_do_not_override(self): method test_deep_copy_creates_independent_copies (line 160) | def test_deep_copy_creates_independent_copies(self): method test_get_base_template_returns_copy (line 178) | def test_get_base_template_returns_copy(self, tmp_path): method test_get_base_template_returns_empty_dict_when_no_template (line 195) | def test_get_base_template_returns_empty_dict_when_no_template(self): method test_merge_with_runtime_values_without_template (line 205) | def test_merge_with_runtime_values_without_template(self): method test_merge_with_runtime_values_with_template (line 216) | def test_merge_with_runtime_values_with_template(self, tmp_path): FILE: server/tests/k8s/test_egress_helper.py function _egress_container (line 32) | def _egress_container( class TestEgressSidecarViaApply (line 51) | class TestEgressSidecarViaApply: method test_builds_container_with_basic_config (line 54) | def test_builds_container_with_basic_config(self): method test_contains_egress_rules_environment_variable (line 71) | def test_contains_egress_rules_environment_variable(self): method test_contains_egress_token_when_provided (line 88) | def test_contains_egress_token_when_provided(self): method test_egress_mode_dns_nft (line 105) | def test_egress_mode_dns_nft(self): method test_serializes_network_policy_correctly (line 121) | def test_serializes_network_policy_correctly(self): method test_handles_empty_egress_rules (line 146) | def test_handles_empty_egress_rules(self): method test_handles_missing_default_action (line 162) | def test_handles_missing_default_action(self): method test_security_context_adds_net_admin_not_privileged (line 177) | def test_security_context_adds_net_admin_not_privileged(self): method test_no_command_uses_image_entrypoint (line 191) | def test_no_command_uses_image_entrypoint(self): method test_container_spec_is_valid_kubernetes_format (line 198) | def test_container_spec_is_valid_kubernetes_format(self): method test_handles_wildcard_domains (line 219) | def test_handles_wildcard_domains(self): class TestBuildSecurityContextForMainContainer (line 240) | class TestBuildSecurityContextForMainContainer: method test_returns_empty_dict_when_no_network_policy (line 243) | def test_returns_empty_dict_when_no_network_policy(self): method test_drops_net_admin_when_network_policy_enabled (line 248) | def test_drops_net_admin_when_network_policy_enabled(self): class TestApplyEgressToSpec (line 257) | class TestApplyEgressToSpec: method test_adds_egress_sidecar_container (line 260) | def test_adds_egress_sidecar_container(self): method test_does_not_touch_unrelated_pod_state (line 279) | def test_does_not_touch_unrelated_pod_state(self): method test_preserves_existing_pod_sysctls_when_not_passed_in (line 296) | def test_preserves_existing_pod_sysctls_when_not_passed_in(self): method test_no_op_when_no_network_policy (line 326) | def test_no_op_when_no_network_policy(self): method test_no_op_when_no_egress_image (line 338) | def test_no_op_when_no_egress_image(self): class TestPrepExecdInitForEgress (line 355) | class TestPrepExecdInitForEgress: method test_returns_privileged_security_dict_and_prefixed_script (line 356) | def test_returns_privileged_security_dict_and_prefixed_script(self): FILE: server/tests/k8s/test_image_pull_secret_helper.py class TestBuildImagePullSecretName (line 30) | class TestBuildImagePullSecretName: method test_returns_deterministic_name (line 32) | def test_returns_deterministic_name(self): method test_different_ids_produce_different_names (line 35) | def test_different_ids_produce_different_names(self): class TestBuildImagePullSecret (line 39) | class TestBuildImagePullSecret: method _auth (line 41) | def _auth(self, username="user", password="pass") -> ImageAuth: method _decode_docker_config (line 44) | def _decode_docker_config(self, secret) -> dict: method test_secret_metadata (line 48) | def test_secret_metadata(self): method test_owner_reference (line 62) | def test_owner_reference(self): method test_private_registry_extracted_from_image_uri (line 80) | def test_private_registry_extracted_from_image_uri(self): method test_docker_hub_image_uses_default_registry (line 92) | def test_docker_hub_image_uses_default_registry(self): method test_auth_credentials_encoded_correctly (line 104) | def test_auth_credentials_encoded_correctly(self): method test_image_with_port_uses_host_port_as_registry (line 120) | def test_image_with_port_uses_host_port_as_registry(self): FILE: server/tests/k8s/test_informer.py function _make_informer (line 23) | def _make_informer(**kwargs) -> WorkloadInformer: function _list_response (line 29) | def _list_response(*names: str) -> dict: class TestWorkloadInformerInit (line 37) | class TestWorkloadInformerInit: method test_has_synced_is_false_before_start (line 40) | def test_has_synced_is_false_before_start(self): method test_get_returns_none_before_sync (line 45) | def test_get_returns_none_before_sync(self): method test_resync_and_watch_params_stored (line 50) | def test_resync_and_watch_params_stored(self): method test_custom_thread_name_is_stored (line 56) | def test_custom_thread_name_is_stored(self): method test_default_thread_name (line 61) | def test_default_thread_name(self): class TestWorkloadInformerFullResync (line 67) | class TestWorkloadInformerFullResync: method test_full_resync_populates_cache (line 70) | def test_full_resync_populates_cache(self): method test_full_resync_sets_has_synced (line 80) | def test_full_resync_sets_has_synced(self): method test_full_resync_stores_resource_version (line 87) | def test_full_resync_stores_resource_version(self): method test_full_resync_replaces_stale_cache (line 94) | def test_full_resync_replaces_stale_cache(self): class TestWorkloadInformerUpdateCache (line 107) | class TestWorkloadInformerUpdateCache: method test_update_cache_adds_new_object (line 110) | def test_update_cache_adds_new_object(self): method test_update_cache_overwrites_existing_object (line 117) | def test_update_cache_overwrites_existing_object(self): method test_update_cache_ignores_object_without_name (line 125) | def test_update_cache_ignores_object_without_name(self): method test_update_cache_updates_resource_version (line 132) | def test_update_cache_updates_resource_version(self): method test_update_cache_does_not_downgrade_resource_version (line 138) | def test_update_cache_does_not_downgrade_resource_version(self): method test_update_cache_advances_resource_version_when_newer (line 145) | def test_update_cache_advances_resource_version_when_newer(self): class TestWorkloadInformerHandleEvent (line 153) | class TestWorkloadInformerHandleEvent: method test_handle_added_event_inserts_object (line 156) | def test_handle_added_event_inserts_object(self): method test_handle_modified_event_replaces_object (line 163) | def test_handle_modified_event_replaces_object(self): method test_handle_deleted_event_removes_object (line 171) | def test_handle_deleted_event_removes_object(self): method test_handle_event_ignores_none_object (line 178) | def test_handle_event_ignores_none_object(self): method test_handle_event_ignores_object_without_name (line 184) | def test_handle_event_ignores_object_without_name(self): method test_handle_event_converts_non_dict_object (line 190) | def test_handle_event_converts_non_dict_object(self): method test_handle_event_updates_resource_version (line 198) | def test_handle_event_updates_resource_version(self): method test_handle_event_does_not_downgrade_resource_version (line 207) | def test_handle_event_does_not_downgrade_resource_version(self): class TestWorkloadInformerStartStop (line 218) | class TestWorkloadInformerStartStop: method test_start_launches_daemon_thread (line 221) | def test_start_launches_daemon_thread(self): method test_start_is_idempotent (line 231) | def test_start_is_idempotent(self): method test_stop_signals_stop_event (line 242) | def test_stop_signals_stop_event(self): method test_poll_mode_resets_has_synced_after_wait (line 248) | def test_poll_mode_resets_has_synced_after_wait(self): FILE: server/tests/k8s/test_k8s_client.py class TestK8sClient (line 28) | class TestK8sClient: method test_init_with_kubeconfig_loads_successfully (line 31) | def test_init_with_kubeconfig_loads_successfully(self, k8s_runtime_con... method test_init_with_incluster_config_loads_successfully (line 41) | def test_init_with_incluster_config_loads_successfully(self): method test_init_with_invalid_kubeconfig_raises_exception (line 54) | def test_init_with_invalid_kubeconfig_raises_exception(self): method test_get_core_v1_api_returns_singleton (line 69) | def test_get_core_v1_api_returns_singleton(self, k8s_runtime_config): method test_get_custom_objects_api_returns_singleton (line 85) | def test_get_custom_objects_api_returns_singleton(self, k8s_runtime_co... method test_get_core_v1_api_creates_on_first_call (line 101) | def test_get_core_v1_api_creates_on_first_call(self, k8s_runtime_config): method test_no_rate_limiters_when_qps_is_zero (line 116) | def test_no_rate_limiters_when_qps_is_zero(self, k8s_runtime_config): method test_read_limiter_created_when_read_qps_set (line 123) | def test_read_limiter_created_when_read_qps_set(self): method test_write_limiter_created_when_write_qps_set (line 131) | def test_write_limiter_created_when_write_qps_set(self): method _make_client (line 143) | def _make_client(self, k8s_runtime_config): method test_create_custom_object_delegates_to_api (line 152) | def test_create_custom_object_delegates_to_api(self, k8s_runtime_config): method test_get_custom_object_returns_none_on_404 (line 161) | def test_get_custom_object_returns_none_on_404(self, k8s_runtime_config): method test_get_custom_object_returns_object (line 168) | def test_get_custom_object_returns_object(self, k8s_runtime_config): method test_get_custom_object_updates_informer_cache_on_api_hit (line 176) | def test_get_custom_object_updates_informer_cache_on_api_hit(self, k8s... method test_get_custom_object_reraises_non_404 (line 191) | def test_get_custom_object_reraises_non_404(self, k8s_runtime_config): method test_get_custom_object_returns_cached_when_synced (line 198) | def test_get_custom_object_returns_cached_when_synced(self, k8s_runtim... method test_get_custom_object_skips_informer_when_disabled (line 217) | def test_get_custom_object_skips_informer_when_disabled(self, k8s_runt... method test_list_custom_objects_returns_items (line 227) | def test_list_custom_objects_returns_items(self, k8s_runtime_config): method test_list_custom_objects_returns_empty_on_404 (line 236) | def test_list_custom_objects_returns_empty_on_404(self, k8s_runtime_co... method test_list_custom_objects_reraises_non_404 (line 243) | def test_list_custom_objects_reraises_non_404(self, k8s_runtime_config): method test_delete_custom_object_delegates_to_api (line 250) | def test_delete_custom_object_delegates_to_api(self, k8s_runtime_config): method test_patch_custom_object_delegates_to_api (line 259) | def test_patch_custom_object_delegates_to_api(self, k8s_runtime_config): method test_create_secret_delegates_to_api (line 273) | def test_create_secret_delegates_to_api(self, k8s_runtime_config): method test_list_pods_returns_items (line 282) | def test_list_pods_returns_items(self, k8s_runtime_config): method test_list_pods_returns_empty_list_on_exception (line 293) | def test_list_pods_returns_empty_list_on_exception(self, k8s_runtime_c... method test_read_runtime_class_delegates_to_api (line 300) | def test_read_runtime_class_delegates_to_api(self, k8s_runtime_config): method test_write_limiter_called_on_create (line 312) | def test_write_limiter_called_on_create(self, k8s_runtime_config): method test_write_limiter_called_on_delete (line 320) | def test_write_limiter_called_on_delete(self, k8s_runtime_config): method test_write_limiter_called_on_patch (line 328) | def test_write_limiter_called_on_patch(self, k8s_runtime_config): method test_write_limiter_called_on_create_secret (line 336) | def test_write_limiter_called_on_create_secret(self, k8s_runtime_config): method test_read_limiter_called_on_get (line 344) | def test_read_limiter_called_on_get(self, k8s_runtime_config): method test_read_limiter_called_on_list (line 354) | def test_read_limiter_called_on_list(self, k8s_runtime_config): method test_read_limiter_called_on_list_pods (line 363) | def test_read_limiter_called_on_list_pods(self, k8s_runtime_config): method test_read_limiter_called_on_read_runtime_class (line 372) | def test_read_limiter_called_on_read_runtime_class(self, k8s_runtime_c... FILE: server/tests/k8s/test_kubernetes_service.py class TestKubernetesSandboxServiceInit (line 36) | class TestKubernetesSandboxServiceInit: method test_init_with_valid_config_succeeds (line 39) | def test_init_with_valid_config_succeeds(self, k8s_app_config): method test_init_without_kubernetes_config_raises_error (line 58) | def test_init_without_kubernetes_config_raises_error(self, app_config_... method test_init_with_wrong_runtime_type_raises_error (line 72) | def test_init_with_wrong_runtime_type_raises_error(self, app_config_do... method test_init_with_k8s_client_failure_raises_http_exception (line 81) | def test_init_with_k8s_client_failure_raises_http_exception(self, k8s_... class TestKubernetesSandboxServiceCreate (line 98) | class TestKubernetesSandboxServiceCreate: method test_create_sandbox_with_valid_request_succeeds (line 102) | async def test_create_sandbox_with_valid_request_succeeds( method test_create_sandbox_uses_configured_timeout_and_poll_interval (line 133) | async def test_create_sandbox_uses_configured_timeout_and_poll_interval( method test_create_sandbox_rejects_image_auth_when_provider_not_supported (line 170) | async def test_create_sandbox_rejects_image_auth_when_provider_not_sup... method test_create_sandbox_allows_image_auth_when_provider_supported (line 187) | async def test_create_sandbox_allows_image_auth_when_provider_supported( method test_create_sandbox_with_no_timeout_calls_provider_with_expires_at_none_and_manual_cleanup_label (line 209) | async def test_create_sandbox_with_no_timeout_calls_provider_with_expi... method test_create_sandbox_with_network_policy_passes_egress_token_and_annotations (line 231) | async def test_create_sandbox_with_network_policy_passes_egress_token_... method test_create_sandbox_with_network_policy_passes_egress_mode_dns_nft_from_config (line 257) | async def test_create_sandbox_with_network_policy_passes_egress_mode_d... method test_get_endpoint_merges_egress_auth_header_from_instance_metadata (line 283) | def test_get_endpoint_merges_egress_auth_header_from_instance_metadata( method test_create_sandbox_rejects_timeout_above_configured_maximum (line 307) | async def test_create_sandbox_rejects_timeout_above_configured_maximum( class TestWaitForSandboxReady (line 322) | class TestWaitForSandboxReady: method test_wait_for_running_pod_succeeds (line 326) | async def test_wait_for_running_pod_succeeds(self, k8s_service, mock_w... method test_wait_for_pending_then_running_succeeds (line 345) | async def test_wait_for_pending_then_running_succeeds(self, k8s_servic... method test_wait_for_allocated_pod_returns_immediately (line 367) | async def test_wait_for_allocated_pod_returns_immediately(self, k8s_se... method test_wait_timeout_raises_exception (line 386) | async def test_wait_timeout_raises_exception(self, k8s_service, mock_w... class TestKubernetesSandboxServiceRenew (line 407) | class TestKubernetesSandboxServiceRenew: method test_renew_expiration_rejects_manual_cleanup_sandbox (line 408) | def test_renew_expiration_rejects_manual_cleanup_sandbox(self, k8s_ser... class TestGetSandbox (line 424) | class TestGetSandbox: method test_get_existing_sandbox_succeeds (line 427) | def test_get_existing_sandbox_succeeds(self, k8s_service, mock_workload): method test_get_nonexistent_sandbox_raises_404 (line 450) | def test_get_nonexistent_sandbox_raises_404(self, k8s_service): class TestDeleteSandbox (line 465) | class TestDeleteSandbox: method test_delete_existing_sandbox_succeeds (line 468) | def test_delete_existing_sandbox_succeeds(self, k8s_service, mock_work... method test_delete_nonexistent_sandbox_raises_404 (line 484) | def test_delete_nonexistent_sandbox_raises_404(self, k8s_service): class TestListSandboxes (line 499) | class TestListSandboxes: method test_list_all_sandboxes_succeeds (line 502) | def test_list_all_sandboxes_succeeds(self, k8s_service, mock_workload): method test_list_sandboxes_with_pagination (line 527) | def test_list_sandboxes_with_pagination(self, k8s_service, mock_worklo... method test_list_sandboxes_sorted_by_creation_time (line 571) | def test_list_sandboxes_sorted_by_creation_time(self, k8s_service, moc... class TestRenewExpiration (line 637) | class TestRenewExpiration: method test_renew_expiration_succeeds (line 640) | def test_renew_expiration_succeeds(self, k8s_service, mock_workload): method test_renew_with_past_time_raises_error (line 664) | def test_renew_with_past_time_raises_error(self, k8s_service, mock_wor... method test_renew_returns_409_when_sandbox_has_no_expiration (line 682) | def test_renew_returns_409_when_sandbox_has_no_expiration(self, k8s_se... FILE: server/tests/k8s/test_provider_factory.py class TestProviderFactory (line 38) | class TestProviderFactory: method test_register_and_create_batchsandbox_provider (line 41) | def test_register_and_create_batchsandbox_provider(self, mock_k8s_clie... method test_register_and_create_agent_sandbox_provider (line 55) | def test_register_and_create_agent_sandbox_provider( method test_create_provider_case_insensitive (line 96) | def test_create_provider_case_insensitive(self, mock_k8s_client, k8s_a... method test_create_provider_with_none_type_uses_default (line 109) | def test_create_provider_with_none_type_uses_default(self, mock_k8s_cl... method test_create_provider_with_invalid_type_raises_error (line 119) | def test_create_provider_with_invalid_type_raises_error(self, mock_k8s... method test_create_batchsandbox_with_template_file (line 128) | def test_create_batchsandbox_with_template_file(self, mock_k8s_client,... method test_list_available_providers (line 155) | def test_list_available_providers(self): method test_register_custom_provider (line 167) | def test_register_custom_provider(self, mock_k8s_client, isolated_regi... method test_create_batchsandbox_with_config (line 212) | def test_create_batchsandbox_with_config(self, mock_k8s_client, k8s_ap... method test_create_provider_with_empty_registry_raises_error (line 222) | def test_create_provider_with_empty_registry_raises_error(self, mock_k... FILE: server/tests/k8s/test_rate_limiter.py class TestTokenBucketRateLimiter (line 26) | class TestTokenBucketRateLimiter: method test_invalid_qps_raises_value_error (line 33) | def test_invalid_qps_raises_value_error(self): method test_negative_qps_raises_value_error (line 38) | def test_negative_qps_raises_value_error(self): method test_burst_defaults_to_qps_when_zero (line 43) | def test_burst_defaults_to_qps_when_zero(self): method test_explicit_burst_is_respected (line 48) | def test_explicit_burst_is_respected(self): method test_burst_minimum_is_one_when_qps_below_one (line 53) | def test_burst_minimum_is_one_when_qps_below_one(self): method test_low_qps_limiter_can_acquire (line 58) | def test_low_qps_limiter_can_acquire(self): method test_try_acquire_succeeds_when_bucket_full (line 67) | def test_try_acquire_succeeds_when_bucket_full(self): method test_try_acquire_fails_when_bucket_empty (line 72) | def test_try_acquire_fails_when_bucket_empty(self): method test_try_acquire_consumes_token (line 78) | def test_try_acquire_consumes_token(self): method test_acquire_succeeds_immediately_when_tokens_available (line 90) | def test_acquire_succeeds_immediately_when_tokens_available(self): method test_acquire_blocks_until_token_available (line 98) | def test_acquire_blocks_until_token_available(self): method test_acquire_minimum_sleep_prevents_busy_loop (line 109) | def test_acquire_minimum_sleep_prevents_busy_loop(self): method test_tokens_refill_over_time (line 127) | def test_tokens_refill_over_time(self): method test_tokens_capped_at_burst (line 139) | def test_tokens_capped_at_burst(self): method test_concurrent_acquires_do_not_exceed_burst (line 152) | def test_concurrent_acquires_do_not_exceed_burst(self): FILE: server/tests/test_agent_sandbox_service.py function agent_sandbox_runtime_config (line 39) | def agent_sandbox_runtime_config(): function agent_sandbox_app_config (line 50) | def agent_sandbox_app_config(agent_sandbox_runtime_config): function app_config_docker (line 73) | def app_config_docker(): class TestAgentSandboxServiceInit (line 90) | class TestAgentSandboxServiceInit: method test_init_with_valid_config_succeeds (line 93) | def test_init_with_valid_config_succeeds(self, agent_sandbox_runtime_c... method test_init_without_kubernetes_config_raises_error (line 133) | def test_init_without_kubernetes_config_raises_error(self): method test_init_with_wrong_runtime_type_raises_error (line 154) | def test_init_with_wrong_runtime_type_raises_error(self, app_config_do... method test_init_with_k8s_client_failure_raises_http_exception (line 161) | def test_init_with_k8s_client_failure_raises_http_exception(self, agen... class TestAgentSandboxServiceBuildSandbox (line 176) | class TestAgentSandboxServiceBuildSandbox: method test_build_sandbox_from_workload_dict (line 179) | def test_build_sandbox_from_workload_dict(self): FILE: server/tests/test_auth_middleware.py function _app_config_with_api_key (line 22) | def _app_config_with_api_key() -> AppConfig: function _build_test_app (line 30) | def _build_test_app(): function test_auth_middleware_rejects_missing_key (line 42) | def test_auth_middleware_rejects_missing_key(): function test_auth_middleware_accepts_valid_key (line 50) | def test_auth_middleware_accepts_valid_key(): function test_auth_middleware_skips_validation_for_proxy_to_sandbox (line 58) | def test_auth_middleware_skips_validation_for_proxy_to_sandbox(): function test_auth_middleware_v1_proxy_path_exempt (line 76) | def test_auth_middleware_v1_proxy_path_exempt(): function test_auth_middleware_requires_key_for_non_proxy_paths_containing_proxy_and_sandboxes (line 90) | def test_auth_middleware_requires_key_for_non_proxy_paths_containing_pro... function test_auth_middleware_requires_key_for_malformed_proxy_port (line 104) | def test_auth_middleware_requires_key_for_malformed_proxy_port(): function test_auth_middleware_is_proxy_path_rejects_traversal (line 118) | def test_auth_middleware_is_proxy_path_rejects_traversal(): function test_auth_middleware_is_proxy_path_accepts_valid_shapes (line 124) | def test_auth_middleware_is_proxy_path_accepts_valid_shapes(): FILE: server/tests/test_config.py function _reset_config (line 34) | def _reset_config(monkeypatch): function test_load_config_from_file (line 39) | def test_load_config_from_file(tmp_path, monkeypatch): function test_docker_runtime_disallows_kubernetes_block (line 79) | def test_docker_runtime_disallows_kubernetes_block(): function test_server_config_defaults_include_max_sandbox_timeout (line 87) | def test_server_config_defaults_include_max_sandbox_timeout(): function test_kubernetes_runtime_fills_missing_block (line 92) | def test_kubernetes_runtime_fills_missing_block(): function test_ingress_gateway_requires_gateway_block (line 99) | def test_ingress_gateway_requires_gateway_block(): function test_gateway_address_validation_for_wildcard_mode (line 112) | def test_gateway_address_validation_for_wildcard_mode(): function test_gateway_route_mode_allows_wildcard_alias (line 163) | def test_gateway_route_mode_allows_wildcard_alias(): function test_gateway_address_validation_for_non_wildcard_mode (line 174) | def test_gateway_address_validation_for_non_wildcard_mode(): function test_gateway_address_allows_scheme_less_defaults (line 289) | def test_gateway_address_allows_scheme_less_defaults(): function test_direct_mode_rejects_gateway_block (line 308) | def test_direct_mode_rejects_gateway_block(): function test_docker_runtime_rejects_gateway_ingress (line 319) | def test_docker_runtime_rejects_gateway_ingress(): function test_storage_config_defaults (line 348) | def test_storage_config_defaults(): function test_storage_config_with_paths (line 354) | def test_storage_config_with_paths(): function test_app_config_default_storage (line 360) | def test_app_config_default_storage(): function test_load_config_with_storage_block (line 369) | def test_load_config_with_storage_block(tmp_path, monkeypatch): function test_load_config_without_storage_block_uses_defaults (line 397) | def test_load_config_without_storage_block_uses_defaults(tmp_path, monke... function test_secure_runtime_empty_type_is_valid (line 427) | def test_secure_runtime_empty_type_is_valid(): function test_secure_runtime_gvisor_with_docker_runtime_is_valid (line 435) | def test_secure_runtime_gvisor_with_docker_runtime_is_valid(): function test_secure_runtime_gvisor_with_k8s_runtime_class_is_valid (line 447) | def test_secure_runtime_gvisor_with_k8s_runtime_class_is_valid(): function test_secure_runtime_kata_with_runtimes_is_valid (line 459) | def test_secure_runtime_kata_with_runtimes_is_valid(): function test_secure_runtime_firecracker_with_k8s_runtime_is_valid (line 471) | def test_secure_runtime_firecracker_with_k8s_runtime_is_valid(): function test_secure_runtime_firecracker_without_k8s_runtime_raises_error (line 483) | def test_secure_runtime_firecracker_without_k8s_runtime_raises_error(): function test_secure_runtime_gvisor_without_any_runtime_raises_error (line 494) | def test_secure_runtime_gvisor_without_any_runtime_raises_error(): function test_secure_runtime_kata_without_any_runtime_raises_error (line 505) | def test_secure_runtime_kata_without_any_runtime_raises_error(): function test_secure_runtime_invalid_type_raises_error (line 516) | def test_secure_runtime_invalid_type_raises_error(): function test_app_config_with_secure_runtime (line 522) | def test_app_config_with_secure_runtime(): function test_app_config_without_secure_runtime (line 537) | def test_app_config_without_secure_runtime(): function test_load_config_with_secure_runtime (line 545) | def test_load_config_with_secure_runtime(tmp_path, monkeypatch): function test_docker_runtime_with_firecracker_raises_error (line 574) | def test_docker_runtime_with_firecracker_raises_error(): function test_kubernetes_runtime_with_firecracker_is_valid (line 593) | def test_kubernetes_runtime_with_firecracker_is_valid(): function test_egress_config_mode_literal (line 609) | def test_egress_config_mode_literal(): FILE: server/tests/test_docker_endpoint.py function mock_docker_service (line 27) | def mock_docker_service(): function test_get_endpoint_host_mode (line 48) | def test_get_endpoint_host_mode(mock_docker_service): function test_get_endpoint_bridge_http_port (line 65) | def test_get_endpoint_bridge_http_port(mock_docker_service): function test_get_endpoint_bridge_other_port_via_execd (line 88) | def test_get_endpoint_bridge_other_port_via_execd(mock_docker_service): function test_get_endpoint_bridge_egress_port_includes_auth_header (line 111) | def test_get_endpoint_bridge_egress_port_includes_auth_header(mock_docke... function test_get_endpoint_bridge_non_egress_port_still_includes_instance_auth_header (line 136) | def test_get_endpoint_bridge_non_egress_port_still_includes_instance_aut... function test_get_endpoint_bridge_internal_resolution (line 161) | def test_get_endpoint_bridge_internal_resolution(mock_docker_service): function test_get_endpoint_bridge_internal_resolution_with_egress_sidecar_falls_back_to_host_mapped_endpoint (line 177) | def test_get_endpoint_bridge_internal_resolution_with_egress_sidecar_fal... function test_get_endpoint_bridge_internal_resolution_with_egress_sidecar_ignores_container_ip (line 202) | def test_get_endpoint_bridge_internal_resolution_with_egress_sidecar_ign... function test_get_endpoint_bridge_internal_resolution_with_egress_sidecar_uses_proxy_host_not_eip (line 227) | def test_get_endpoint_bridge_internal_resolution_with_egress_sidecar_use... function test_get_endpoint_bridge_uses_docker_host_ip_when_server_in_container (line 254) | def test_get_endpoint_bridge_uses_docker_host_ip_when_server_in_containe... function test_get_endpoint_user_defined_network_external (line 290) | def test_get_endpoint_user_defined_network_external(mock_docker_service): function test_get_endpoint_user_defined_network_internal_prefers_configured_network (line 319) | def test_get_endpoint_user_defined_network_internal_prefers_configured_n... function test_extract_bridge_ip_falls_back_when_named_network_ip_missing (line 345) | def test_extract_bridge_ip_falls_back_when_named_network_ip_missing(mock... FILE: server/tests/test_docker_path_fix.py function _app_config (line 20) | def _app_config() -> AppConfig: function test_container_internal_paths_use_posix_style (line 26) | def test_container_internal_paths_use_posix_style(): function test_copy_execd_to_container_uses_posix_dirname (line 36) | def test_copy_execd_to_container_uses_posix_dirname(mock_docker): function test_install_bootstrap_script_uses_posix_dirname (line 53) | def test_install_bootstrap_script_uses_posix_dirname(mock_docker): FILE: server/tests/test_docker_service.py function _app_config (line 62) | def _app_config() -> AppConfig: function test_parse_memory_limit_handles_units (line 70) | def test_parse_memory_limit_handles_units(): function test_parse_nano_cpus (line 77) | def test_parse_nano_cpus(): function test_parse_timestamp_defaults_on_invalid (line 83) | def test_parse_timestamp_defaults_on_invalid(): function test_env_allows_empty_string_and_skips_none (line 90) | def test_env_allows_empty_string_and_skips_none(): function test_create_sandbox_applies_security_defaults (line 118) | async def test_create_sandbox_applies_security_defaults(mock_docker): function test_prepare_runtime_failure_triggers_cleanup (line 172) | async def test_prepare_runtime_failure_triggers_cleanup( function test_create_sandbox_rejects_invalid_metadata (line 211) | async def test_create_sandbox_rejects_invalid_metadata(mock_docker): function test_create_sandbox_rejects_timeout_above_configured_maximum (line 237) | async def test_create_sandbox_rejects_timeout_above_configured_maximum(m... function test_create_sandbox_requires_entrypoint (line 265) | async def test_create_sandbox_requires_entrypoint(mock_docker): function test_network_policy_rejected_on_host_mode (line 292) | async def test_network_policy_rejected_on_host_mode(mock_docker): function test_network_policy_requires_egress_image (line 321) | async def test_network_policy_requires_egress_image(mock_docker): function test_egress_sidecar_injection_and_capabilities (line 350) | async def test_egress_sidecar_injection_and_capabilities(mock_docker): function test_network_policy_rejected_on_user_defined_network (line 422) | async def test_network_policy_rejected_on_user_defined_network(mock_dock... function test_create_sandbox_fails_when_user_defined_network_not_found (line 453) | async def test_create_sandbox_fails_when_user_defined_network_not_found(... function test_create_sandbox_user_defined_network_uses_correct_network_mode (line 486) | async def test_create_sandbox_user_defined_network_uses_correct_network_... function test_validate_network_skipped_for_builtin_modes (line 524) | def test_validate_network_skipped_for_builtin_modes(mock_docker): function test_egress_sidecar_cleanup_uses_api_remove_when_lookup_fails (line 540) | def test_egress_sidecar_cleanup_uses_api_remove_when_lookup_fails(mock_d... function test_egress_sidecar_missing_id_preserves_specific_error (line 582) | def test_egress_sidecar_missing_id_preserves_specific_error(mock_docker): function test_egress_sidecar_cleanup_wraps_unexpected_lookup_error (line 624) | def test_egress_sidecar_cleanup_wraps_unexpected_lookup_error(mock_docker): function test_expire_cleans_sidecar (line 666) | def test_expire_cleans_sidecar(): function test_restore_cleans_orphan_sidecar (line 687) | def test_restore_cleans_orphan_sidecar(): function test_prepare_creation_context_allows_manual_cleanup (line 707) | def test_prepare_creation_context_allows_manual_cleanup(): function test_build_labels_marks_manual_cleanup_without_expiration (line 722) | def test_build_labels_marks_manual_cleanup_without_expiration(): function test_create_sandbox_with_manual_cleanup_completes_full_create_path (line 741) | async def test_create_sandbox_with_manual_cleanup_completes_full_create_... function test_restore_existing_sandboxes_ignores_manual_cleanup_without_warning (line 768) | def test_restore_existing_sandboxes_ignores_manual_cleanup_without_warni... function test_renew_expiration_rejects_manual_cleanup_sandbox (line 791) | def test_renew_expiration_rejects_manual_cleanup_sandbox(): function test_create_sandbox_async_returns_provisioning (line 814) | async def test_create_sandbox_async_returns_provisioning(mock_docker): function test_get_sandbox_returns_pending_state (line 853) | async def test_get_sandbox_returns_pending_state(mock_docker): function test_list_sandboxes_deduplicates_container_and_pending (line 890) | def test_list_sandboxes_deduplicates_container_and_pending(mock_docker): function test_get_sandbox_prefers_container_over_pending (line 938) | def test_get_sandbox_prefers_container_over_pending(mock_docker): function test_async_worker_cleans_up_leftover_container_on_failure (line 983) | def test_async_worker_cleans_up_leftover_container_on_failure(mock_docker): class TestBuildVolumeBinds (line 1031) | class TestBuildVolumeBinds: method test_none_volumes_returns_empty (line 1034) | def test_none_volumes_returns_empty(self, mock_docker): method test_empty_volumes_returns_empty (line 1040) | def test_empty_volumes_returns_empty(self, mock_docker): method test_single_host_volume_rw (line 1046) | def test_single_host_volume_rw(self, mock_docker): method test_single_host_volume_ro (line 1059) | def test_single_host_volume_ro(self, mock_docker): method test_host_volume_with_subpath (line 1072) | def test_host_volume_with_subpath(self, mock_docker): method test_multiple_host_volumes (line 1087) | def test_multiple_host_volumes(self, mock_docker): method test_single_pvc_volume_rw (line 1110) | def test_single_pvc_volume_rw(self, mock_docker): method test_single_pvc_volume_ro (line 1123) | def test_single_pvc_volume_ro(self, mock_docker): method test_pvc_volume_with_subpath (line 1136) | def test_pvc_volume_with_subpath(self, mock_docker): method test_pvc_volume_with_subpath_readonly (line 1157) | def test_pvc_volume_with_subpath_readonly(self, mock_docker): method test_mixed_host_and_pvc_volumes (line 1178) | def test_mixed_host_and_pvc_volumes(self, mock_docker): method test_ossfs_volume_with_subpath (line 1201) | def test_ossfs_volume_with_subpath(self, mock_docker): class TestDockerVolumeValidation (line 1222) | class TestDockerVolumeValidation: method test_pvc_volume_not_found_rejected (line 1226) | async def test_pvc_volume_not_found_rejected(self, mock_docker): method test_ossfs_inline_credentials_missing_rejected (line 1258) | def test_ossfs_inline_credentials_missing_rejected(self, mock_docker): method test_ossfs_mount_failure_rejected (line 1272) | async def test_ossfs_mount_failure_rejected(self, mock_docker): method test_ossfs_windows_host_not_supported (line 1312) | def test_ossfs_windows_host_not_supported(self, mock_docker): method test_ossfs_v1_mount_command_uses_o_options (line 1335) | def test_ossfs_v1_mount_command_uses_o_options(self, mock_docker): method test_ossfs_v2_mount_command_uses_config_file (line 1370) | def test_ossfs_v2_mount_command_uses_config_file(self, mock_docker): method test_ossfs_v2_config_contains_required_lines (line 1403) | def test_ossfs_v2_config_contains_required_lines(self, mock_docker): method test_ossfs_volume_binds_passed_to_docker (line 1437) | async def test_ossfs_volume_binds_passed_to_docker(self, mock_docker): method test_prepare_ossfs_mounts_reuses_mount_key (line 1490) | def test_prepare_ossfs_mounts_reuses_mount_key(self, mock_docker): method test_prepare_ossfs_mounts_rolls_back_on_partial_failure (line 1530) | def test_prepare_ossfs_mounts_rolls_back_on_partial_failure(self, mock... method test_delete_sandbox_releases_ossfs_mount (line 1573) | def test_delete_sandbox_releases_ossfs_mount(self, mock_docker): method test_release_ossfs_mount_untracked_key_does_not_unmount (line 1601) | def test_release_ossfs_mount_untracked_key_does_not_unmount(self, mock... method test_restore_existing_sandboxes_rebuilds_ossfs_refs (line 1614) | def test_restore_existing_sandboxes_rebuilds_ossfs_refs(self, mock_doc... method test_delete_one_sandbox_after_restart_keeps_shared_mount (line 1637) | def test_delete_one_sandbox_after_restart_keeps_shared_mount(self, moc... method test_restore_manual_cleanup_sandbox_rebuilds_ossfs_refs (line 1677) | def test_restore_manual_cleanup_sandbox_rebuilds_ossfs_refs(self, mock... method test_pvc_volume_inspect_failure_returns_500 (line 1700) | async def test_pvc_volume_inspect_failure_returns_500(self, mock_docker): method test_pvc_volume_binds_passed_to_docker (line 1732) | async def test_pvc_volume_binds_passed_to_docker(self, mock_docker): method test_pvc_volume_readonly_binds_passed_to_docker (line 1777) | async def test_pvc_volume_readonly_binds_passed_to_docker(self, mock_d... method test_pvc_subpath_non_local_driver_rejected (line 1817) | async def test_pvc_subpath_non_local_driver_rejected(self, mock_docker): method test_pvc_subpath_symlink_escape_rejected (line 1854) | async def test_pvc_subpath_symlink_escape_rejected(self, mock_docker): method test_pvc_subpath_binds_resolved_to_mountpoint (line 1896) | async def test_pvc_subpath_binds_resolved_to_mountpoint(self, mock_doc... method test_host_path_not_found_rejected (line 1942) | async def test_host_path_not_found_rejected(self, mock_docker): method test_host_path_not_in_allowlist_rejected (line 1975) | async def test_host_path_not_in_allowlist_rejected(self, mock_docker): method test_no_volumes_passes_validation (line 2009) | async def test_no_volumes_passes_validation(self, mock_docker): method test_host_volume_binds_passed_to_docker (line 2038) | async def test_host_volume_binds_passed_to_docker(self, mock_docker): method test_host_volume_with_subpath_resolved_correctly (line 2083) | async def test_host_volume_with_subpath_resolved_correctly(self, mock_... method test_host_subpath_auto_created (line 2131) | async def test_host_subpath_auto_created(self, mock_docker): method test_empty_allowlist_permits_any_host_path (line 2186) | async def test_empty_allowlist_permits_any_host_path(self, mock_docker): method test_no_volumes_omits_binds_from_host_config (line 2229) | async def test_no_volumes_omits_binds_from_host_config(self, mock_dock... FILE: server/tests/test_endpoint.py function test_normalize_external_endpoint_url_defaults_to_https (line 18) | def test_normalize_external_endpoint_url_defaults_to_https() -> None: function test_normalize_external_endpoint_url_keeps_existing_scheme (line 25) | def test_normalize_external_endpoint_url_keeps_existing_scheme() -> None: FILE: server/tests/test_endpoint_auth.py function test_generate_egress_token_returns_random_urlsafe_strings (line 23) | def test_generate_egress_token_returns_random_urlsafe_strings() -> None: function test_build_egress_auth_headers_uses_expected_header_name (line 32) | def test_build_egress_auth_headers_uses_expected_header_name() -> None: function test_merge_endpoint_headers_preserves_existing_headers (line 40) | def test_merge_endpoint_headers_preserves_existing_headers() -> None: function test_merge_endpoint_headers_handles_missing_existing_headers (line 53) | def test_merge_endpoint_headers_handles_missing_existing_headers() -> None: FILE: server/tests/test_helpers.py function test_parse_timestamp_truncates_nanoseconds (line 20) | def test_parse_timestamp_truncates_nanoseconds(): function test_parse_timestamp_parses_valid_rfc3339 (line 33) | def test_parse_timestamp_parses_valid_rfc3339(): function test_parse_timestamp_invalid_falls_back_to_now (line 42) | def test_parse_timestamp_invalid_falls_back_to_now(): FILE: server/tests/test_ingress.py function test_format_ingress_endpoint_returns_none_when_not_gateway (line 27) | def test_format_ingress_endpoint_returns_none_when_not_gateway(): function test_format_ingress_endpoint_wildcard (line 33) | def test_format_ingress_endpoint_wildcard(): function test_format_ingress_endpoint_uri (line 47) | def test_format_ingress_endpoint_uri(): function test_format_ingress_endpoint_header (line 61) | def test_format_ingress_endpoint_header(): FILE: server/tests/test_routes.py class TestHealthCheck (line 30) | class TestHealthCheck: method test_health_check (line 33) | def test_health_check(self, client: TestClient): class TestAuthentication (line 42) | class TestAuthentication: method test_missing_api_key (line 45) | def test_missing_api_key(self, client: TestClient): method test_missing_api_key_v1_prefix (line 53) | def test_missing_api_key_v1_prefix(self, client: TestClient): method test_invalid_api_key (line 61) | def test_invalid_api_key(self, client: TestClient): class TestCreateSandbox (line 74) | class TestCreateSandbox: method test_create_sandbox_success (line 77) | def test_create_sandbox_success( method test_create_sandbox_invalid_request (line 88) | def test_create_sandbox_invalid_request( method test_create_sandbox_unauthorized (line 98) | def test_create_sandbox_unauthorized( class TestListSandboxes (line 109) | class TestListSandboxes: method test_list_sandboxes_success (line 112) | def test_list_sandboxes_success( method test_list_sandboxes_with_filters (line 129) | def test_list_sandboxes_with_filters( method test_list_sandboxes_with_pagination (line 141) | def test_list_sandboxes_with_pagination( class TestGetSandbox (line 154) | class TestGetSandbox: method test_get_sandbox_success (line 157) | def test_get_sandbox_success( method test_get_sandbox_preserves_nullable_expires_at (line 167) | def test_get_sandbox_preserves_nullable_expires_at( method test_get_sandbox_not_found (line 209) | def test_get_sandbox_not_found( class TestDeleteSandbox (line 220) | class TestDeleteSandbox: method test_delete_sandbox_success (line 223) | def test_delete_sandbox_success( method test_delete_sandbox_not_found (line 233) | def test_delete_sandbox_not_found( class TestPauseResumeSandbox (line 244) | class TestPauseResumeSandbox: method test_pause_sandbox_success (line 247) | def test_pause_sandbox_success( method test_resume_sandbox_success (line 257) | def test_resume_sandbox_success( method test_pause_sandbox_invalid_state (line 267) | def test_pause_sandbox_invalid_state( class TestRenewExpiration (line 278) | class TestRenewExpiration: method test_renew_expiration_success (line 281) | def test_renew_expiration_success( method test_renew_expiration_invalid_time (line 291) | def test_renew_expiration_invalid_time( class TestGetEndpoint (line 302) | class TestGetEndpoint: method test_get_endpoint_success (line 305) | def test_get_endpoint_success( method test_get_endpoint_invalid_port (line 315) | def test_get_endpoint_invalid_port( FILE: server/tests/test_routes_create_delete.py function test_create_sandbox_returns_202_and_service_payload (line 23) | def test_create_sandbox_returns_202_and_service_payload( function test_create_sandbox_manual_cleanup_returns_null_expiration (line 63) | def test_create_sandbox_manual_cleanup_returns_null_expiration( function test_create_sandbox_rejects_invalid_request (line 101) | def test_create_sandbox_rejects_invalid_request( function test_delete_sandbox_returns_204_and_calls_service (line 114) | def test_delete_sandbox_returns_204_and_calls_service( function test_delete_sandbox_requires_api_key (line 135) | def test_delete_sandbox_requires_api_key(client: TestClient) -> None: FILE: server/tests/test_routes_endpoint_behavior.py function test_get_endpoint_returns_service_result (line 21) | def test_get_endpoint_returns_service_result( function test_get_endpoint_use_server_proxy_rewrites_url (line 46) | def test_get_endpoint_use_server_proxy_rewrites_url( function test_get_endpoint_rejects_non_numeric_port (line 68) | def test_get_endpoint_rejects_non_numeric_port( FILE: server/tests/test_routes_get_sandbox.py function test_get_sandbox_returns_service_payload (line 24) | def test_get_sandbox_returns_service_payload( function test_get_sandbox_propagates_not_found (line 56) | def test_get_sandbox_propagates_not_found( function test_get_sandbox_requires_api_key (line 83) | def test_get_sandbox_requires_api_key(client: TestClient) -> None: FILE: server/tests/test_routes_list_sandboxes.py function test_list_sandboxes_parses_filters_and_pagination (line 29) | def test_list_sandboxes_parses_filters_and_pagination( function test_list_sandboxes_rejects_malformed_metadata_query (line 86) | def test_list_sandboxes_rejects_malformed_metadata_query( function test_list_sandboxes_keeps_blank_metadata_values (line 101) | def test_list_sandboxes_keeps_blank_metadata_values( function test_list_sandboxes_preserves_only_nullable_expires_at (line 135) | def test_list_sandboxes_preserves_only_nullable_expires_at( function test_list_sandboxes_validates_page_bounds (line 179) | def test_list_sandboxes_validates_page_bounds( function test_list_sandboxes_validates_page_size_upper_bound (line 192) | def test_list_sandboxes_validates_page_size_upper_bound( function test_list_sandboxes_requires_api_key (line 205) | def test_list_sandboxes_requires_api_key(client: TestClient) -> None: FILE: server/tests/test_routes_pause_resume.py function test_pause_route_calls_service_and_returns_202 (line 21) | def test_pause_route_calls_service_and_returns_202( function test_resume_route_calls_service_and_returns_202 (line 41) | def test_resume_route_calls_service_and_returns_202( function test_pause_route_propagates_service_http_error (line 61) | def test_pause_route_propagates_service_http_error( function test_pause_route_requires_api_key (line 85) | def test_pause_route_requires_api_key(client: TestClient) -> None: FILE: server/tests/test_routes_proxy.py class _FakeStreamingResponse (line 23) | class _FakeStreamingResponse: method __init__ (line 24) | def __init__( method aiter_bytes (line 31) | async def aiter_bytes(self): class _FakeAsyncClient (line 36) | class _FakeAsyncClient: method __init__ (line 37) | def __init__(self): method build_request (line 43) | def build_request( method send (line 60) | async def send(self, req, stream: bool = True): function test_proxy_forwards_filtered_headers_and_query (line 68) | def test_proxy_forwards_filtered_headers_and_query( function test_proxy_forwards_get_request_with_query_params (line 129) | def test_proxy_forwards_get_request_with_query_params( function test_proxy_forwards_delete_request_with_body (line 172) | def test_proxy_forwards_delete_request_with_body( function test_proxy_filters_response_hop_by_hop_headers (line 210) | def test_proxy_filters_response_hop_by_hop_headers( function test_proxy_rejects_websocket_upgrade (line 251) | def test_proxy_rejects_websocket_upgrade( function test_proxy_rejects_websocket_upgrade_for_post_and_mixed_case_header (line 273) | def test_proxy_rejects_websocket_upgrade_for_post_and_mixed_case_header( function test_proxy_maps_connect_error_to_502 (line 296) | def test_proxy_maps_connect_error_to_502( function test_proxy_maps_unexpected_error_to_500 (line 320) | def test_proxy_maps_unexpected_error_to_500( function test_proxy_forwards_18080_without_server_side_egress_auth_check (line 344) | def test_proxy_forwards_18080_without_server_side_egress_auth_check( function test_proxy_forwards_egress_auth_header_for_18080 (line 376) | def test_proxy_forwards_egress_auth_header_for_18080( FILE: server/tests/test_routes_renew_expiration.py function test_renew_expiration_returns_updated_timestamp (line 24) | def test_renew_expiration_returns_updated_timestamp( function test_renew_expiration_rejects_invalid_payload (line 52) | def test_renew_expiration_rejects_invalid_payload( function test_renew_expiration_propagates_service_http_error (line 65) | def test_renew_expiration_propagates_service_http_error( function test_renew_expiration_returns_409_for_manual_cleanup_sandbox (line 96) | def test_renew_expiration_returns_409_for_manual_cleanup_sandbox( function test_renew_expiration_requires_api_key (line 127) | def test_renew_expiration_requires_api_key(client: TestClient) -> None: FILE: server/tests/test_schema.py class TestHost (line 36) | class TestHost: method test_valid_path (line 39) | def test_valid_path(self): method test_path_required (line 44) | def test_path_required(self): method test_serialization (line 51) | def test_serialization(self): method test_deserialization (line 57) | def test_deserialization(self): class TestPVC (line 69) | class TestPVC: method test_valid_claim_name (line 72) | def test_valid_claim_name(self): method test_claim_name_alias (line 77) | def test_claim_name_alias(self): method test_serialization_uses_alias (line 83) | def test_serialization_uses_alias(self): method test_claim_name_required (line 89) | def test_claim_name_required(self): class TestOSSFS (line 102) | class TestOSSFS: method test_valid_ossfs (line 105) | def test_valid_ossfs(self): method test_default_ossfs_version_is_2_0 (line 118) | def test_default_ossfs_version_is_2_0(self): method test_inline_credentials_required (line 127) | def test_inline_credentials_required(self): class TestVolume (line 140) | class TestVolume: method test_valid_host_volume (line 143) | def test_valid_host_volume(self): method test_valid_pvc_volume (line 159) | def test_valid_pvc_volume(self): method test_valid_volume_with_subpath (line 174) | def test_valid_volume_with_subpath(self): method test_valid_ossfs_volume (line 185) | def test_valid_ossfs_volume(self): method test_no_backend_raises (line 202) | def test_no_backend_raises(self): method test_multiple_backends_raises (line 214) | def test_multiple_backends_raises(self): method test_serialization_host_volume (line 228) | def test_serialization_host_volume(self): method test_serialization_pvc_volume (line 246) | def test_serialization_pvc_volume(self): method test_deserialization_host_volume (line 262) | def test_deserialization_host_volume(self): method test_deserialization_pvc_volume (line 279) | def test_deserialization_pvc_volume(self): method test_serialization_ossfs_volume (line 294) | def test_serialization_ossfs_volume(self): class TestCreateSandboxRequestWithVolumes (line 318) | class TestCreateSandboxRequestWithVolumes: method test_request_without_timeout_uses_manual_cleanup (line 321) | def test_request_without_timeout_uses_manual_cleanup(self): method test_request_without_volumes (line 330) | def test_request_without_volumes(self): method test_request_with_empty_volumes (line 340) | def test_request_with_empty_volumes(self): method test_request_with_host_volume (line 351) | def test_request_with_host_volume(self): method test_request_with_pvc_volume (line 371) | def test_request_with_pvc_volume(self): method test_request_with_multiple_volumes (line 392) | def test_request_with_multiple_volumes(self): method test_serialization_with_volumes (line 417) | def test_serialization_with_volumes(self): method test_deserialization_with_volumes (line 442) | def test_deserialization_with_volumes(self): method test_request_rejects_zero_timeout (line 484) | def test_request_rejects_zero_timeout(self): method test_request_allows_timeout_above_previous_hardcoded_limit (line 494) | def test_request_allows_timeout_above_previous_hardcoded_limit(self): FILE: server/tests/test_validators.py function test_ensure_metadata_labels_accepts_common_k8s_forms (line 32) | def test_ensure_metadata_labels_accepts_common_k8s_forms(): function test_ensure_metadata_labels_allows_none_or_empty (line 46) | def test_ensure_metadata_labels_allows_none_or_empty(): function test_ensure_metadata_labels_rejects_name_too_long (line 51) | def test_ensure_metadata_labels_rejects_name_too_long(): function test_ensure_metadata_labels_rejects_prefix_too_long (line 60) | def test_ensure_metadata_labels_rejects_prefix_too_long(): function test_ensure_metadata_labels_accepts_key_with_max_length_prefix_and_name (line 72) | def test_ensure_metadata_labels_accepts_key_with_max_length_prefix_and_n... function test_ensure_metadata_labels_rejects_invalid_prefix_format (line 83) | def test_ensure_metadata_labels_rejects_invalid_prefix_format(): function test_ensure_metadata_labels_rejects_value_too_long (line 91) | def test_ensure_metadata_labels_rejects_value_too_long(): function test_ensure_metadata_labels_rejects_non_string_key (line 100) | def test_ensure_metadata_labels_rejects_non_string_key(): function test_ensure_metadata_labels_rejects_key_with_empty_prefix (line 108) | def test_ensure_metadata_labels_rejects_key_with_empty_prefix(): function test_ensure_metadata_labels_rejects_reserved_prefix (line 116) | def test_ensure_metadata_labels_rejects_reserved_prefix(): function test_ensure_metadata_labels_rejects_manual_cleanup_key (line 125) | def test_ensure_metadata_labels_rejects_manual_cleanup_key(): function test_ensure_metadata_labels_rejects_arbitrary_reserved_key (line 134) | def test_ensure_metadata_labels_rejects_arbitrary_reserved_key(): function test_ensure_timeout_within_limit_allows_equal_boundary (line 142) | def test_ensure_timeout_within_limit_allows_equal_boundary(): function test_ensure_timeout_within_limit_allows_disabled_upper_bound (line 146) | def test_ensure_timeout_within_limit_allows_disabled_upper_bound(): function test_ensure_timeout_within_limit_rejects_timeout_above_limit (line 150) | def test_ensure_timeout_within_limit_rejects_timeout_above_limit(): function test_ensure_timeout_within_limit_rejects_unrepresentable_timeout (line 158) | def test_ensure_timeout_within_limit_rejects_unrepresentable_timeout(): class TestEnsureValidVolumeName (line 172) | class TestEnsureValidVolumeName: method test_valid_simple_name (line 175) | def test_valid_simple_name(self): method test_valid_name_with_numbers (line 181) | def test_valid_name_with_numbers(self): method test_valid_name_with_hyphens (line 187) | def test_valid_name_with_hyphens(self): method test_empty_name_raises (line 193) | def test_empty_name_raises(self): method test_name_too_long_raises (line 200) | def test_name_too_long_raises(self): method test_uppercase_name_raises (line 208) | def test_uppercase_name_raises(self): method test_underscore_name_raises (line 215) | def test_underscore_name_raises(self): method test_name_starting_with_hyphen_raises (line 222) | def test_name_starting_with_hyphen_raises(self): method test_name_ending_with_hyphen_raises (line 229) | def test_name_ending_with_hyphen_raises(self): class TestEnsureValidMountPath (line 242) | class TestEnsureValidMountPath: method test_valid_absolute_path (line 245) | def test_valid_absolute_path(self): method test_empty_path_raises (line 251) | def test_empty_path_raises(self): method test_relative_path_raises (line 258) | def test_relative_path_raises(self): method test_path_not_starting_with_slash_raises (line 265) | def test_path_not_starting_with_slash_raises(self): class TestEnsureValidSubPath (line 278) | class TestEnsureValidSubPath: method test_none_subpath_valid (line 281) | def test_none_subpath_valid(self): method test_empty_subpath_valid (line 285) | def test_empty_subpath_valid(self): method test_relative_subpath_valid (line 289) | def test_relative_subpath_valid(self): method test_absolute_subpath_raises (line 295) | def test_absolute_subpath_raises(self): method test_path_traversal_raises (line 302) | def test_path_traversal_raises(self): method test_embedded_path_traversal_raises (line 309) | def test_embedded_path_traversal_raises(self): class TestEnsureValidHostPath (line 322) | class TestEnsureValidHostPath: method test_valid_absolute_path (line 325) | def test_valid_absolute_path(self): method test_empty_path_raises (line 330) | def test_empty_path_raises(self): method test_relative_path_raises (line 337) | def test_relative_path_raises(self): method test_path_with_traversal_raises (line 344) | def test_path_with_traversal_raises(self): method test_path_with_double_slash_raises (line 351) | def test_path_with_double_slash_raises(self): method test_allowed_prefix_match (line 358) | def test_allowed_prefix_match(self): method test_allowed_prefix_exact_match (line 364) | def test_allowed_prefix_exact_match(self): method test_path_not_in_allowed_prefix_raises (line 369) | def test_path_not_in_allowed_prefix_raises(self): method test_partial_prefix_match_raises (line 377) | def test_partial_prefix_match_raises(self): class TestEnsureValidPvcName (line 391) | class TestEnsureValidPvcName: method test_valid_simple_name (line 394) | def test_valid_simple_name(self): method test_empty_name_raises (line 400) | def test_empty_name_raises(self): method test_name_too_long_raises (line 407) | def test_name_too_long_raises(self): method test_uppercase_name_raises (line 415) | def test_uppercase_name_raises(self): method test_underscore_name_raises (line 422) | def test_underscore_name_raises(self): class TestEnsureVolumesValid (line 435) | class TestEnsureVolumesValid: method test_none_volumes_valid (line 438) | def test_none_volumes_valid(self): method test_empty_volumes_valid (line 442) | def test_empty_volumes_valid(self): method test_valid_host_volume (line 446) | def test_valid_host_volume(self): method test_valid_pvc_volume (line 456) | def test_valid_pvc_volume(self): method test_valid_ossfs_volume (line 466) | def test_valid_ossfs_volume(self): method test_valid_volume_with_subpath (line 482) | def test_valid_volume_with_subpath(self): method test_multiple_valid_volumes (line 493) | def test_multiple_valid_volumes(self): method test_duplicate_volume_name_raises (line 511) | def test_duplicate_volume_name_raises(self): method test_invalid_volume_name_rejected_by_pydantic (line 532) | def test_invalid_volume_name_rejected_by_pydantic(self): method test_invalid_mount_path_rejected_by_pydantic (line 546) | def test_invalid_mount_path_rejected_by_pydantic(self): method test_invalid_subpath_raises (line 560) | def test_invalid_subpath_raises(self): method test_host_path_allowlist_enforced (line 574) | def test_host_path_allowlist_enforced(self): method test_ossfs_invalid_version_rejected_by_schema (line 587) | def test_ossfs_invalid_version_rejected_by_schema(self): method test_ossfs_missing_inline_credentials_raises (line 600) | def test_ossfs_missing_inline_credentials_raises(self): method test_ossfs_v1_options_reject_prefixed_entries (line 618) | def test_ossfs_v1_options_reject_prefixed_entries(self): method test_ossfs_v2_options_reject_prefixed_entries (line 637) | def test_ossfs_v2_options_reject_prefixed_entries(self): method test_invalid_pvc_name_rejected_by_pydantic (line 656) | def test_invalid_pvc_name_rejected_by_pydantic(self): FILE: tests/csharp/OpenSandbox.E2ETests/CodeInterpreterE2ETests.cs class CodeInterpreterE2ETests (line 23) | [Collection("CSharp E2E Tests")] method CodeInterpreterE2ETests (line 28) | public CodeInterpreterE2ETests(CodeInterpreterE2ETestFixture fixture) method CreateInterpreter_ExposesSandboxServices (line 33) | [Fact(Timeout = 2 * 60 * 1000)] method ContextManagement_CreateGetListDelete (line 53) | [Fact(Timeout = 2 * 60 * 1000)] method RunAsync_ContextPersistence_AndIsolation (line 75) | [Fact(Timeout = 4 * 60 * 1000)] method RunAsync_MultiLanguage_BasicExecution (line 94) | [Fact(Timeout = 3 * 60 * 1000)] method RunAsync_MultiLanguage_Java_Go_TypeScript (line 109) | [Fact(Timeout = 6 * 60 * 1000)] method ContextManagement_DeleteContexts_ByLanguage (line 146) | [Fact(Timeout = 3 * 60 * 1000)] method RunStreamAsync_ReturnsRealtimeEvents (line 167) | [Fact(Timeout = 3 * 60 * 1000)] method InterruptAsync_StopsLongRunningExecution (line 189) | [Fact(Timeout = 3 * 60 * 1000)] method RunAsync_ConcurrentExecution_MultipleContexts (line 208) | [Fact(Timeout = 6 * 60 * 1000)] method RunAsync_MultiLanguage_ErrorHandling_WithEventContract (line 244) | [Fact(Timeout = 8 * 60 * 1000)] method RunWithTrackedEventsAsync (line 297) | private static async Task RunWithTrackedEventsAsync( method AssertTerminalEventContract (line 335) | private static void AssertTerminalEventContract( method AssertRecentTimestampMs (line 368) | private static void AssertRecentTimestampMs(long ts, long toleranceMs) method HasText (line 375) | private static bool HasText(Execution execution, string expected) method CreateContextWithRetryAsync (line 382) | private static async Task CreateContextWithRetryAsync( method RunWithRetryAsync (line 413) | private static async Task RunWithRetryAsync( method RunStreamCollectWithRetryAsync (line 460) | private static async Task> RunStreamCollectWit... method RunCommandWithRetryAsync (line 509) | private static async Task RunCommandWithRetryAsync( method IsRetryable (line 565) | private static bool IsRetryable(Exception ex) type TrackedExecution (line 583) | private sealed record TrackedExecution( class CodeInterpreterE2ETestFixture (line 590) | public sealed class CodeInterpreterE2ETestFixture : IAsyncLifetime method InitializeAsync (line 599) | public async Task InitializeAsync() method DisposeAsync (line 639) | public async Task DisposeAsync() FILE: tests/csharp/OpenSandbox.E2ETests/E2ETestFixture.cs class E2ETestFixture (line 23) | public sealed class E2ETestFixture : IAsyncLifetime method E2ETestFixture (line 35) | public E2ETestFixture() method InitializeAsync (line 78) | public Task InitializeAsync() method DisposeAsync (line 83) | public Task DisposeAsync() class E2ETestCollection (line 89) | [CollectionDefinition("CSharp E2E Tests")] FILE: tests/csharp/OpenSandbox.E2ETests/SandboxE2ETests.cs class SandboxE2ETests (line 24) | [Collection("CSharp E2E Tests")] method SandboxE2ETests (line 29) | public SandboxE2ETests(SandboxE2ETestFixture fixture) method Sandbox_Lifecycle_Health_Endpoint_Metrics_Renew_Connect (line 34) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_XRequestId_Passthrough_OnServerError (line 87) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_ManualCleanup_Returns_Null_ExpiresAt (line 122) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_NetworkPolicy_Get_And_Patch_Egress (line 148) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_NetworkPolicy_Get_And_Patch_Egress_Via_ServerProxy (line 218) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_HostVolumeMount (line 287) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_HostVolumeMount_ReadOnly (line 340) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_PvcVolumeMount (line 387) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_PvcVolumeMount_ReadOnly (line 440) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Create_With_PvcVolumeMount_SubPath (line 487) | [Fact(Timeout = 2 * 60 * 1000)] method Command_Execution_Success_Cwd_Background_Failure (line 547) | [Fact(Timeout = 2 * 60 * 1000)] method Command_Status_And_Background_Logs (line 618) | [Fact(Timeout = 2 * 60 * 1000)] method Command_Env_Injection (line 653) | [Fact(Timeout = 2 * 60 * 1000)] method Filesystem_Operations_CRUD_Replace_Move_Delete (line 682) | [Fact(Timeout = 2 * 60 * 1000)] method Command_Interrupt (line 806) | [Fact(Timeout = 2 * 60 * 1000)] method Sandbox_Pause_And_Resume (line 840) | [Fact(Timeout = 5 * 60 * 1000)] method AssertRecentTimestampMs (line 891) | private static void AssertRecentTimestampMs(long ts, long toleranceMs) method AssertEndpointHasPort (line 898) | private static void AssertEndpointHasPort(string endpoint, int expecte... method AssertTimesClose (line 915) | private static void AssertTimesClose(DateTime? createdAt, DateTime? mo... method AssertModifiedUpdated (line 923) | private static void AssertModifiedUpdated(DateTime? before, DateTime? ... method AssertTerminalEventContract (line 931) | private static void AssertTerminalEventContract( method WaitForStateAsync (line 965) | private static async Task WaitForStateAsync( class SandboxE2ETestFixture (line 990) | public sealed class SandboxE2ETestFixture : IAsyncLifetime method InitializeAsync (line 1002) | public async Task InitializeAsync() method DisposeAsync (line 1016) | public async Task DisposeAsync() FILE: tests/csharp/OpenSandbox.E2ETests/SandboxManagerE2ETests.cs class SandboxManagerE2ETests (line 20) | [Collection("CSharp E2E Tests")] method SandboxManagerE2ETests (line 25) | public SandboxManagerE2ETests(SandboxManagerE2ETestFixture fixture) method ListSandboxInfos_StatesFilter_IsOrLogic (line 30) | [Fact(Timeout = 10 * 60 * 1000)] method ListSandboxInfos_MetadataFilter_IsAndLogic (line 76) | [Fact(Timeout = 10 * 60 * 1000)] method Manager_InvalidSandboxOperations_ShouldFail (line 140) | [Fact(Timeout = 2 * 60 * 1000)] class SandboxManagerE2ETestFixture (line 154) | public sealed class SandboxManagerE2ETestFixture : IAsyncLifetime method InitializeAsync (line 169) | public async Task InitializeAsync() method DisposeAsync (line 202) | public async Task DisposeAsync() method CreateSandboxAsync (line 228) | private async Task CreateSandboxAsync(IReadOnlyDictionary( FILE: tests/javascript/tests/test_sandbox_manager_e2e.test.ts function sleep (line 33) | function sleep(ms: number): Promise { function waitForState (line 37) | async function waitForState( FILE: tests/python/tests/base_e2e_test.py function get_sandbox_image (line 37) | def get_sandbox_image() -> str: function create_connection_config (line 42) | def create_connection_config() -> ConnectionConfig: function create_connection_config_server_proxy (line 52) | def create_connection_config_server_proxy() -> ConnectionConfig: function create_connection_config_sync (line 63) | def create_connection_config_sync() -> ConnectionConfigSync: function create_connection_config_sync_server_proxy (line 80) | def create_connection_config_sync_server_proxy() -> ConnectionConfigSync: FILE: tests/python/tests/test_code_interpreter_e2e.py function _now_ms (line 58) | def _now_ms() -> int: function _assert_recent_timestamp_ms (line 62) | def _assert_recent_timestamp_ms(ts: int, *, tolerance_ms: int = 180_000)... function _assert_endpoint_has_port (line 69) | def _assert_endpoint_has_port(endpoint: str, expected_port: int) -> None: function _assert_terminal_event_contract (line 84) | def _assert_terminal_event_contract( function _buffer_attempt_handlers (line 111) | def _buffer_attempt_handlers( function run_with_retry (line 167) | async def run_with_retry( function create_context_with_retry (line 264) | async def create_context_with_retry( function managed_ctx (line 298) | async def managed_ctx(code_interpreter: CodeInterpreter, language: str): function managed_ctx_stack (line 324) | async def managed_ctx_stack(code_interpreter: CodeInterpreter, languages... class TestCodeInterpreterE2E (line 333) | class TestCodeInterpreterE2E: method _ci_lifecycle (line 342) | async def _ci_lifecycle(self, request): method _ensure_code_interpreter_created (line 360) | async def _ensure_code_interpreter_created(cls) -> None: method test_01_creation_and_basic_functionality (line 408) | async def test_01_creation_and_basic_functionality(self): method test_02_java_code_execution (line 474) | async def test_02_java_code_execution(self): method test_03_python_code_execution (line 608) | async def test_03_python_code_execution(self): method test_04_go_code_execution (line 779) | async def test_04_go_code_execution(self): method test_05_typescript_code_execution (line 896) | async def test_05_typescript_code_execution(self): method test_06_multi_language_support_and_context_isolation (line 1004) | async def test_06_multi_language_support_and_context_isolation(self): method test_07_concurrent_code_execution (line 1075) | async def test_07_concurrent_code_execution(self): method test_08_code_execution_interrupt (line 1137) | async def test_08_code_execution_interrupt(self): method test_09_context_management_endpoints (line 1248) | async def test_09_context_management_endpoints(self): FILE: tests/python/tests/test_code_interpreter_e2e_sync.py function _now_ms (line 50) | def _now_ms() -> int: function _assert_recent_timestamp_ms (line 54) | def _assert_recent_timestamp_ms(ts: int, *, tolerance_ms: int = 180_000)... function _assert_endpoint_has_port (line 61) | def _assert_endpoint_has_port(endpoint: str, expected_port: int) -> None: function _assert_terminal_event_contract (line 76) | def _assert_terminal_event_contract( function _buffer_attempt_handlers_sync (line 103) | def _buffer_attempt_handlers_sync( function run_with_retry_sync (line 159) | def run_with_retry_sync( function managed_ctx_sync (line 231) | def managed_ctx_sync(code_interpreter: CodeInterpreterSync, language: str): function managed_ctx_stack_sync (line 246) | def managed_ctx_stack_sync(code_interpreter: CodeInterpreterSync, langua... class TestCodeInterpreterE2ESync (line 254) | class TestCodeInterpreterE2ESync: method _ci_lifecycle (line 261) | def _ci_lifecycle(self, request): method _ensure_code_interpreter_created (line 286) | def _ensure_code_interpreter_created(cls) -> None: method test_01_creation_and_basic_functionality (line 325) | def test_01_creation_and_basic_functionality(self): method test_02_java_code_execution (line 365) | def test_02_java_code_execution(self): method test_03_python_code_execution (line 477) | def test_03_python_code_execution(self): method test_04_go_code_execution (line 594) | def test_04_go_code_execution(self): method test_05_typescript_code_execution (line 695) | def test_05_typescript_code_execution(self): method test_06_multi_language_support_and_context_isolation (line 786) | def test_06_multi_language_support_and_context_isolation(self): method test_07_concurrent_code_execution (line 875) | def test_07_concurrent_code_execution(self): method test_08_code_execution_interrupt (line 960) | def test_08_code_execution_interrupt(self): method test_09_context_management_endpoints (line 1039) | def test_09_context_management_endpoints(self): FILE: tests/python/tests/test_sandbox_e2e.py function _now_ms (line 68) | def _now_ms() -> int: function _assert_recent_timestamp_ms (line 72) | def _assert_recent_timestamp_ms(ts: int, *, tolerance_ms: int = 60_000) ... function _assert_endpoint_has_port (line 79) | def _assert_endpoint_has_port(endpoint: str, expected_port: int) -> None: function _assert_times_close (line 100) | def _assert_times_close(created_at, modified_at, *, tolerance_seconds: f... function _assert_modified_updated (line 109) | def _assert_modified_updated(before, after, *, min_delta_ms: int = 0, al... class TestSandboxE2E (line 121) | class TestSandboxE2E: method _sandbox_lifecycle (line 129) | async def _sandbox_lifecycle(self, request): method _ensure_sandbox_created (line 147) | async def _ensure_sandbox_created(cls): method test_01_sandbox_lifecycle_and_health (line 181) | async def test_01_sandbox_lifecycle_and_health(self): method test_01b_manual_cleanup (line 298) | async def test_01b_manual_cleanup(self): method test_01a_network_policy_create (line 320) | async def test_01a_network_policy_create(self): method test_01aa_network_policy_get_and_patch (line 351) | async def test_01aa_network_policy_get_and_patch(self): method test_01ab_network_policy_get_and_patch_with_server_proxy (line 416) | async def test_01ab_network_policy_get_and_patch_with_server_proxy(self): method test_01b_host_volume_mount (line 475) | async def test_01b_host_volume_mount(self): method test_01c_host_volume_mount_readonly (line 543) | async def test_01c_host_volume_mount_readonly(self): method test_01d_pvc_named_volume_mount (line 595) | async def test_01d_pvc_named_volume_mount(self): method test_01e_pvc_named_volume_mount_readonly (line 662) | async def test_01e_pvc_named_volume_mount_readonly(self): method test_01f_pvc_named_volume_subpath_mount (line 714) | async def test_01f_pvc_named_volume_subpath_mount(self): method test_02_basic_command_execution (line 787) | async def test_02_basic_command_execution(self): method test_02a_command_status_and_logs (line 949) | async def test_02a_command_status_and_logs(self): method test_02b_run_command_with_envs (line 980) | async def test_02b_run_command_with_envs(self): method test_03_basic_filesystem_operations (line 1014) | async def test_03_basic_filesystem_operations(self): method test_04_interrupt_command (line 1233) | async def test_04_interrupt_command(self): method test_05_sandbox_pause (line 1302) | async def test_05_sandbox_pause(self): method test_06_sandbox_resume (line 1356) | async def test_06_sandbox_resume(self): method test_07_x_request_id_passthrough_on_server_error (line 1416) | async def test_07_x_request_id_passthrough_on_server_error(self): FILE: tests/python/tests/test_sandbox_e2e_sync.py function _now_ms (line 68) | def _now_ms() -> int: function _assert_recent_timestamp_ms (line 72) | def _assert_recent_timestamp_ms(ts: int, *, tolerance_ms: int = 60_000) ... function _assert_endpoint_has_port (line 79) | def _assert_endpoint_has_port(endpoint: str, expected_port: int) -> None: function _assert_times_close (line 99) | def _assert_times_close(created_at, modified_at, *, tolerance_seconds: f... function _assert_modified_updated (line 108) | def _assert_modified_updated(before, after, *, min_delta_ms: int = 0, al... class TestSandboxE2ESync (line 119) | class TestSandboxE2ESync: method _sandbox_lifecycle (line 127) | def _sandbox_lifecycle(self, request): method _ensure_sandbox_created (line 152) | def _ensure_sandbox_created(cls) -> None: method test_01_sandbox_lifecycle_and_health (line 183) | def test_01_sandbox_lifecycle_and_health(self) -> None: method test_01b_manual_cleanup (line 264) | def test_01b_manual_cleanup(self) -> None: method test_01a_network_policy_create (line 283) | def test_01a_network_policy_create(self) -> None: method test_01aa_network_policy_get_and_patch (line 318) | def test_01aa_network_policy_get_and_patch(self) -> None: method test_01b_host_volume_mount (line 383) | def test_01b_host_volume_mount(self) -> None: method test_01c_host_volume_mount_readonly (line 452) | def test_01c_host_volume_mount_readonly(self) -> None: method test_01d_pvc_named_volume_mount (line 508) | def test_01d_pvc_named_volume_mount(self) -> None: method test_01e_pvc_named_volume_mount_readonly (line 577) | def test_01e_pvc_named_volume_mount_readonly(self) -> None: method test_01f_pvc_named_volume_subpath_mount (line 633) | def test_01f_pvc_named_volume_subpath_mount(self) -> None: method test_02_basic_command_execution (line 706) | def test_02_basic_command_execution(self) -> None: method test_02a_command_status_and_logs (line 831) | def test_02a_command_status_and_logs(self) -> None: method test_02b_run_command_with_envs (line 863) | def test_02b_run_command_with_envs(self) -> None: method test_03_basic_filesystem_operations (line 898) | def test_03_basic_filesystem_operations(self) -> None: method test_04_interrupt_command (line 1084) | def test_04_interrupt_command(self) -> None: method test_05_sandbox_pause (line 1149) | def test_05_sandbox_pause(self) -> None: method test_06_sandbox_resume (line 1199) | def test_06_sandbox_resume(self) -> None: method test_07_x_request_id_passthrough_on_server_error (line 1246) | def test_07_x_request_id_passthrough_on_server_error(self) -> None: FILE: tests/python/tests/test_sandbox_manager_e2e.py function _create_sandbox (line 45) | async def _create_sandbox( function _wait_for_state (line 66) | async def _wait_for_state( class TestSandboxManagerE2E (line 85) | class TestSandboxManagerE2E: method _manager_setup (line 96) | async def _manager_setup(self, request): method test_01_states_filter_or_logic (line 170) | async def test_01_states_filter_or_logic(self): method test_02_metadata_filter_and_logic (line 200) | async def test_02_metadata_filter_and_logic(self): FILE: tests/python/tests/test_sandbox_manager_e2e_sync.py class TestSandboxManagerE2ESync (line 40) | class TestSandboxManagerE2ESync: method test_01_states_filter_or_logic (line 42) | def test_01_states_filter_or_logic(self): method test_02_metadata_filter_and_logic (line 132) | def test_02_metadata_filter_and_logic(self):