2 Commits

Author SHA1 Message Date
HAL9000 62c11edb4a fix(resource): add create_sandbox/project_access stubs and fix ambiguous step
CI / lint (pull_request) Successful in 34s
CI / typecheck (pull_request) Successful in 1m5s
CI / build (pull_request) Successful in 55s
CI / helm (pull_request) Successful in 26s
CI / quality (pull_request) Successful in 1m18s
CI / security (pull_request) Successful in 1m33s
CI / push-validation (pull_request) Successful in 20s
CI / unit_tests (pull_request) Successful in 6m49s
CI / docker (pull_request) Successful in 1m50s
CI / coverage (pull_request) Successful in 12m25s
CI / integration_tests (pull_request) Successful in 28m3s
CI / status-check (pull_request) Successful in 4s
- Add create_sandbox() override to _ContainerBaseHandler raising
  NotImplementedError, matching CloudResourceHandler pattern (issue #836)
- Add project_access() override to _ContainerBaseHandler raising
  NotImplementedError, consistent with all other stub methods
- Rename @then("the import should succeed without errors") step to
  @then("the container handler module import should succeed without errors")
  to resolve AmbiguousStep collision with tdd_a2a_sdk_dependency_steps.py
- Update container_handler.feature to use renamed step
- Apply ruff format to container.py

ISSUES CLOSED: #2907
2026-05-30 13:08:44 -04:00
freemo 4288fcb9c1 fix(resource): implement missing container handler module for container infrastructure resource types
Implements the missing cleveragents.resource.handlers.container module
that is referenced by all seven container infrastructure resource types
registered in _resource_registry_container.py.

Previously, any attempt to use container-runtime, container-image,
container-mount, container-exec-env, container-port, container-volume,
or container-network resources raised HandlerResolutionError with
ModuleNotFoundError at runtime.

Changes:
- Add src/cleveragents/resource/handlers/container.py with five handler
  classes: ContainerRuntimeHandler, ContainerImageHandler,
  ContainerChildHandler (shared by mount/exec-env/port), ContainerVolumeHandler,
  ContainerNetworkHandler
- All handlers extend _ContainerBaseHandler which extends BaseResourceHandler
  and satisfies the ResourceHandler protocol
- resolve() raises NotImplementedError (container sandbox provisioning
  is pending, mirrors CloudResourceHandler pattern)
- content_hash() returns identity hash based on resource type + location
- All CRUD and lifecycle stubs raise NotImplementedError
- Update handlers/__init__.py to export the five new handler classes
- Add features/container_handler.feature with 72 BDD scenarios covering
  module importability, protocol conformance, handler resolution, type
  labels, CRUD stubs, lifecycle stubs, and registry integration
- Add features/steps/container_handler_steps.py with step definitions

All nox sessions pass: lint, typecheck, unit_tests (72/72 scenarios).

ISSUES CLOSED: #2907
2026-05-30 13:08:44 -04:00