alt/agent-ops/rules/project/domain/operations/rules.md

54 lines
2 KiB
Markdown

---
domain: operations
last_rule_review_commit: no-commit-yet
last_rule_updated_at: 2026-05-24
---
# operations
## 목적 / 책임
로컬 개발, workspace orchestration, operator CLI, and infrastructure entrypoints를 관리한다. 개발자가 반복적으로 쓰는 root-level commands and local services stay discoverable here.
## 포함 경로
- `bin/` - workspace helper scripts
- `go.work` - Go workspace module membership
- `apps/cli/` - Go operator CLI for local/admin workflows
- `deployments/local/` - local Docker Compose infrastructure
- `.gitignore` - repository-level ignore policy
## 제외 경로
- `services/api/` - API runtime implementation
- `services/worker/` - worker runtime implementation
- `apps/client/` - Flutter client code
- `packages/domain/` and `packages/contracts/` - shared model and schema sources
## 주요 구성 요소
- `bin/dev` - prints local development entrypoints
- `bin/test` - runs Go tests and Flutter tests
- `bin/lint` - runs Go vet and Flutter analyze
- `bin/build` - builds Go binaries and Flutter web
- `deployments/local/docker-compose.yml` - PostgreSQL and Redis local stack
- `apps/cli/cmd/alt/main.go` - operator CLI scaffold
## 유지할 패턴
- Keep root helper scripts executable, idempotent where practical, and `set -euo pipefail`.
- Prefer root `bin/*` commands for whole-workspace workflows.
- Keep local infrastructure defaults aligned with worker/API environment fallback values.
- Add new Go modules to `go.work` when they are part of local development.
## 다른 도메인과의 경계
- **api** and **worker**: operations starts, tests, and builds services; service behavior belongs to each service domain.
- **client**: operations invokes Flutter commands; UI implementation stays under `apps/client`.
- **contracts**: operations may run codegen later; schema design remains in contracts.
## 금지 사항
- Do not put application business logic in shell scripts.
- Do not commit local secrets or machine-specific state.
- Do not make root scripts silently skip failing module checks.