Skip to content

Validate internal framework-docker slot collisions during mesh docker injection. #32

@nhynes

Description

@nhynes

Current issue:

  • In compiler/src/targets/mesh/docker_compose/framework_docker_injection.rs, the pass uses the fixed slot name
    __amber_internal_framework_docker.
  • If a component already has a slot with that name, the code reuses it without checking capability kind.
  • That can silently repurpose a user-authored slot and create confusing routing behavior.

Expected behavior:

  • If the slot already exists, require it to be kind: docker; otherwise fail compilation with a clear error (component moniker,
    slot name, expected vs actual kind).
  • If it does not exist, create the injected internal docker slot.
  • (Alternative acceptable direction: generate a guaranteed-unique hidden slot name per component.)

Test coverage to add:

  • Existing slot with reserved name and non-docker kind -> compile error.
  • Existing slot with reserved name and docker kind -> no error, safe reuse.
  • No existing slot -> injected slot created and wired correctly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions