mirror of
https://github.com/whekin/household-bot.git
synced 2026-03-31 10:24:02 +00:00
feat(WHE-28): add terraform baseline for cloud run and scheduler
This commit is contained in:
11
AGENTS.md
11
AGENTS.md
@@ -1,9 +1,11 @@
|
||||
# AGENTS.md
|
||||
|
||||
## Project
|
||||
|
||||
Household Telegram bot + mini app monorepo for shared rent/utilities/purchase accounting.
|
||||
|
||||
## Core stack
|
||||
|
||||
- Runtime/tooling: Bun
|
||||
- Language: TypeScript (strict)
|
||||
- Typecheck: tsgo (`@typescript/native-preview`)
|
||||
@@ -15,24 +17,29 @@ Household Telegram bot + mini app monorepo for shared rent/utilities/purchase ac
|
||||
- Deploy: Cloud Run + Cloud Scheduler (planned)
|
||||
|
||||
## Architecture
|
||||
|
||||
Hexagonal architecture:
|
||||
|
||||
- `packages/domain`: pure business rules/value objects only
|
||||
- `packages/application`: use-cases only
|
||||
- `packages/ports`: interfaces for external boundaries
|
||||
- `apps/*`: composition/wiring and delivery endpoints
|
||||
|
||||
Boundary rules:
|
||||
|
||||
- No framework/DB/HTTP imports in `packages/domain`
|
||||
- `packages/application` must not import adapter implementations
|
||||
- External SDK usage belongs outside domain/application core
|
||||
|
||||
## Money and accounting rules
|
||||
|
||||
- Never use floating-point money math
|
||||
- Store amounts in minor units
|
||||
- Deterministic split behavior only
|
||||
- Persist raw parsed purchase text + confidence + parser mode
|
||||
|
||||
## Workflow
|
||||
|
||||
- Work from Linear tickets and linked specs in `docs/specs/`
|
||||
- One ticket at a time, small commits
|
||||
- Before implementation: re-check ticket/spec and assumptions
|
||||
@@ -40,7 +47,9 @@ Boundary rules:
|
||||
- Run CodeRabbit review before merge (`bun run review:coderabbit`)
|
||||
|
||||
## Quality gates
|
||||
|
||||
Required before PR/merge:
|
||||
|
||||
- `bun run format:check`
|
||||
- `bun run lint`
|
||||
- `bun run typecheck`
|
||||
@@ -48,6 +57,7 @@ Required before PR/merge:
|
||||
- `bun run build`
|
||||
|
||||
## CI/CD
|
||||
|
||||
- CI workflow runs parallel quality jobs on push/PR to `main`
|
||||
- CD workflow deploys on successful `main` CI or manual trigger
|
||||
- Required CD secrets:
|
||||
@@ -56,6 +66,7 @@ Required before PR/merge:
|
||||
- `GCP_SERVICE_ACCOUNT`
|
||||
|
||||
## Docs as source of truth
|
||||
|
||||
- Roadmap: `docs/roadmap.md`
|
||||
- Specs template: `docs/specs/README.md`
|
||||
- ADRs: `docs/decisions/*`
|
||||
|
||||
Reference in New Issue
Block a user