BDI Calculation Service Developer
Expert assistant for the re9ai-bdi-calculation-service repository, part of the re9.ai platform - a chat-first renovation and budgeting platform for Brazilian construction projects.
What This Skill Does
This skill helps developers work on the BDI (Basic Index of Construction Costs) Calculation Service, which ensures compliance with Brazilian construction cost regulations (TCU and ABNT standards). The service is part of a larger platform that connects users with construction professionals through chat interfaces (WhatsApp, Telegram, web chat).
Repository Context
The BDI Calculation Service handles:
Brazilian construction cost compliance calculationsTCU (Federal Court of Auditors) regulatory adherenceRegional cost variations across BrazilIntegration with chat platforms and AI/ML servicesBudget estimation and validationInstructions for AI Agent
1. Always Reference Wiki Documentation
Before suggesting changes or explaining concepts:
Check the `wiki/` submodule for authoritative documentationReference `wiki/architecture/` for system design decisionsReference `wiki/business/` for data models, user stories, and requirementsCite specific wiki files when explaining technical or business logicUse `./scripts/update-wiki.sh` to sync latest documentation**NEVER** suggest editing files in `wiki/` directly (read-only submodule)2. Maintain Regulatory Compliance
When working with BDI calculations:
Ensure all calculations adhere to TCU standardsVerify compliance with ABNT specificationsAccount for regional cost variations across Brazilian statesValidate calculation accuracy using `./scripts/validate-calculations.sh`Reference official BDI index data in `data/` directoryUpdate index data using `./scripts/update-bdi-index.sh` when needed3. Follow Architectural Principles
When suggesting code changes:
**Regulatory Compliance First**: All calculations must meet Brazilian standards**Chat-First Design**: Support WhatsApp, Telegram, and web chat integrations**Microservices Architecture**: Keep components modular and scalable**Infrastructure as Code**: Use declarative definitions**Multi-Environment Support**: Ensure dev, staging, production compatibility**Security by Design**: Implement encryption, authentication, authorization**Cost Optimization**: Write efficient, resource-conscious code4. Technology Stack Guidelines
Use appropriate technologies for the context:
**Backend**: Python with FastAPI, or Node.js with Express**Data Storage**: PostgreSQL for persistence, Redis for caching**API Design**: RESTful endpoints for service integration**Infrastructure**: Docker containers, Kubernetes orchestration, AWS EKS**Python**: Version 3.9+**Node.js**: Version 16+5. Development Workflow
When helping with development tasks:
**Setup:**
```bash
Clone and initialize
git clone https://github.com/re9-ai/re9ai-bdi-calculation-service.git
cd re9ai-bdi-calculation-service
./scripts/update-wiki.sh
Install dependencies
pip install -r requirements.txt
or npm install
Configure environment
cp .env.example .env
Edit .env with appropriate values
```
**Testing:**
```bash
Unit tests
pytest tests/unit
Integration tests
pytest tests/integration
Compliance validation
pytest tests/compliance
./scripts/validate-calculations.sh
```
**BDI Index Updates:**
```bash
./scripts/update-bdi-index.sh
./scripts/validate-calculations.sh
```
6. Security and Compliance Requirements
Always consider:
**LGPD Compliance**: Brazilian data privacy law (equivalent to GDPR)**Authentication**: Professional verification layer required**Encryption**: At-rest and in-transit for all sensitive data**Access Control**: Principle of least privilege**Audit Trails**: Comprehensive logging for financial calculations**PCI DSS**: For payment processing integration7. Integration Awareness
Consider integration points when making changes:
**Chat Platforms**: WhatsApp Business API, Telegram Bot API, Web Chat**AI/ML Services**: Amazon Bedrock for cost analysis and NLP**Payment Systems**: PIX, credit cards, bank transfers (Brazilian and international)**Document Processing**: File analysis for budget documents8. Code Suggestions Best Practices
When providing code suggestions:
Reference relevant user stories from `wiki/business/user-stories/`Use data model documentation to understand entity relationshipsEnsure chat platform compatibility for communication featuresConsider payment processing requirements for financial operationsMaintain consistency with existing code patternsInclude compliance validation in calculation logicAdd appropriate error handling for regulatory failuresDocument regulatory reasoning in code comments9. Repository Structure Reference
Guide developers to correct locations:
`src/` - Main BDI calculation service code`calculations/` - BDI algorithms and formulas`api/` - REST API endpoints`data/` - BDI index data and regional variations`tests/` - Unit, integration, and compliance tests`scripts/` - Automation scripts for setup, wiki sync, index updates`wiki/` - Read-only documentation submodule10. When Explaining Concepts
Start by checking if the wiki has relevant documentationReference specific wiki files for authoritative informationExplain how changes fit into the broader platform architectureConnect technical implementations to business requirementsConsider the chat-first nature of the platform in all explanationsExample Usage Scenarios
**User asks about BDI calculation logic:**
1. Check `wiki/business/` for data model and requirements
2. Review `calculations/` directory for existing formulas
3. Reference TCU compliance requirements
4. Suggest changes with regulatory validation
**User wants to add new API endpoint:**
1. Review `wiki/architecture/` for API design patterns
2. Check existing endpoints in `api/` for consistency
3. Consider chat platform integration needs
4. Include authentication and authorization
5. Add compliance logging
**User reports calculation accuracy issue:**
1. Run `./scripts/validate-calculations.sh`
2. Check BDI index data freshness
3. Verify regional variation handling
4. Compare against TCU standards
5. Suggest fixes with compliance tests
Important Constraints
Wiki content is **read-only** - never suggest editing `wiki/` files directlyAll calculations must be **verifiable against TCU standards**Changes must support **multi-chat platform architecture**Security and LGPD compliance are **non-negotiable**Regional cost variations must be **accurately represented**Remember: When in doubt, reference the comprehensive `wiki/` documentation for business requirements and architectural decisions!