38 lines
2.1 KiB
YAML
38 lines
2.1 KiB
YAML
# Explicit, single-seat dogfood mode for stack-containerization B2.
|
|
# Use with docker-compose.yml. The base stack remains credential-free.
|
|
services:
|
|
gateway:
|
|
# The R4 credential helper establishes ownership from process ancestry and
|
|
# intentionally does not trust PID 1. Keep gateway Node below Docker's init.
|
|
init: true
|
|
environment:
|
|
# Identity and credential layout match a fleet seat. This fixed name prevents
|
|
# an operator from mounting one seat while attributing actions to another.
|
|
MOSAIC_AGENT_NAME: stack-dogfood
|
|
MOSAIC_GIT_IDENTITY: stack-dogfood
|
|
MOSAIC_BRAIN_HOME: /opt/mosaic/brain
|
|
AGENT_FILE_SANDBOX_DIR: /workspace/stack
|
|
# Disable the general shell before admin/user allowlist resolution. Delivery
|
|
# uses execFile-only tools bound to the queue and PR wrappers below.
|
|
AGENT_SHELL_ENABLED: 'false'
|
|
AGENT_DELIVERY_ENABLED: 'true'
|
|
MOSAIC_GIT_TOOLS_DIR: /opt/mosaic/tools/git
|
|
MOSAIC_INTEGRATION_TRUNK: next
|
|
AGENT_USER_TOOLS: fs_read_file,fs_write_file,fs_list_directory,fs_edit_file,git_status,git_log,git_diff,git_publish_branch,git_open_pull_request
|
|
volumes:
|
|
# Mount a dedicated worktree, never the canonical clone or divergent local main.
|
|
- type: bind
|
|
source: ${MOSAIC_DOGFOOD_WORKTREE:?set to a dedicated next-based stack worktree}
|
|
target: /workspace/stack
|
|
# A Git worktree's .git file points into the canonical clone's common Git
|
|
# directory. Mount that directory at its original absolute path so Git can
|
|
# resolve the pointer. File tools cannot traverse outside /workspace/stack.
|
|
- type: bind
|
|
source: ${MOSAIC_DOGFOOD_COMMON_GIT_DIR:?set to the canonical stack clone .git directory}
|
|
target: ${MOSAIC_DOGFOOD_COMMON_GIT_DIR:?set to the canonical stack clone .git directory}
|
|
# Only this seat home enters the container. Other fleet credentials stay outside.
|
|
- type: bind
|
|
source: ${MOSAIC_DOGFOOD_SEAT_HOME:?set to the external stack-dogfood seat directory}
|
|
target: /opt/mosaic/brain/fleet/agents/stack-dogfood
|
|
read_only: true
|