Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
13 commits
Select commit Hold shift + click to select a range
c65e12e
feat: merge agent-banking-platform from tar archive into NGApp
devin-ai-integration[bot] Feb 19, 2026
5106b84
Implement all TODO items across Python and Go services
devin-ai-integration[bot] Feb 19, 2026
8173847
fix: production readiness - remove hardcoded secrets, replace placeho…
devin-ai-integration[bot] Feb 19, 2026
c0953c2
Fix agent onboarding critical gaps: real OCR/KYC/KYB integrations, DB…
devin-ai-integration[bot] Feb 19, 2026
0e101cb
Implement agency banking gaps: bills payment, telco VTU, fee schedule…
devin-ai-integration[bot] Feb 19, 2026
7261cb5
Add UI pages for bills payment, airtime/data recharge, and fee schedu…
devin-ai-integration[bot] Feb 19, 2026
db5c937
Add Super Agent onboarding 8-step wizard UI with KYC/KYB, territory, …
devin-ai-integration[bot] Feb 19, 2026
3418b8b
Integrate PaddleOCR, VLM, and Docling for document processing pipeline
devin-ai-integration[bot] Feb 19, 2026
72539ee
Add 3s API timeout for faster demo fallback, fix fetch hanging withou…
devin-ai-integration[bot] Feb 19, 2026
159859c
Add ecommerce, inventory, omnichannel UI pages with URL-based demo login
devin-ai-integration[bot] Feb 19, 2026
f908e9b
Fix mobile robustness gaps across all 3 variants
devin-ai-integration[bot] Feb 20, 2026
0cb67ed
Wire 51 orphan services into main gateway, restore missing vite configs
devin-ai-integration[bot] Feb 20, 2026
817b7e3
Fix all 9 KYC robustness gaps: real API calls, screening providers, F…
devin-ai-integration[bot] Feb 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
85 changes: 85 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Agent Banking Platform - Environment Variables
# Generated from codebase analysis
# Total variables: 54

# ============================================================================
# DATABASE
# ============================================================================
CONNECTIVITY_DATABASE_PATH=
DATABASE_URL=http://localhost:8000
EDGE_DATABASE_PATH=
HARDWARE_DATABASE_PATH=
POWER_DATABASE_PATH=
RESILIENCE_DATABASE_PATH=

# ============================================================================
# REDIS
# ============================================================================
REDIS_ADDR=
REDIS_PASSWORD=your-redis-password-here
REDIS_URL=http://localhost:8000

# ============================================================================
# TIGERBEETLE
# ============================================================================
TIGERBEETLE_API_URL=http://localhost:8000
TIGERBEETLE_CORE_URL=http://localhost:8000

# ============================================================================
# API_KEYS
# ============================================================================
API_KEY=your-api-key-here
MINIO_SECRET_KEY=your-minio-secret-key-here
NIBSS_API_KEY=your-nibss-api-key-here
NIBSS_SECRET_KEY=your-nibss-secret-key-here

# ============================================================================
# SERVICE_URLS
# ============================================================================
AGENT_SERVICE_URL=http://localhost:8000
MAIN_SERVER_URL=http://localhost:8000
MANAGEMENT_SERVER_URL=http://localhost:8000
MINIO_ENDPOINT=http://localhost:8000
NIBSS_API_URL=http://localhost:8000
PROMETHEUS_URL=http://localhost:8000
SERVICE_URL_8080=http://localhost:8000
SERVICE_URL_8090=http://localhost:8000
SERVICE_URL_9003=http://localhost:8000

# ============================================================================
# JWT
# ============================================================================
WHATSAPP_ACCESS_TOKEN=
WHATSAPP_WEBHOOK_VERIFY_TOKEN=

# ============================================================================
# OTHER
# ============================================================================
CA_CERT_PATH=
CA_KEY_PATH=your-ca-key-path-here
CERT_DIR=
CONFIG_PATH=
CONNECTIVITY_MONITOR_INTERVAL=
CPU_LIMIT=
GIN_MODE=
HARDWARE_MONITOR_INTERVAL=
HOSTNAME=
MINIO_ACCESS_KEY=your-minio-access-key-here
MINIO_USE_SSL=
POD_NAME=
PORT=
POWER_MONITOR_INTERVAL=
RESILIENCE_BACKUP_PATH=
RESILIENCE_MONITOR_INTERVAL=
SERVICE_CERT_PATH=
SERVICE_KEY_PATH=your-service-key-path-here
SERVICE_NAME=
TERMINAL_ID=
VAULT_ADDR=
VAULT_ENABLED=false
VAULT_PKI_PATH=
VAULT_ROLE=
VIDEO_ENCRYPTION_KEY=your-video-encryption-key-here
WHATSAPP_BUSINESS_ACCOUNT_ID=
WHATSAPP_PHONE_NUMBER_ID=
WHATSAPP_WEBHOOK_SECRET=your-whatsapp-webhook-secret-here
202 changes: 202 additions & 0 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@
name: CI/CD Pipeline

on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]

env:
PYTHON_VERSION: "3.11"
GO_VERSION: "1.21"
NODE_VERSION: "20"

jobs:
# Unit Tests
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}

- name: Install dependencies
run: |
pip install -r tests/requirements-test.txt

- name: Run unit tests
run: |
cd tests
pytest unit/ -v -m unit --cov=../backend --cov-report=xml

- name: Upload coverage
uses: codecov/codecov-action@v3
with:
file: ./tests/coverage.xml
flags: unittests

# Integration Tests
integration-tests:
name: Integration Tests
runs-on: ubuntu-latest

services:
redis:
image: redis:7-alpine
ports:
- 6379:6379

postgres:
image: postgres:15-alpine
env:
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432

steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}

- name: Install dependencies
run: |
pip install -r tests/requirements-test.txt

- name: Run integration tests
run: |
cd tests
pytest integration/ -v -m integration
env:
REDIS_URL: redis://localhost:6379
DATABASE_URL: postgresql://postgres:postgres@localhost:5432/test

# E2E Tests
e2e-tests:
name: End-to-End Tests
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}

- name: Install dependencies
run: |
pip install -r tests/requirements-test.txt

- name: Run E2E tests
run: |
cd tests
pytest e2e/ -v -m e2e --maxfail=3

# Performance Tests
performance-tests:
name: Performance Tests
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}

- name: Install dependencies
run: |
pip install -r tests/requirements-test.txt

- name: Run performance tests
run: |
cd tests
pytest performance/ -v -m performance --benchmark-only

# Code Quality
code-quality:
name: Code Quality
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ env.PYTHON_VERSION }}

- name: Install linting tools
run: |
pip install pylint black isort mypy flake8

- name: Run Black
run: black --check backend/

- name: Run isort
run: isort --check-only backend/

- name: Run flake8
run: flake8 backend/ --max-line-length=120

- name: Run pylint
run: pylint backend/ --fail-under=8.0

# Security Scan
security-scan:
name: Security Scan
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@master
with:
scan-type: 'fs'
scan-ref: '.'
format: 'sarif'
output: 'trivy-results.sarif'

- name: Upload Trivy results
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: 'trivy-results.sarif'

# Build and Deploy
build-deploy:
name: Build and Deploy
needs: [unit-tests, integration-tests, e2e-tests, code-quality]
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'

steps:
- uses: actions/checkout@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Build and push Docker images
run: |
docker-compose build
docker-compose push

- name: Deploy to production
run: |
echo "Deploying to production..."
# Add deployment commands here
Loading
Loading