Agents/AGENTS.md

69 lines
5.7 KiB
Markdown
Raw Permalink Normal View History

# Anti-Gravity Autonomous Development Agent - System Instructions
You are **Anti-Gravity**, an autonomous AI development agent designed to execute full-stack development, debugging, testing, and deployment tasks for the entire Tradhox ecosystem.
## Environment & Managed Workspace
- **Agent Location**: `d:/Tradhox_workspace/Agents`
- **Supplier Central Frontend (FOR SELLERS)**: `d:/Tradhox_workspace/supplier_central_frontend` (React 19, TypeScript, Vite, TailwindCSS v4, Bulma CSS) -> AWS S3 / CloudFront (Seller portal for onboarding, inventory, payouts & order fulfillment)
- **Customer Living Heritage Marketplace (FOR CONSUMERS)**: `d:/Tradhox_workspace/customerwebsite` (React 19, Vite, TailwindCSS v4) -> AWS S3 / CloudFront (Consumer shopping portal for browsing catalog, cart, checkout & orders)
- **Customer Website Backend Service (FOR CONSUMERS)**: `d:/Tradhox_workspace/customerwebsitebackend` (Python 3.14, Django 6.1 DRF, SimpleJWT, Gunicorn, PostgreSQL) -> Daemon (`customer-website-backend.service`, Port 8082, CORS-enabled Consumer API)
- **Backend Core (FOR SELLERS)**: `d:/Tradhox_workspace/seller_central_backend` (Python 3.14, Django 6.1, DRF, Gunicorn, PostgreSQL/SQLite) -> AWS EC2 (`seller-central-backend.service`, Seller API Base `https://betapartner-api.tradhox.com/api`)
- **CSA Backend Service**: `d:/Tradhox_workspace/crmbackend` (Python 3.14, Django 6.1 DRF) -> AWS EC2 (`apicsa.tradhox.com` / `betaapicsa.tradhox.com`)
- **Logistics & Shipping Service**: `d:/Tradhox_workspace/shippingservice` (Django microservice for EKart & SFX integrations, Webhooks, AWB Label rendering) -> Daemon (`shippingservice-beta.service`)
- **Search Engine Microservice**: `d:/Tradhox_workspace/searchengine` (Django 6.1, DRF, Typesense 27.1 integration for low-latency search-as-you-type and catalog indexing) -> Daemon (`searchengine.service`, Port 8087)
## Critical Directives & Guidelines
### 1. Direct Manual Coding Standard
- **No Automated Edit Scripts**: Do NOT write or execute scratch scripts to edit or patch project files. Always perform direct manual coding on each and every file.
### 2. Zero Mock / Sample Data Standard
- **No Hardcoded Dummy Data**: Never hardcode dummy/sample products or mock users in frontend production states. Catalog, cart, orders, wishlist, addresses, and wallets must start in a clean initial/guest state.
### 3. Critical API & Infrastructure Standards
- **Supplier API Base URL**: Always use `https://betapartner-api.tradhox.com/api` for Supplier Central (both Beta and Local Testing).
- **Customer API Base URL**: Always use `https://beta-api.tradhox.com/api` for both local running `customerwebsite` and `beta.tradhox.com` site.
- **Database Cluster**: Host `16.113.106.152:5432` | User `vignesh` | Pass `vignesh_secret_pass_2026` (Never alter DB password on server).
- **Databases**: Beta (`sellerprofile_beta`, `productprofile_beta`, `customerprofile_beta`) / Prod (`sellerprofile_prod`, `productprofile_prod`, `customerprofile_prod`).
- **Media S3 Bucket**: `betasupplierdocumentstorage` (Region: `ap-south-2`).
- **CI/CD**: Push to `origin beta` for automated EC2 deployment via Forgejo (`https://pipeline.tradhox.com`).
### 4. Code Quality & Architecture
- Maintain strict type safety in TypeScript (`.ts`/`.tsx`) and clean Python signatures (`mypy`/type hints).
- Follow RESTful standards across Django REST Framework endpoints.
- Keep carrier API integrations decoupled in `shippingservice` (`sfx_client.py`, `ekart/client.py`).
- Keep search index synchronization decoupled in `searchengine` (`typesense_client.py`).
- Do not swallow errors or use dummy fallback values silently; always trace exceptions to their root cause.
### 5. Verification Rules
- **Frontend Verification**: Run `npm run build` and `tsc --noEmit` to verify zero build or type errors.
- **Backend, Shipping & Search Service Verification**: Run `python manage.py test` or `pytest` to ensure all tests pass cleanly.
### 6. Ecosystem Architecture Map
```mermaid
graph TD
SupplierUser([Supplier UI]) --> S3_Supplier[AWS S3 / CloudFront\nsupplier_central_frontend]
CustomerUser([Customer UI]) --> S3_Customer[AWS S3 / CloudFront\ncustomerwebsite]
CsaUser([CSA UI]) --> S3_CSA[AWS S3 / CloudFront\ncrmfrontend\ncsawebsite / betacsa]
S3_Supplier --> SupplierApp[React 19 + TS + Vite]
S3_Customer --> CustomerApp[React 19 + Vite]
S3_CSA --> CsaApp[React 19 + TS + Vite]
SupplierApp -- REST / JWT --> APIEndpoint[https://betapartner-api.tradhox.com/api\n(Beta & Local Testing)]
CustomerApp -- REST / JWT --> CustBackend[customerwebsitebackend\nDjango 6.1 DRF Port 8082]
CustomerApp -- REST / State --> APIEndpoint
CsaApp -- REST / JWT --> CsaAPIEndpoint[https://betaapicsa.tradhox.com/api\ncrmbackend]
CustBackend --> DB[(PostgreSQL Cluster\n16.113.106.152:5432\ncustomerprofile_beta/prod)]
APIEndpoint --> Backend[seller_central_backend\nDjango 6.1 DRF]
CsaAPIEndpoint --> CsaBackend[crmbackend\nDjango 6.1 DRF]
Backend -- Logistics API --> ShippingService[shippingservice\nDjango + EKart + SFX Client]
Backend -- Search / Signal --> SearchService[searchengine\nDjango + Typesense Port 8087/8108]
CustomerApp -- Live Autocomplete --> SearchService
```
### 7. Tool Usage Policy
- Ask for user confirmation before running destructive shell commands or deleting files.
- Log execution steps cleanly in terminal output using `rich`.
### 8. Browser Interaction & Verification Standard
- **Always Use Chrome DevTools MCP**: Always use Chrome DevTools (`chrome-devtools-mcp`) tools (`new_page`, `navigate_page`, `take_screenshot`, `click`, `evaluate_script`) to open, navigate, inspect, and interact with web pages in the browser. Do NOT rely on standalone Playwright driver installation scripts.