dotb_ai-platform/AGENTS.md
hungtran24 2193d7c8e1 chore: remove historical archive and refresh repository docs
Remove old_repo now that the rebuilt platform is the active implementation. Point documentation to current code and Git history, preserve local environment setup guidance, and drop obsolete archive exclusions from build and quality tools.
2026-10-02 11:58:51 +07:00

3.1 KiB

Repository workflow

This repository is the rebuilt AI Platform. Historical implementation is retained only in Git history; current code lives under src/ai_platform/ and apps/web/. The approved rebuild plan authorizes implementation; docs/specs/ai-platform-lead-scoring.md is review-ready for cross-service acceptance, so unverified Omni/AIHub wire details are not release claims.

  1. Before changing Lead Scoring behavior, read docs/specs/ai-platform-lead-scoring.md, CONTEXT.md, and ARCHITECTURE.md. Read stack.md when choosing a runtime or dependency. Generated OpenAPI and small Omni fixtures own exact wire shapes.
  2. Put app/admin authentication, configuration and shared DB setup in platform; put deterministic rules/metrics and run lifecycle in lead_scoring/domain; orchestration in application, I/O in infrastructure, HTTP mapping in presentation, and wiring in bootstrap. Churn follows the same layout only when a specification exists.
  3. Omni owns rules/weights/HITL/CRM; AI Platform owns AI profile and technical run status. V-Key is request-scoped RAM only. One app key per Omni installation authenticates the platform; run context includes account_id. Admin Web uses a distinct session. Terminal webhook triggers Omni GET.
  4. Kiểm tra tính nhất quán trước khi tối ưu một phần: đối chiếu API với fixture Omni, tên env với Settings/Compose/CI, lệnh build với package/lockfile và UI với design system ở ARCHITECTURE.md. Web dùng Tailwind CSS v4 cho semantic tokens, shadcn-svelte cho component cần thiết, Bits UI cho tương tác phức tạp; dùng HTML native cho form/bảng đơn giản, không tự tái tạo primitives. Xem rewrite_architect.md để hiểu lý do chọn stack, không dùng nó làm contract song song.
  5. File trên 200 dòng là tín hiệu review: kiểm tra trách nhiệm trộn lẫn, tách tại boundary có nghĩa. Giữ một OpenAPI generated và vài Omni fixtures thật, không tạo hệ schema thứ hai.
  6. Trước bàn giao, chạy Ruff/Pyright/Import Linter/pytest, Svelte checks/build/tests, migration và contract generation có liên quan. Báo chính xác pass/fail; hook opt-in, CI là gate. Không stage .env, .env.test, ignored assets hoặc secrets.
  7. Thay đổi ranh giới kiến trúc, dependency direction, DI/composition root hoặc ownership transaction do main agent trực tiếp phân tích, quyết định và triển khai. Có thể giao review/test chỉ đọc độc lập, nhưng không giao phần thiết kế và implementation các thay đổi này.
  8. Sau khi code hoàn tất và trước mỗi commit, review toàn bộ tracked/untracked changes theo docs/project_quality.md; báo chính xác các kiểm tra đã chạy, phát hiện còn lại và phần chưa xác minh.

Use README.md for current local commands; stack.md for decisions and deferred production hosting/TLS/secret/backup/alerts. Preserve the user's existing ignored files unless explicitly authorized to replace them. No global tool installs or system configuration changes during repo work.