# Build-context allowlist — DENY BY DEFAULT.
#
# This is a SECURITY control, not a size optimization, and it matters MORE here
# than for the agent image. `up`/`redeploy` build on the TARGET host via compose,
# so the whole context is transferred to that daemon — including a REMOTE one.
# By the Feature 003 convention an operator's secrets live in the project root:
#
#     .env                                     (GH_TOKEN, GIT_*, agent API keys)
#     agent-container.<name>.<provider>.key    (file-first API keys)
#     agent-container.<name>.config/…          (canonical agent config)
#     *.pem / id_* / known_hosts               (injected SSH material)
#
# None of it is referenced by this Dockerfile, but without this file all of it
# would ship to a remote daemon on every build (Constitution III, Least
# Exposure). Denying everything and allow-listing only what the build consumes
# makes that impossible by construction rather than by vigilance.
#
# The image needs exactly two paths from the context:
#   Dockerfile      — the build recipe (compose sets `context` only, so the
#                     daemon resolves <context>/Dockerfile)
#   entrypoint.sh   — the sole COPY source in the Dockerfile
#
# If you add a COPY/ADD instruction, allow-list its source below. The packaging
# test `test_dockerignore_allowlists_every_dockerfile_copy_source` is
# parameterised over EVERY image directory and fails until you do, so this file
# cannot silently drift out of sync with the Dockerfile.

*

!Dockerfile
!entrypoint.sh
