- add phase summary for split deployment artifacts - update state with phase 05 completion context
93 lines
4.1 KiB
Markdown
93 lines
4.1 KiB
Markdown
---
|
||
phase: 05-mvp-deployment
|
||
plan: 04
|
||
subsystem: infra
|
||
tags: [docker-compose, matrix, deployment, agents, docs]
|
||
requires:
|
||
- phase: 05-03
|
||
provides: "Shared /agents attachment contract and path normalization for Matrix runtime"
|
||
provides:
|
||
- "docker-compose.prod.yml bot-only deployment handoff artifact"
|
||
- "docker-compose.fullstack.yml internal E2E harness with health-gated platform-agent startup"
|
||
- "README and deploy architecture docs aligned to the split compose contract"
|
||
affects: [mvp-deployment, operator-handoff, internal-e2e]
|
||
tech-stack:
|
||
added: [Docker Compose]
|
||
patterns: [split-compose-by-operational-intent, shared-agents-volume-contract]
|
||
key-files:
|
||
created: [docker-compose.prod.yml, docker-compose.fullstack.yml]
|
||
modified: [.env.example, README.md, docs/deploy-architecture.md]
|
||
key-decisions:
|
||
- "Split Compose artifacts by runtime intent: bot-only prod handoff vs internal full-stack verification."
|
||
- "Document /agents as the bot-side shared volume root while internal platform-agent keeps /workspace on the same volume."
|
||
patterns-established:
|
||
- "Production operators use docker-compose.prod.yml and provide an external AGENT_BASE_URL."
|
||
- "Internal verification uses docker-compose.fullstack.yml with service_healthy gating instead of sleep-based startup."
|
||
requirements-completed: [PH05-05]
|
||
duration: 3 min
|
||
completed: 2026-04-27
|
||
---
|
||
|
||
# Phase 05 Plan 04: Split deployment artifacts Summary
|
||
|
||
**Bot-only production compose handoff plus a separate health-gated full-stack harness aligned to the shared `/agents` volume contract**
|
||
|
||
## Performance
|
||
|
||
- **Duration:** 3 min
|
||
- **Started:** 2026-04-27T22:12:42Z
|
||
- **Completed:** 2026-04-27T22:16:09Z
|
||
- **Tasks:** 2
|
||
- **Files modified:** 5
|
||
|
||
## Accomplishments
|
||
- Added `docker-compose.prod.yml` as the operator-facing bot-only runtime artifact.
|
||
- Added `docker-compose.fullstack.yml` for internal E2E runs with `platform-agent` health-gated startup.
|
||
- Updated env and deployment docs so `/agents` and the split compose flow are explicit without relying on the old root compose file.
|
||
|
||
## Task Commits
|
||
|
||
Each task was committed atomically:
|
||
|
||
1. **Task 1: Create split prod and fullstack compose artifacts** - `df6d8bf` (feat)
|
||
2. **Task 2: Update deployment docs and operator guidance for the split artifacts** - `22a3a2b` (docs)
|
||
|
||
**Plan metadata:** pending final docs commit after state updates
|
||
|
||
## Files Created/Modified
|
||
- `docker-compose.prod.yml` - bot-only deployment handoff with `/agents` volume contract
|
||
- `docker-compose.fullstack.yml` - internal harness extending the bot service and adding health-checked `platform-agent`
|
||
- `.env.example` - Phase 05 runtime variables for prod handoff and internal full-stack defaults
|
||
- `README.md` - operator-facing instructions for choosing the correct compose artifact
|
||
- `docs/deploy-architecture.md` - deployment topology and shared-volume guidance aligned to the split artifacts
|
||
|
||
## Decisions Made
|
||
- Split deployment packaging by operational intent instead of overloading one compose file for both prod handoff and internal testing.
|
||
- Kept the bot’s absolute shared path rooted at `/agents` in docs and env examples while letting the internal `platform-agent` consume the same named volume at `/workspace`.
|
||
|
||
## Deviations from Plan
|
||
|
||
None - plan executed exactly as written.
|
||
|
||
## Issues Encountered
|
||
|
||
- The docs verification grep treated `deploy` inside the filename `docs/deploy-architecture.md` as a false positive when root compose was still named explicitly. The fix was to remove the literal root compose filename from deploy-path wording while keeping the deprecation clear.
|
||
|
||
## User Setup Required
|
||
|
||
None - no external service configuration required beyond populating `.env` from `.env.example`.
|
||
|
||
## Next Phase Readiness
|
||
|
||
- Operators now have a bot-only compose artifact for handoff, and developers have a separate internal E2E harness.
|
||
- Remaining Phase 05 work can rely on the split runtime contract without reinterpreting deployment docs.
|
||
|
||
## Self-Check: PASSED
|
||
|
||
- Summary file exists at `.planning/phases/05-mvp-deployment/05-04-SUMMARY.md`
|
||
- Commit `df6d8bf` found in git history
|
||
- Commit `22a3a2b` found in git history
|
||
|
||
---
|
||
*Phase: 05-mvp-deployment*
|
||
*Completed: 2026-04-27*
|