diff --git a/backend/llm.txt b/backend/llm.txt index 2f829a3..2b2a8e1 100644 --- a/backend/llm.txt +++ b/backend/llm.txt @@ -7,6 +7,7 @@ This file condenses `backend/docs/dev/http_api.md` + `backend/docs/dev/model.md` ## 0) Golden rules (DO / DO NOT) - DO follow existing module layout under `backend/app/http//`. +- MUST: HTTP module folder name MUST be `snake_case` (e.g. `tenant_public`), not `camelCase`/`mixedCase`. - DO keep controller methods thin: parse/bind → call `services.*` → return result/error. - DO regenerate code after changes (routes/docs/models). - DO add `// @provider` above every controller/service `struct` declaration. @@ -20,6 +21,7 @@ This file condenses `backend/docs/dev/http_api.md` + `backend/docs/dev/model.md` - DO NOT manually write route declarations (only `atomctl gen route`). - DO keep Swagger annotations consistent with actual Fiber route paths (including `:param`). - MUST: route path parameter placeholders MUST be `camelCase` (e.g. `:tenantCode`), never `snake_case` (e.g. `:tenant_code`). +- MUST: when importing another HTTP module's `dto` package, the import alias MUST be `_dto` (e.g. `tenant_dto`), not `dto` (e.g. `tenantdto`). - MUST: when creating/generating Go `struct` definitions (DTOs/requests/responses/etc.), add detailed per-field comments describing meaning, usage scenario, and validation/usage rules (do not rely on “self-explanatory” names). - MUST: business code comments MUST be written in Chinese (中文注释), to keep review/maintenance consistent across the team. - MUST: in `backend/app/services`, add Chinese comments at key steps to explain business intent and invariants (e.g., 事务边界、幂等语义、余额冻结/扣减/回滚、权限/前置条件校验点), avoid “what the code does” boilerplate.