agentenv-framework 0.9.1304__tar.gz → 0.9.1306__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/PKG-INFO +4 -4
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/README.md +1 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/README.md +80 -7
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/pyproject.toml +1 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/__init__.py +10 -0
- agentenv_framework-0.9.1306/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/_trajectory_log.py +244 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/extensions.py +79 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/framework.py +93 -48
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/tasks/__init__.py +2 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/tasks/v1.py +67 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_a2a_agent.py +19 -14
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_a2a_object_transfers.py +5 -4
- agentenv_framework-0.9.1306/packages/agentenv-protocol/tests/test_a2a_trajectory_log.py +634 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/pyproject.toml +3 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/a2a_agent.py +17 -14
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/object_transfer.py +6 -2
- agentenv_framework-0.9.1306/src/agent_env/a2a_agent/trajectory_follower.py +123 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/docker_image.py +5 -5
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/ledger.py +17 -4
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/materialize.py +51 -22
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/preflight.py +101 -71
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/run.py +14 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/run.py +4 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/mcp_server.py +4 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/multi_env.py +3 -2
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/website.py +4 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/gateway.py +57 -13
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_providers/env_gateway_provider.py +93 -51
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_providers/env_provider.py +4 -11
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_providers/env_server_provider.py +13 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_state/local_postgres.py +4 -4
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/chained_sandbox_provider.py +17 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/e2b/provider.py +4 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/local_sandbox.py +12 -0
- agentenv_framework-0.9.1306/src/agent_env/providers/sandbox_providers/modal_image_build.py +140 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/modal_sandbox.py +100 -55
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/modal_vm_sandbox.py +3 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sail_vm/provider.py +3 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sandbox.py +10 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sandbox_provider.py +52 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/teardown.py +2 -2
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/snapshot_utils/agent_state_capture.py +11 -8
- agentenv_framework-0.9.1306/src/agent_env/task_step/snapshot_utils/live_trajectory.py +235 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/deploy_env.py +16 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/prompt_agent.py +175 -130
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/build_context.py +28 -4
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/a2a_agent/agent.py +20 -8
- agentenv_framework-0.9.1306/tst/integration/task_step/test_prompt_agent_live_trajectory_local.py +130 -0
- agentenv_framework-0.9.1306/tst/unit/a2a_agent/context_only_deploy_test.py +131 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/deploy_cleanup_test.py +2 -2
- agentenv_framework-0.9.1306/tst/unit/a2a_agent/test_trajectory_follower.py +355 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_docker_image_build_context.py +2 -2
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_docker_image_github_push.py +2 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/materialize_test.py +38 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/preflight_test.py +134 -23
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/run_teardown_test.py +2 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/run_test.py +2 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/eval_run_teardown_test.py +2 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/conftest.py +3 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_env_close_teardown.py +24 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_mcp_server_container_mode.py +4 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_mcp_server_plugin_provider.py +2 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_name.py +2 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_plugin_provider.py +30 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_vm_sizing.py +2 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/gateway_card_test.py +81 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_providers/env_gateway_provider_test.py +141 -31
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_providers/env_provider_test.py +8 -20
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_providers/env_server_provider_test.py +34 -5
- agentenv_framework-0.9.1306/tst/unit/providers/sandbox_providers/modal_context_build_test.py +241 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_create_signature_test.py +24 -3
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_gpu_sandbox_test.py +5 -4
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_sandbox_test.py +19 -2
- agentenv_framework-0.9.1306/tst/unit/providers/sandbox_providers/provider_capabilities_test.py +129 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/sandbox_provider_test.py +68 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/vm_sandbox_test.py +23 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/teardown_test.py +2 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/deploy_env_test.py +111 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/local_container_urls_test.py +2 -1
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_deploy_agent_enable_docker.py +2 -2
- agentenv_framework-0.9.1306/tst/unit/task_step/test_prompt_agent_live_trajectory.py +213 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/utils/build_context_test.py +58 -1
- agentenv_framework-0.9.1306/tst/util/sandbox_providers.py +16 -0
- agentenv_framework-0.9.1304/tst/unit/a2a_agent/context_only_deploy_test.py +0 -67
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/.github/scripts/check_clean_install.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/.github/scripts/check_plugin_api.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/.github/scripts/check_skip_policy.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/.github/scripts/clean_install.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/.gitignore +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/LICENSE +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/NOTICE +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/THIRD_PARTY_NOTICES.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/LICENSE +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/NOTICE +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/THIRD_PARTY_NOTICES.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/advanced_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/basic_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/custom_extensions_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/multimodal_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/reference_model.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/examples/streaming_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/_triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/registry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/a2a_agent/staging.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/agent_env_environment.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/client.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/manifest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/preflight.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/transfers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/src/agentenv_protocol/types.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_a2a_agent_examples.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_a2a_staging.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_agent_env_environment.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_client.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_data_objects.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_intake.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_manifest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/tests/test_preflight.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/conversation_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/protocol.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/staging.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/a2a_agent/validator.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifact.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/cli.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/environment.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/environment_universe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/file.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/file_artifact_universe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/artifacts/skill.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/ref.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/registry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/artifact/universe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/attribution.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/_fs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/authoring.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/installed.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/parse.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/plan.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/bundle/resolve.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/__main__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/_installers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/_plugin_changes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/add_skill.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/deploy.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/get.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/get_instance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/put.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/a2a_agent/validate.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/artifact/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/artifact/cli.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/artifact/environment.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/artifact/environment_universe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/artifact/file_artifact_universe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/artifact/skill.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/banner.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/deploy.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/gateway.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/get_instance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/mcp_server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/multi.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/service_db.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/snapshot.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/state/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/state/init.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/state/teardown.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/website.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/env/website_browser.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/eval/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/eval/add_tasks.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/eval/create.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/eval/run.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/identity/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/identity/client_identity.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/plugin.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/task/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/task/create.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/task/get.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/task/get_instance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/task/run.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/task/validate.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/teardown_output.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/up.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/cli/utils.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/describe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/errors.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/loader.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/model.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/paths.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/plugin_tables.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/provenance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/runtime.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/config/snapshot.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/entity_refs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/bootstrap.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/env.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/env_artifact_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/_deployment.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/gateway_server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/service_db/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/service_db/Dockerfile.db-mcp +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/service_db/Dockerfile.db-web +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/service_db.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/website_browser/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/website_browser/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/envs/website_browser/entrypoint.sh +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/clock.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/constants.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/entrypoint.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/get_time.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/requirements.txt +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/gateway/triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/legacy_protocol.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/registry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/snapshot_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/env/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/eval/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/eval/eval.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/eval/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/examples/hello/README.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/examples/hello/artifacts/greeting/check.sh +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/examples/hello/artifacts/greeting/hello.txt +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/examples/hello/tasks/hello.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/app.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/entity_ids.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/openapi_docs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/plugin.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/routers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/routers/common.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/routers/conversations.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/routers/objects.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/routers/runs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/routers/triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/.env.example +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/.gitignore +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/README.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/eslint.config.mjs +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/next-env.d.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/next.config.mjs +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/package-lock.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/package.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/postcss.config.mjs +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/prettier.config.js +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/android-chrome-192x192.png +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/android-chrome-512x512.png +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/apple-touch-icon.png +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/favicon.ico +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/favicon.svg +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/logos/agentenv-icon.svg +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/logos/claude.svg +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/logos/scale-logo.svg +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/public/site.webmanifest +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/scripts/run-smokes.mjs +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/advertised-agent-card.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/advertised-environment-card.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/agent-detail-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/agents-hub-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/backend-status-banner.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/conversations-panel.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/docs-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/env-detail-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/environments-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/flow-shared.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/home-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/mcp-env-validation-entry.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/peer-qna-panel.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/rollout-deep-link.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/rubric-grading-results.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/rubric-matrix.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/run-group-step-funnel.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/run-step-progress.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/server-config-panel.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/shared.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/start-runs-panel.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/step-attempt-failures.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/step-progress.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/steps-pipeline.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/task-detail-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/task-instance-viewer.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/task-runner-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/task-steps-shared.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/tasks-hub-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/trajectory-viewer.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/trigger-timeline.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/triggers-graph.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/triggers-panel.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/universe-detail-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/components/universes-page.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/env.mjs +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/hooks/useLiveTriggers.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/hooks/useRunGroupPolling.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/pages/[[...slug]].tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/pages/_app.tsx +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/styles/globals.css +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/styles/tokens.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/src/types/pptx-preview.d.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/tailwind.config.ts +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/explorer/ui/tsconfig.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/_cli.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/_discovery.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/_inventory.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/_registration.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/_report.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/plugins/_requirements.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_providers/constants.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_state/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_state/env_state_provider.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/env_state/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/e2b/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/e2b/sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/e2b/template.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sail_vm/README.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sail_vm/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sail_vm/_sdk.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sail_vm/model_key.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/providers/sandbox_providers/sail_vm/sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/py.typed +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/runner/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/runner/local_runner.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/runner/runner.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/runner/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/_google.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/_lazy.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/base.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/dynamodb_document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/evaluation.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/firestore_mongo_document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/mongo_document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/document_store/sqlite_document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/ids.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/ecr_image_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/google_credentials.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/image_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/local_registry_image_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/oci_registry_credentials.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/image_store/registry_api.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/local_state.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/gcs_object_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/local/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/local/grant_server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/local/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/local/tls.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/local/tokens.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/object_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/object_store/s3_object_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/query.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/routing.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/secret_store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/secret_store/aws_secrets_manager_secret_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/secret_store/gcp_secret_manager_secret_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/secret_store/local_secret_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/store/secret_store/secret_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/interrupts.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/registry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/step_journal.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task/task.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/context.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/context_ops.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/registry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/review_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/snapshot_utils/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/snapshot_utils/snapshot_series.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_step.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/README.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/clip.m4a +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/clip.mp3 +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/clip.mp4 +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/clip.ogg +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/clip.wav +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/document.pdf +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/red.gif +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/red.jpg +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/fixtures/red.png +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_agent_card.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_agent_config_identity.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_agent_mcp.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_core_protocol.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_install.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_modalities.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_peer_agents.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_role.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_skill_config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_snapshot.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_system_prompt.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/a2a_agent_validator/verify_a2a_trajectory.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/add_skills.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/apply_server_config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/collect_artifacts.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/deploy_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/deploy_human_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/deploy_sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/env_card_validator/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/env_card_validator/verify_env_card.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/env_card_validator/verify_env_core_protocol.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/install_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/load_artifact.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_cli_builder/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_cli_builder/build_mcp_cli.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_cli_builder/codegen.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_env_validator/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_env_validator/validation_gate_aggregator.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_env_validator/verify_mcp_env_assessment.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_env_validator/verify_mcp_tool_schema.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/mcp_env_validator/verify_spec_conformance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/modify_env_tool_access.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/multienv_validator/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/multienv_validator/combine_universe_verdicts.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/multienv_validator/universe_comparison.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/multienv_validator/verify_universe_agent_judge.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/multienv_validator/verify_universe_roundtrip.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/peer_agents.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/register_agent_triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/register_env_triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/reset_env.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/review.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/run_code.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/run_code_runner.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/run_docker_container.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/sandbox_utils/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/sandbox_utils/sandbox_utils.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/snapshot_agent_state.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/snapshot_env.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/sync_env_clock.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/teardown_sandboxes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/agent_prompt_response_verifier.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/aggregate_verifiers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/env_outcome_verifier.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/judge_utils/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/judge_utils/frame_selection.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/judge_utils/judge_output_format.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/judge_utils/trajectory_filter.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/rubrics_verifier.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/run_container_unit_tests_verifier.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/scoring.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/task_steps/verifiers/verify_sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/task_step/thread_work.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/build_metadata.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/card_naming.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/deprecation.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/docker_build.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/exec_retry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/src/agent_env/utils/paths.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/benchmarks/explorer_reads.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/benchmarks/journal_union.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/benchmarks/task_graphs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/benchmarks/version_lookup.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/conftest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/a2a_agent/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/agentenv_mcp/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/agentenv_mcp/seed.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/agentenv_mcp/server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/agentenv_website/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/agentenv_website/server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/base_mcp/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/base_mcp/base_database.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/base_mcp/base_service.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/cardless_mcp/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/cardless_mcp/server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_artifact.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/database.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/email_service.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/generated_data.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/models.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/requirements.txt +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/email_mcp/sample_data.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/legacy_stub/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/legacy_stub/server.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/skills/sample_skill/SKILL.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/skills/sample_skill/references/notes.md +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/skills/sample_skill/scripts/hello.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/database.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/generated_data.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/models.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/requirements.txt +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/sample_data.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_mcp/slack_service.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/api/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/api/routes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/app.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/db_extensions.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/requirements.txt +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/backend/schemas.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/frontend/Dockerfile +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/slack_website/frontend/index.html +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/data/test_outcome_verifier.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/env/gateway/clock_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/env/task_step/deploy_env_resources_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/env/task_step/prompt_agent_parts_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/env/task_step/verify_a2a_modalities_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/installer/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/installer/conftest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/installer/test_container_journey.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/installer/test_plugin_changes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/installer/test_wheel.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/installer/toys.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/agent/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/agent/a2a_agent/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/agent/a2a_agent/a2a_agent_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/agent/a2a_agent/agent_triggers_e2e_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/agent/a2a_agent/conversation_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/conftest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/docker_image_artifact_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/environment_artifact_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/environment_universe_artifact_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/file_artifact_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/file_artifact_universe_artifact_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/artifact/artifacts/skill_artifact_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/cli/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/cli/cli_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/cli/run_bundle_built_agents_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/cli/run_bundle_built_envs_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/cli/run_bundle_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/custom_env_config_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/env_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/envs/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/envs/multi_env_local_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/envs/server_env_local_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/envs/server_env_modal_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/envs/service_db_changelog_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/gateway/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/gateway/gateway_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/task_step/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/task_step/task_steps_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/task_step/test_record_step_concurrency.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/env/task_step/test_task_instance_retry_resume.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/eval/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/eval/eval_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/providers/sandbox_providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/providers/sandbox_providers/e2b_sandbox_smoke_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/providers/sandbox_providers/sail_vm_sandbox_smoke_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/providers/state/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/store/local_image_composition_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/store/local_parallel_deploy_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/store/local_registry_image_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/store/local_task_lifecycle_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/store/oci_registry_image_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/review_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_agent_on_local_sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_container_sandbox_files_local.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_enable_docker_e2e.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_multiturn_verifier_delivery.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_prompt_agent_file_parts_local.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_run_code_named_sandbox_local.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_run_docker_container_local.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/integration/task_step/test_verify_sandbox_local.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/store/conformance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/store/image_conformance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/store/object_conformance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/store/secret_conformance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/task/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/task/journal_invariants.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/add_skill_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/negotiate_agent_config_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/object_transfer_reach_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/object_transfer_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/protocol_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/readable_parts_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/staging_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/test_validator_changelog_objects.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/test_validator_skill_variants.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/validator_trajectory_dag_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/validator_uri_probes_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/a2a_agent/verify_a2a_agent_card_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/registry_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_artifact_put.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_docker_image_github_clone.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_docker_image_pulled.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_docker_image_put_ref.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_object_url_keys.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_removed_service_aliases.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_service_artifact_alias.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_service_universe_file_view.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/artifact/test_store_put_document.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/attribution_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/_support.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/artifact_toml_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/authoring_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/conftest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/env_toml_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/file_artifacts_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/installed_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/ledger_digest_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/ledger_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/parse_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/plan_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/resolve_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/bundle/toml_refs_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/base_metadata_version_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/build_platform_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/card_naming_relocation_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/deploy_vm_sizing_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/deployed_env_output_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/env_provider_type_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/env_put_validation_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/env_state_type_parity_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/environment_name_alias_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/golden/plugin_report/check.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/golden/plugin_report/check_broken.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/golden/plugin_report/list.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/golden/plugin_report/list_no_load.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/golden/plugin_report/show.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/golden/plugin_report/show_bundles.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/image_ref_put_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/init_env_state_cli_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/load_artifact_target_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/plugin_command_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/plugin_install_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/plugin_report_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/plugins_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/sandbox_url_relocation_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/stage_free_commands_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/task_run_teardown_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/teardown_env_state_cli_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/test_release_gate_decision.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/test_removed_cli_aliases.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/test_spec_conformance_display.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/test_task_create_preflight.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/user_facing_errors_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/cli/write_context_filename_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_config_holds_its_document.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_config_profiles.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_default_a2a_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_describe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_explain_and_sources.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_fixture_prefix_keys.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_human_a2a_url.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_loader.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_model.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_no_stage_concept.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_one_document_per_process.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_paths.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_registry_builders_take_a_config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_reset_config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/config/test_unread_keys.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/bootstrap_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/service_db/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/service_db/service_db_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_env_card_loads.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_environment_name_alias.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_mcp_server_load.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_load_concurrency.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_load_resume.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_snapshot_bake.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_snapshot_guard.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_multi_env_snapshot_reload_name.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_put_from_github_token.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/envs/test_website_env_name_alias.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/data_plane_timeout_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/env_trajectory_route_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/get_time_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/import_graph_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/rest_proxy_socket_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/rest_proxy_stream_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/role_rules_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/trajectory_virtual_time_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/triggers_ctx_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/triggers_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/gateway/triggers_time_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/task_step/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/task_step/deploy_agent_env_vars_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/task_step/test_context_ops.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/task_step/test_score_aggregator.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/task_step/verify_env_card_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/task_step/verify_env_core_protocol_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/test_env.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/test_legacy_protocol.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/test_registry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/env/test_snapshot_fingerprint.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/event_loop_probe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/explorer/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/explorer/entity_ids_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/explorer/explorer_app_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/plugin_inventory_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/plugin_requirements_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/plugin_settings_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/plugins_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/compose_host_port_publish_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_state/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_state/fakes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_state/test_config_state_providers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/env_state/test_env_state_provider.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/attribution_wire_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/e2b_sandbox_provider_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/e2b_sandbox_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/e2b_template_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/egress_hosts_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/local_sandbox_host_ports_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/local_sandbox_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_network_policy_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_network_policy_wiring_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_sandbox_started_log_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_sandbox_tags_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/modal_vm_sandbox_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/network_policy_providers_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/network_policy_stamping_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/network_policy_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/sail_vm_model_key_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/sail_vm_sandbox_provider_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/sail_vm_sandbox_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/test_config_sandbox_providers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/test_reachability_contributions.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/test_url_rewrites.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/vm_file_transfer_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/providers/sandbox_providers/vm_object_push_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/runner/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/runner/local_runner_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/runner/run_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/cli.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/docker_image.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/environment.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/environment_universe.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/file.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/file_artifact_universe.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/artifact/skill.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/env/gateway_server.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/env/mcp_server.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/env/multi.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/env/service_db.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/golden/env/website.json +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/serialization/test_golden_wire_format.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/aws_secret_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/conftest.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/dynamodb_document_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/dynamodb_step_journal_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/ecr_image_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/s3_grant_lifetime_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/s3_object_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/s3_transfer_grants_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/test_secret_logging.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/aws/test_shared_credentials.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/derived_ids_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/fake_object_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/fakes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/firestore_mongo_document_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/gcp_secret_manager_secret_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/gcs_object_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/google_credentials_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/google_transport_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/grant_lifetime_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/ids_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_backends_composition_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_grant_server_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_id_acceptance_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_object_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_registry_image_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_secret_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_tls_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/local_tokens_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/mongo_document_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/oci_registry_credentials_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/oci_registry_image_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/readable_url_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/registry_api_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/routing_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/sqlite_document_store_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_image_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_model.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_mongo_client.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_object_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_secret_bundle_keys.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_config_secret_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_document_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_object_transfer_grants.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/test_task_instance_indexes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/store/version_lookup_benchmark_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/batch_universe_ids_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/benchmark_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/depends_on_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/local_run_write_fence_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/step_journal_rules_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/step_journal_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/task_document_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/task_failure_write_retry_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task/task_instance_reads_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/attribution_serialization_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/capture_stubs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/context_ops_journal_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/deploy_agent_cleanup_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/deploy_agent_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/deploy_human_agent_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/deploy_sandbox_network_policy_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/deploy_sandbox_provider_override_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/install_agent_guards_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/install_agent_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/local_step_containers_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/prompt_agent_file_parts_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/retry_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/run_context_object_url_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/run_docker_container_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/skill_object_url_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/snapshot_env_upload_grant_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/stored_priority_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/stored_s3_form_fields_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/sync_env_clock_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_agent_model_precedence.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_agent_state_capture.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_apply_server_config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_collect_artifacts.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_collect_artifacts_universe_suffix.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_collect_artifacts_vm_host.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_collect_integrity.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_combine_universe_verdicts.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_config_task_steps.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_container_sandbox_routing.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_deploy_agent_changelog_objects.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_deploy_agent_live_endpoint.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_deploy_agent_mcp_alias.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_deploy_agent_snapshot_objects.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_deploy_ttl_from_budget.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_entity_refs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_install_agent_registers_instance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_agent_container_target.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_container_sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_env_binding.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_file.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_overrides.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_service_payload.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_service_universe.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_snapshot_reporting.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_url_filenames.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_load_artifact_vm_target.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_manifest_cli_builder.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_mcp_cli_builder.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_modify_env_tool_access.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_parallel_deploy_env_binding.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent_human_default.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent_model_params.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent_snapshots.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent_triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent_unreachable.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_prompt_agent_user_model.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_register_agent_triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_register_env_triggers.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_reset_env.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_review.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_run_code.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_sandbox_utils_agent_container.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_sandbox_utils_logs.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_snapshot_agent_state.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_snapshot_env.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_snapshot_env_env_binding.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_teardown_sandboxes.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_universe_comparison.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_validation_gate_aggregator.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_verify_a2a_agent_mcp.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_verify_spec_conformance.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_verify_universe_agent_judge.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/test_verify_universe_roundtrip.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/thread_work_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/judge_short_keys_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/judge_utils/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/judge_utils/test_frame_selection.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/judge_utils/test_frame_selection_tool_name.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/judge_utils/test_judge_output_format.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/judge_utils/test_trajectory_filter.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/run_container_unit_tests_verifier_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_env_outcome_verifier_step.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_criteria_override.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_judge_retry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_judge_teardown.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_judge_timeout.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_judge_trajectory.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_mistakes_entry.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_multiturn.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_per_criterion.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_rubrics_verifier_screenshots.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_score_parity.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_trajectory_mistakes_format.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/task_step/verifiers/test_verify_sandbox.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_capabilities.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_check_plugin_api.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_check_skip_policy.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_clean_install_wheel.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_client_identity.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_optional_extras_stay_optional.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_runtime_dependencies_are_imported.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/test_tls_verification.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/utils/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/utils/docker_build_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/utils/exec_retry_test.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/utils/test_card_naming_github_token.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/unit/utils/test_paths.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/__init__.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/a2a_test_agent.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/capabilities.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/config.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/exec_scripts.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/fake_a2a.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/granting_object_store.py +0 -0
- {agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/tst/util/image_cache.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: agentenv-framework
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.1306
|
|
4
4
|
Summary: SDK and CLI for building, deploying and running agent environments and the tasks that grade agents in them.
|
|
5
5
|
Project-URL: Homepage, https://www.agentenvframework.com
|
|
6
6
|
Project-URL: Documentation, https://www.agentenvframework.com/docs
|
|
@@ -27,9 +27,9 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
27
27
|
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
28
28
|
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
|
|
29
29
|
Classifier: Typing :: Typed
|
|
30
|
-
Requires-Python: >=3.11
|
|
30
|
+
Requires-Python: >=3.11.4
|
|
31
31
|
Requires-Dist: a2a-sdk==0.3.26
|
|
32
|
-
Requires-Dist: agentenv-framework-protocol==0.1.
|
|
32
|
+
Requires-Dist: agentenv-framework-protocol==0.1.321
|
|
33
33
|
Requires-Dist: certifi>=2024.2.2
|
|
34
34
|
Requires-Dist: click>=8.0.0
|
|
35
35
|
Requires-Dist: cryptography>=42
|
|
@@ -94,7 +94,7 @@ AgentEnv Framework is a Python SDK and CLI for building, deploying and running a
|
|
|
94
94
|
|
|
95
95
|
## Install
|
|
96
96
|
|
|
97
|
-
Both packages are on PyPI. You need Python 3.11 or newer and, to run environments locally, a running Docker daemon. With [uv](https://docs.astral.sh/uv/), install the `agent-env` command as a tool:
|
|
97
|
+
Both packages are on PyPI. You need Python 3.11.4 or newer and, to run environments locally, a running Docker daemon. With [uv](https://docs.astral.sh/uv/), install the `agent-env` command as a tool:
|
|
98
98
|
|
|
99
99
|
```bash
|
|
100
100
|
uv tool install agentenv-framework
|
|
@@ -11,7 +11,7 @@ AgentEnv Framework is a Python SDK and CLI for building, deploying and running a
|
|
|
11
11
|
|
|
12
12
|
## Install
|
|
13
13
|
|
|
14
|
-
Both packages are on PyPI. You need Python 3.11 or newer and, to run environments locally, a running Docker daemon. With [uv](https://docs.astral.sh/uv/), install the `agent-env` command as a tool:
|
|
14
|
+
Both packages are on PyPI. You need Python 3.11.4 or newer and, to run environments locally, a running Docker daemon. With [uv](https://docs.astral.sh/uv/), install the `agent-env` command as a tool:
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
17
|
uv tool install agentenv-framework
|
{agentenv_framework-0.9.1304 → agentenv_framework-0.9.1306}/packages/agentenv-protocol/README.md
RENAMED
|
@@ -280,8 +280,9 @@ executor maps them to and from the wire-level `a2a.types.Task` lifecycle.
|
|
|
280
280
|
`TaskRequest` is a frozen record whose nested JSON values are detached copies.
|
|
281
281
|
Its `config`, `mcp_servers`, `skills`, `metadata`, and inbound `DataPart.data`
|
|
282
282
|
retain their declared `dict`/`list` types, so normal Pydantic serialization,
|
|
283
|
-
copying, and `json.dumps(...)` work.
|
|
284
|
-
|
|
283
|
+
copying, and `json.dumps(...)` work. `TaskRequest.trajectory` is the exception:
|
|
284
|
+
it is the task's live trajectory log, described below. Within `tasks.v1`, new
|
|
285
|
+
request fields are additive and have framework defaults. Agent code returns a `TaskResult` through
|
|
285
286
|
its factories or builder so additions to the result contract do not break
|
|
286
287
|
existing handlers.
|
|
287
288
|
|
|
@@ -304,7 +305,77 @@ The SDK does not retry tasks.
|
|
|
304
305
|
A client that gives up on a task sends `tasks/cancel`. The framework marks the
|
|
305
306
|
task canceled and cancels `run()`, which gets `asyncio.CancelledError` at its
|
|
306
307
|
next `await`. A process `run()` started keeps running unless `run()` stops it,
|
|
307
|
-
so kill it before re-raising.
|
|
308
|
+
so kill it before re-raising. Trajectory events it appended, including any it
|
|
309
|
+
appends while cleaning up, are kept, and its log ends `canceled`.
|
|
310
|
+
|
|
311
|
+
#### Live trajectories
|
|
312
|
+
|
|
313
|
+
A runtime that sees its native events as they happen appends each complete
|
|
314
|
+
event to `request.trajectory` and enables `TRAJECTORY_V1` with `live=True`:
|
|
315
|
+
|
|
316
|
+
```python
|
|
317
|
+
@a2a_agent(identity=..., extensions=(enable(TRAJECTORY_V1, live=True),))
|
|
318
|
+
class MyAgent(AgentEnvAgent):
|
|
319
|
+
async def run(self, request: TaskRequest[MyAgentConfig]) -> TaskResult:
|
|
320
|
+
request.trajectory.set_format("my-cli-events/1")
|
|
321
|
+
execution = await run_my_cli(request, on_event=request.trajectory.append)
|
|
322
|
+
return TaskResult.text(execution.output)
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
`append(event)` takes a JSON object and serializes it at once, so an event
|
|
326
|
+
never changes after it is appended and a read never returns part of one. It does
|
|
327
|
+
no I/O; call it from one thread at a time. After the task ends the log refuses
|
|
328
|
+
further events. `set_format` names the events' versioned format, which readers
|
|
329
|
+
use to parse them; call it before the first `append`, which otherwise raises.
|
|
330
|
+
Once an event is appended the format cannot change.
|
|
331
|
+
|
|
332
|
+
The framework keeps each task's log and serves it while the task runs. When the
|
|
333
|
+
result carries no `native_trajectory`, the log is the task's final trajectory:
|
|
334
|
+
the completed-task reads `{task_id}` and `{task_id, objects}` return it as a JSON
|
|
335
|
+
array. A `native_trajectory` remains the final record of a runtime that can only
|
|
336
|
+
produce one at the end, and takes precedence over appended events.
|
|
337
|
+
|
|
338
|
+
`live=True` adds two cursor reads to `TRAJECTORY_V1.get`, both framework-owned:
|
|
339
|
+
|
|
340
|
+
| Request | Reads |
|
|
341
|
+
| --- | --- |
|
|
342
|
+
| `{task_id, after, limit?}` | one task's events |
|
|
343
|
+
| `{context_id, after, limit?}` | the events of every task in a context, in execution order |
|
|
344
|
+
|
|
345
|
+
Both answer `{context_id, task_id, state, format, events, next, has_more}`
|
|
346
|
+
(`TrajectoryEventsResponse`):
|
|
347
|
+
|
|
348
|
+
- `events` are the events from position `after`, zero-based. `next` is
|
|
349
|
+
`after` plus the number returned, the position to read from next; `has_more`
|
|
350
|
+
says more events are already readable past this page. A page holds at most
|
|
351
|
+
`limit` events (1 to 1,000, default 1,000) and about 4 MiB, but always at
|
|
352
|
+
least one event when one exists. A `limit` outside 1 to 1,000, or `after` past
|
|
353
|
+
the last event, is HTTP 400.
|
|
354
|
+
- `state` is `pending` before the first event, `running` while the task runs,
|
|
355
|
+
then `completed`, `failed` or `canceled`. A terminal state is reported only
|
|
356
|
+
once the log can no longer change, so a reader that has reached `has_more:
|
|
357
|
+
false` in a terminal state has every event. The terminal state is recorded
|
|
358
|
+
before the task's terminal A2A status, so the completed-task reads succeed as
|
|
359
|
+
soon as a client sees the task end.
|
|
360
|
+
- A context read reports the context's current task, the running one or else the
|
|
361
|
+
latest, and the most recent `format` any of its tasks set; its `state` is
|
|
362
|
+
`running` while any task runs.
|
|
363
|
+
- A task or context the agent has not seen, or no longer keeps, is HTTP 404. A
|
|
364
|
+
task is known from the moment `message/send` returns its id, so a 404 for an
|
|
365
|
+
id that was readable means it was evicted, and any cursor held for it, or for
|
|
366
|
+
its context, is no longer valid.
|
|
367
|
+
|
|
368
|
+
`live=True` also enables the context reads `{context_id}` and
|
|
369
|
+
`{context_id, objects}`; the framework answers them with the context's events
|
|
370
|
+
unless the agent binds its own handlers, which take precedence. An agent that
|
|
371
|
+
overrides the whole `get` operation must accept the cursor requests too.
|
|
372
|
+
Clients detect live support from the card, with
|
|
373
|
+
`card_request_accepts(get_request, {"task_id", "after"})`.
|
|
374
|
+
|
|
375
|
+
The logs are kept in memory for up to 1,024 contexts. Past that, whole contexts
|
|
376
|
+
are dropped, least recently used first; a context with a task still pending or
|
|
377
|
+
running is never dropped, nor is the one whose task has just ended. A running
|
|
378
|
+
task's log is logged as a warning once it passes 100 MiB.
|
|
308
379
|
|
|
309
380
|
`enable(..., description="...")` is reserved for declarations carrying
|
|
310
381
|
configuration or metadata. It preserves the agent-specific extension prose
|
|
@@ -319,7 +390,8 @@ entry in `extensions=` is required.
|
|
|
319
390
|
Configuration keywords are definition-owned rather than hardcoded in
|
|
320
391
|
`enable()`. A configurable `ExtensionDefinition` supplies a named keyword-only
|
|
321
392
|
`configuration_validator` returning `ExtensionConfiguration` with card
|
|
322
|
-
`wire_params`, internal `options`, and optional `features
|
|
393
|
+
`wire_params`, internal `options`, and optional `features` and request
|
|
394
|
+
`variants`. `enable()` only
|
|
323
395
|
dispatches to that callable. Definitions without a validator reject
|
|
324
396
|
configuration keywords, and third-party definitions use the same public API as
|
|
325
397
|
the built-ins.
|
|
@@ -416,9 +488,9 @@ async def get_live_trajectory(self, request: ContextObjectTrajectoryRequest):
|
|
|
416
488
|
The last handler opts that agent into the optional live-context variant of
|
|
417
489
|
`TRAJECTORY_V1.get` that uploads through an object grant;
|
|
418
490
|
`TRAJECTORY_V1.get.context` (`ContextTrajectoryRequest`) is its inline
|
|
419
|
-
counterpart. Without them
|
|
420
|
-
framework-owned completed-task variants:
|
|
421
|
-
`{task_id, objects}`, answered by upload.
|
|
491
|
+
counterpart. Without them, or `enable(TRAJECTORY_V1, live=True)`, the
|
|
492
|
+
generated card advertises only the framework-owned completed-task variants:
|
|
493
|
+
`{task_id}`, answered inline, and `{task_id, objects}`, answered by upload.
|
|
422
494
|
Snapshot `save` and `load` are an atomic core contract, while its optional
|
|
423
495
|
changelog handlers are enabled as an atomic feature group.
|
|
424
496
|
Each operation has at most one response model. The framework validates a
|
|
@@ -556,6 +628,7 @@ optional field, `|` an alternative request):
|
|
|
556
628
|
| skill `add` | `{name, description, skill_md}` \| `{name, description, skill_bundle: {max_total_bytes, files: [{path, object: ReadObject}]}}` | `{name}` |
|
|
557
629
|
| trajectory `get` | `{task_id}` \| `{context_id}` | `{trajectory}` |
|
|
558
630
|
| | `{task_id \| context_id, objects: {trajectory: WriteObject}}` | `{objects: {trajectory: Uploaded}}` |
|
|
631
|
+
| | `{task_id \| context_id, after, limit?}` | `{context_id, task_id, state, format, events, next, has_more}` |
|
|
559
632
|
| snapshot `save` | `{context_id, objects: {trajectory: WriteObject, workspace?: WriteObject}}` | `{context_id, objects: {trajectory: Uploaded, workspace?: Uploaded}}` |
|
|
560
633
|
| snapshot `load` | `{objects: {trajectory: ReadObject, workspace?: ReadObject}, target_context_id?}` | `{context_id}` |
|
|
561
634
|
| `enable-changelog` | `{write_namespace: WriteNamespaceGrant, roots?}` | `{roots}` |
|
|
@@ -16,6 +16,7 @@ from .extensions import (
|
|
|
16
16
|
AttributionProbeResponse,
|
|
17
17
|
BundleSkillRequest,
|
|
18
18
|
ChangelogIncrement,
|
|
19
|
+
ContextEventsTrajectoryRequest,
|
|
19
20
|
ContextObjectTrajectoryRequest,
|
|
20
21
|
ContextTrajectoryRequest,
|
|
21
22
|
ExtensionActivation,
|
|
@@ -48,9 +49,12 @@ from .extensions import (
|
|
|
48
49
|
SnapshotReadObjects,
|
|
49
50
|
SnapshotUploadedObjects,
|
|
50
51
|
SnapshotWriteObjects,
|
|
52
|
+
TaskEventsTrajectoryRequest,
|
|
51
53
|
TaskObjectTrajectoryRequest,
|
|
52
54
|
TaskTrajectoryRequest,
|
|
55
|
+
TrajectoryEventsResponse,
|
|
53
56
|
TrajectoryObjectsResponse,
|
|
57
|
+
TrajectoryState,
|
|
54
58
|
TrajectoryUploadedObjects,
|
|
55
59
|
TrajectoryWriteObjects,
|
|
56
60
|
TriggerDecideRequest,
|
|
@@ -92,6 +96,7 @@ from .tasks.v1 import (
|
|
|
92
96
|
TaskResultBuilder,
|
|
93
97
|
TaskStreamItem,
|
|
94
98
|
TextPart,
|
|
99
|
+
TrajectoryLog,
|
|
95
100
|
Usage,
|
|
96
101
|
WriteOnly,
|
|
97
102
|
)
|
|
@@ -131,6 +136,7 @@ __all__ = [
|
|
|
131
136
|
"AttributionProbeResponse",
|
|
132
137
|
"BundleSkillRequest",
|
|
133
138
|
"ChangelogIncrement",
|
|
139
|
+
"ContextEventsTrajectoryRequest",
|
|
134
140
|
"ContextObjectTrajectoryRequest",
|
|
135
141
|
"ContextTrajectoryRequest",
|
|
136
142
|
"DataPart",
|
|
@@ -177,6 +183,7 @@ __all__ = [
|
|
|
177
183
|
"SnapshotWriteObjects",
|
|
178
184
|
"StagingStore",
|
|
179
185
|
"TaskError",
|
|
186
|
+
"TaskEventsTrajectoryRequest",
|
|
180
187
|
"TaskObjectTrajectoryRequest",
|
|
181
188
|
"TaskOutcome",
|
|
182
189
|
"TaskPart",
|
|
@@ -187,7 +194,10 @@ __all__ = [
|
|
|
187
194
|
"TaskStreamItem",
|
|
188
195
|
"TaskTrajectoryRequest",
|
|
189
196
|
"TextPart",
|
|
197
|
+
"TrajectoryEventsResponse",
|
|
198
|
+
"TrajectoryLog",
|
|
190
199
|
"TrajectoryObjectsResponse",
|
|
200
|
+
"TrajectoryState",
|
|
191
201
|
"TrajectoryUploadedObjects",
|
|
192
202
|
"TrajectoryWriteObjects",
|
|
193
203
|
"TransferError",
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
"""The framework's in-process store of task trajectories, served by the trajectory extension."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import logging
|
|
6
|
+
from collections import OrderedDict
|
|
7
|
+
from dataclasses import dataclass
|
|
8
|
+
|
|
9
|
+
from .extensions import TrajectoryState
|
|
10
|
+
from .tasks.v1 import TrajectoryLog
|
|
11
|
+
|
|
12
|
+
logger = logging.getLogger(__name__)
|
|
13
|
+
|
|
14
|
+
MAX_CACHED_CONTEXTS = 1_024
|
|
15
|
+
MAX_TRAJECTORY_READ_BYTES = 4 * 1024 * 1024
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@dataclass(slots=True)
|
|
19
|
+
class _TaskRecord:
|
|
20
|
+
context_id: str
|
|
21
|
+
log: TrajectoryLog
|
|
22
|
+
started: bool = False
|
|
23
|
+
cancel_requested: bool = False
|
|
24
|
+
final_state: TrajectoryState | None = None
|
|
25
|
+
native: bytes | None = None
|
|
26
|
+
|
|
27
|
+
@property
|
|
28
|
+
def state(self) -> TrajectoryState:
|
|
29
|
+
if self.final_state is not None:
|
|
30
|
+
return self.final_state
|
|
31
|
+
return TrajectoryState.RUNNING if len(self.log) else TrajectoryState.PENDING
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
@dataclass(frozen=True, slots=True)
|
|
35
|
+
class TrajectoryPage:
|
|
36
|
+
context_id: str
|
|
37
|
+
task_id: str
|
|
38
|
+
state: TrajectoryState
|
|
39
|
+
format: str | None
|
|
40
|
+
events: list[bytes]
|
|
41
|
+
total: int
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class TaskTrajectories:
|
|
45
|
+
"""Each task's log and final record, grouped by context in execution order.
|
|
46
|
+
|
|
47
|
+
Past ``max_contexts``, whole contexts are evicted, least recently used first, so
|
|
48
|
+
positions in a context read never shift. A context with a task pending or running is
|
|
49
|
+
never evicted, nor is the one whose task just ended, so its final record is readable."""
|
|
50
|
+
|
|
51
|
+
def __init__(self, max_contexts: int = MAX_CACHED_CONTEXTS) -> None:
|
|
52
|
+
if max_contexts < 1:
|
|
53
|
+
raise ValueError("max_contexts must be positive")
|
|
54
|
+
self._max_contexts = max_contexts
|
|
55
|
+
self._tasks: dict[str, _TaskRecord] = {}
|
|
56
|
+
self._contexts: OrderedDict[str, list[str]] = OrderedDict()
|
|
57
|
+
|
|
58
|
+
def register(self, task_id: str, context_id: str) -> TrajectoryLog:
|
|
59
|
+
"""The task's log, created ``pending`` the first time the task is seen."""
|
|
60
|
+
record = self._tasks.get(task_id)
|
|
61
|
+
if record is None:
|
|
62
|
+
log = TrajectoryLog()
|
|
63
|
+
log._task_id = task_id
|
|
64
|
+
record = self._tasks[task_id] = _TaskRecord(context_id=context_id, log=log)
|
|
65
|
+
self._contexts.setdefault(context_id, []).append(task_id)
|
|
66
|
+
self._touch(record.context_id)
|
|
67
|
+
return record.log
|
|
68
|
+
|
|
69
|
+
def start(self, task_id: str) -> None:
|
|
70
|
+
"""Place the task after the context's started tasks, as it begins to run.
|
|
71
|
+
|
|
72
|
+
Only tasks that have not started move; they have no events, so no position shifts."""
|
|
73
|
+
record = self._tasks[task_id]
|
|
74
|
+
if record.started:
|
|
75
|
+
return
|
|
76
|
+
order = self._contexts[record.context_id]
|
|
77
|
+
order.remove(task_id)
|
|
78
|
+
started = sum(1 for other in order if self._tasks[other].started)
|
|
79
|
+
order.insert(started, task_id)
|
|
80
|
+
record.started = True
|
|
81
|
+
self._touch(record.context_id)
|
|
82
|
+
|
|
83
|
+
def request_cancel(self, task_id: str) -> None:
|
|
84
|
+
"""Make ``canceled`` the outcome the task is sealed with, whatever ``run`` returns."""
|
|
85
|
+
record = self._tasks.get(task_id)
|
|
86
|
+
if record is not None:
|
|
87
|
+
record.cancel_requested = True
|
|
88
|
+
|
|
89
|
+
def seal(
|
|
90
|
+
self, task_id: str, state: TrajectoryState, *, native: bytes | None = None
|
|
91
|
+
) -> None:
|
|
92
|
+
"""End the task's trajectory; the first seal wins."""
|
|
93
|
+
record = self._tasks[task_id]
|
|
94
|
+
if record.final_state is not None:
|
|
95
|
+
return
|
|
96
|
+
if native is not None:
|
|
97
|
+
if len(record.log):
|
|
98
|
+
logger.warning(
|
|
99
|
+
"task %s appended trajectory events and returned a native trajectory; "
|
|
100
|
+
"the native trajectory is its final record",
|
|
101
|
+
task_id,
|
|
102
|
+
)
|
|
103
|
+
record.native = native
|
|
104
|
+
record.log._sealed = True
|
|
105
|
+
record.final_state = TrajectoryState.CANCELED if record.cancel_requested else state
|
|
106
|
+
self._touch(record.context_id)
|
|
107
|
+
self._evict(keep=record.context_id)
|
|
108
|
+
|
|
109
|
+
def final(self, task_id: str) -> bytes | None:
|
|
110
|
+
"""The ended task's final trajectory as a JSON array, or None if there is none yet."""
|
|
111
|
+
record = self._tasks.get(task_id)
|
|
112
|
+
if record is None or record.final_state is None:
|
|
113
|
+
return None
|
|
114
|
+
self._touch(record.context_id)
|
|
115
|
+
if record.native is not None:
|
|
116
|
+
return record.native
|
|
117
|
+
if not len(record.log):
|
|
118
|
+
return None
|
|
119
|
+
return _json_array(record.log._events)
|
|
120
|
+
|
|
121
|
+
def context_events(self, context_id: str) -> bytes | None:
|
|
122
|
+
"""Every event of the context's tasks in order, as a JSON array."""
|
|
123
|
+
records = self._context_records(context_id)
|
|
124
|
+
if records is None:
|
|
125
|
+
return None
|
|
126
|
+
return _json_array([event for record in records for event in record.log._events])
|
|
127
|
+
|
|
128
|
+
def task_page(
|
|
129
|
+
self, task_id: str, after: int, max_events: int, max_bytes: int
|
|
130
|
+
) -> TrajectoryPage | None:
|
|
131
|
+
record = self._tasks.get(task_id)
|
|
132
|
+
if record is None:
|
|
133
|
+
return None
|
|
134
|
+
self._touch(record.context_id)
|
|
135
|
+
# State before length: a terminal state means the length can no longer grow.
|
|
136
|
+
state = record.state
|
|
137
|
+
events = record.log._events
|
|
138
|
+
total = len(events)
|
|
139
|
+
return TrajectoryPage(
|
|
140
|
+
context_id=record.context_id,
|
|
141
|
+
task_id=task_id,
|
|
142
|
+
state=state,
|
|
143
|
+
format=record.log.format,
|
|
144
|
+
events=_page(events, after, total, max_events, max_bytes),
|
|
145
|
+
total=total,
|
|
146
|
+
)
|
|
147
|
+
|
|
148
|
+
def context_page(
|
|
149
|
+
self, context_id: str, after: int, max_events: int, max_bytes: int
|
|
150
|
+
) -> TrajectoryPage | None:
|
|
151
|
+
records = self._context_records(context_id)
|
|
152
|
+
if records is None:
|
|
153
|
+
return None
|
|
154
|
+
task_ids = self._contexts[context_id]
|
|
155
|
+
states = [record.state for record in records]
|
|
156
|
+
lengths = [len(record.log) for record in records]
|
|
157
|
+
current = next(
|
|
158
|
+
(index for index, record in enumerate(records) if record.final_state is None),
|
|
159
|
+
len(records) - 1,
|
|
160
|
+
)
|
|
161
|
+
if TrajectoryState.RUNNING in states:
|
|
162
|
+
state = TrajectoryState.RUNNING
|
|
163
|
+
elif TrajectoryState.PENDING in states:
|
|
164
|
+
state = TrajectoryState.PENDING
|
|
165
|
+
else:
|
|
166
|
+
state = states[-1]
|
|
167
|
+
page: list[bytes] = []
|
|
168
|
+
offset = 0
|
|
169
|
+
for record, length in zip(records, lengths):
|
|
170
|
+
if len(page) >= max_events:
|
|
171
|
+
break
|
|
172
|
+
if after < offset + length:
|
|
173
|
+
start = max(after - offset, 0)
|
|
174
|
+
page.extend(
|
|
175
|
+
_page(
|
|
176
|
+
record.log._events,
|
|
177
|
+
start,
|
|
178
|
+
length,
|
|
179
|
+
max_events - len(page),
|
|
180
|
+
max_bytes - sum(map(len, page)),
|
|
181
|
+
first=not page,
|
|
182
|
+
)
|
|
183
|
+
)
|
|
184
|
+
offset += length
|
|
185
|
+
return TrajectoryPage(
|
|
186
|
+
context_id=context_id,
|
|
187
|
+
task_id=task_ids[current],
|
|
188
|
+
state=state,
|
|
189
|
+
format=next(
|
|
190
|
+
(record.log.format for record in reversed(records) if record.log.format),
|
|
191
|
+
None,
|
|
192
|
+
),
|
|
193
|
+
events=page,
|
|
194
|
+
total=sum(lengths),
|
|
195
|
+
)
|
|
196
|
+
|
|
197
|
+
def _context_records(self, context_id: str) -> list[_TaskRecord] | None:
|
|
198
|
+
task_ids = self._contexts.get(context_id)
|
|
199
|
+
if not task_ids:
|
|
200
|
+
return None
|
|
201
|
+
self._touch(context_id)
|
|
202
|
+
return [self._tasks[task_id] for task_id in task_ids]
|
|
203
|
+
|
|
204
|
+
def _touch(self, context_id: str) -> None:
|
|
205
|
+
if context_id in self._contexts:
|
|
206
|
+
self._contexts.move_to_end(context_id)
|
|
207
|
+
|
|
208
|
+
def _evict(self, *, keep: str) -> None:
|
|
209
|
+
for context_id in tuple(self._contexts):
|
|
210
|
+
if len(self._contexts) <= self._max_contexts:
|
|
211
|
+
return
|
|
212
|
+
task_ids = self._contexts[context_id]
|
|
213
|
+
if context_id == keep or any(
|
|
214
|
+
self._tasks[task_id].final_state is None for task_id in task_ids
|
|
215
|
+
):
|
|
216
|
+
continue
|
|
217
|
+
del self._contexts[context_id]
|
|
218
|
+
for task_id in task_ids:
|
|
219
|
+
del self._tasks[task_id]
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
def _page(
|
|
223
|
+
events: list[bytes],
|
|
224
|
+
start: int,
|
|
225
|
+
stop: int,
|
|
226
|
+
max_events: int,
|
|
227
|
+
max_bytes: int,
|
|
228
|
+
*,
|
|
229
|
+
first: bool = True,
|
|
230
|
+
) -> list[bytes]:
|
|
231
|
+
"""Events from ``start``, within both budgets; the first event of a read is always
|
|
232
|
+
returned, so one larger than ``max_bytes`` cannot stall a reader."""
|
|
233
|
+
page: list[bytes] = []
|
|
234
|
+
used = 0
|
|
235
|
+
for encoded in events[start:min(stop, start + max_events)]:
|
|
236
|
+
if used + len(encoded) > max_bytes and (page or not first):
|
|
237
|
+
break
|
|
238
|
+
page.append(encoded)
|
|
239
|
+
used += len(encoded)
|
|
240
|
+
return page
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
def _json_array(events: list[bytes]) -> bytes:
|
|
244
|
+
return b"[" + b",".join(events) + b"]"
|
|
@@ -17,6 +17,7 @@ from pydantic import (
|
|
|
17
17
|
ConfigDict,
|
|
18
18
|
Field,
|
|
19
19
|
PositiveInt,
|
|
20
|
+
StrictInt,
|
|
20
21
|
ValidationError,
|
|
21
22
|
model_validator,
|
|
22
23
|
)
|
|
@@ -132,6 +133,45 @@ class TrajectoryObjectsResponse(ExtensionResponse):
|
|
|
132
133
|
objects: TrajectoryUploadedObjects
|
|
133
134
|
|
|
134
135
|
|
|
136
|
+
class TrajectoryState(str, Enum):
|
|
137
|
+
"""Where a trajectory stands: ``pending`` has no events yet, ``running`` is still
|
|
138
|
+
gaining them, and the terminal states gain no more."""
|
|
139
|
+
|
|
140
|
+
PENDING = "pending"
|
|
141
|
+
RUNNING = "running"
|
|
142
|
+
COMPLETED = "completed"
|
|
143
|
+
FAILED = "failed"
|
|
144
|
+
CANCELED = "canceled"
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
MAX_TRAJECTORY_READ_EVENTS = 1_000
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
class TaskEventsTrajectoryRequest(ExtensionRequest):
|
|
151
|
+
task_id: str
|
|
152
|
+
after: StrictInt = Field(ge=0)
|
|
153
|
+
limit: StrictInt | None = Field(default=None, ge=1, le=MAX_TRAJECTORY_READ_EVENTS)
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
class ContextEventsTrajectoryRequest(ExtensionRequest):
|
|
157
|
+
context_id: str
|
|
158
|
+
after: StrictInt = Field(ge=0)
|
|
159
|
+
limit: StrictInt | None = Field(default=None, ge=1, le=MAX_TRAJECTORY_READ_EVENTS)
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
class TrajectoryEventsResponse(ExtensionResponse):
|
|
163
|
+
"""Events from position ``after`` on; ``next`` is the position to read from next, and
|
|
164
|
+
``has_more`` says more events are already readable past this page."""
|
|
165
|
+
|
|
166
|
+
context_id: str
|
|
167
|
+
task_id: str
|
|
168
|
+
state: TrajectoryState
|
|
169
|
+
format: str | None = None
|
|
170
|
+
events: list[Any]
|
|
171
|
+
next: int
|
|
172
|
+
has_more: bool
|
|
173
|
+
|
|
174
|
+
|
|
135
175
|
def _opaque_snapshot_objects(
|
|
136
176
|
objects: SnapshotWriteObjects | SnapshotReadObjects,
|
|
137
177
|
) -> SnapshotWriteObjects | SnapshotReadObjects:
|
|
@@ -573,6 +613,7 @@ class ExtensionConfiguration:
|
|
|
573
613
|
wire_params: Mapping[str, Any] = field(default_factory=dict)
|
|
574
614
|
options: Mapping[str, Any] = field(default_factory=dict)
|
|
575
615
|
features: frozenset[str] = frozenset()
|
|
616
|
+
variants: Mapping[str, frozenset[str]] = field(default_factory=dict)
|
|
576
617
|
|
|
577
618
|
def __post_init__(self) -> None:
|
|
578
619
|
object.__setattr__(
|
|
@@ -580,6 +621,13 @@ class ExtensionConfiguration:
|
|
|
580
621
|
)
|
|
581
622
|
object.__setattr__(self, "options", MappingProxyType(dict(self.options)))
|
|
582
623
|
object.__setattr__(self, "features", frozenset(self.features))
|
|
624
|
+
object.__setattr__(
|
|
625
|
+
self,
|
|
626
|
+
"variants",
|
|
627
|
+
MappingProxyType(
|
|
628
|
+
{operation: frozenset(names) for operation, names in self.variants.items()}
|
|
629
|
+
),
|
|
630
|
+
)
|
|
583
631
|
|
|
584
632
|
|
|
585
633
|
@dataclass(frozen=True, slots=True)
|
|
@@ -872,6 +920,18 @@ def _configure_install(**declaration: Any) -> ExtensionConfiguration:
|
|
|
872
920
|
return ExtensionConfiguration(wire_params=declaration)
|
|
873
921
|
|
|
874
922
|
|
|
923
|
+
def _configure_trajectory(*, live: bool = False) -> ExtensionConfiguration:
|
|
924
|
+
"""``live=True`` advertises the cursor reads, which serve the framework's log while a
|
|
925
|
+
task runs, and the context reads the framework answers when the agent binds none."""
|
|
926
|
+
if not isinstance(live, bool):
|
|
927
|
+
raise TypeError("live must be a boolean")
|
|
928
|
+
if not live:
|
|
929
|
+
return ExtensionConfiguration()
|
|
930
|
+
return ExtensionConfiguration(
|
|
931
|
+
variants={"get": {"task_events", "context_events", "context", "context_objects"}}
|
|
932
|
+
)
|
|
933
|
+
|
|
934
|
+
|
|
875
935
|
SDK = ImplementationOwner.SDK
|
|
876
936
|
RUNTIME = ImplementationOwner.RUNTIME
|
|
877
937
|
|
|
@@ -972,10 +1032,23 @@ TRAJECTORY_V1 = ExtensionDefinition(
|
|
|
972
1032
|
support_required=False,
|
|
973
1033
|
implementation=RUNTIME,
|
|
974
1034
|
),
|
|
1035
|
+
RequestVariant(
|
|
1036
|
+
"task_events",
|
|
1037
|
+
TaskEventsTrajectoryRequest,
|
|
1038
|
+
support_required=False,
|
|
1039
|
+
implementation=SDK,
|
|
1040
|
+
),
|
|
1041
|
+
RequestVariant(
|
|
1042
|
+
"context_events",
|
|
1043
|
+
ContextEventsTrajectoryRequest,
|
|
1044
|
+
support_required=False,
|
|
1045
|
+
implementation=SDK,
|
|
1046
|
+
),
|
|
975
1047
|
),
|
|
976
1048
|
),
|
|
977
1049
|
)
|
|
978
1050
|
},
|
|
1051
|
+
configuration_validator=_configure_trajectory,
|
|
979
1052
|
)
|
|
980
1053
|
|
|
981
1054
|
SNAPSHOT_V1 = ExtensionDefinition(
|
|
@@ -1158,14 +1231,17 @@ def enable(
|
|
|
1158
1231
|
|
|
1159
1232
|
selected_features = set(features)
|
|
1160
1233
|
selected_features.update(validated.features)
|
|
1234
|
+
selected_variants = dict(validated.variants)
|
|
1235
|
+
for operation, names in (variants or {}).items():
|
|
1236
|
+
selected_variants[operation] = selected_variants.get(
|
|
1237
|
+
operation, frozenset()
|
|
1238
|
+
) | frozenset(names)
|
|
1161
1239
|
|
|
1162
1240
|
return ExtensionActivation(
|
|
1163
1241
|
definition=definition,
|
|
1164
1242
|
description=description,
|
|
1165
1243
|
features=frozenset(selected_features),
|
|
1166
|
-
variants=
|
|
1167
|
-
operation: frozenset(names) for operation, names in (variants or {}).items()
|
|
1168
|
-
},
|
|
1244
|
+
variants=selected_variants,
|
|
1169
1245
|
wire_params=validated.wire_params,
|
|
1170
1246
|
options=validated.options,
|
|
1171
1247
|
required=required,
|