fix(messages): normalize webhook reply references

This commit is contained in:
2026-07-12 22:17:04 +08:00
parent 32d3329d1b
commit 813faa4cd7
4 changed files with 182 additions and 27 deletions
+20
View File
@@ -28,11 +28,31 @@ deploy/ # Deployment artifacts
quickstart/ # One-shot local/UAT Compose stack (PG+pgvector+Redis+Meilisearch+Mailhog)
fluentd/ # Log shipping config
docs/ # Project documentation (architecture, requirements, plans, reports)
chatwoot/ # Upstream Chatwoot source snapshot; primary behavioral reference
```
The **Go module root is `backend/`** — run all `go` commands from there.
Build context for Docker is the **repository root** (`.`), not `backend/`.
## Upstream Chatwoot Reference (Required)
GoChat is a Go-language translation and port of Chatwoot. When a behavior,
API contract, data model, event payload, frontend interaction, or edge case is
unclear or appears incorrect, **inspect the upstream implementation under
`docs/chatwoot/` before designing or changing the GoChat solution**.
- Trace the complete upstream path first: controller/handler → service/builder
→ model callback → serializer → frontend consumer.
- Preserve Chatwoot's externally visible behavior and payload contracts when
translating Rails/Ruby implementation details into GoChat's layered Go
architecture.
- Reuse the upstream fix pattern and regression cases where practical instead
of inventing a parallel behavior from the current Go code alone.
- Treat `docs/chatwoot/` as read-only reference code. Production changes belong
in `backend/`, `frontend/`, or other GoChat-owned directories.
- If GoChat intentionally diverges from Chatwoot, document the reason, affected
contract, and verification coverage in the change.
## Build & Test Commands
All Go commands run from `backend/`: