diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index 6c04df8..e29640d 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -18,7 +18,7 @@ **For Claude Code sessions — things that cause first-commit failures:** -1. **Wrong branch.** Run `git branch --show-current` before touching any file. The answer must be `coolify`. If it is `main`, run `git checkout coolify` before proceeding. +1. **Wrong branch.** Never commit directly to `main`. Create a feature branch first: `git checkout -b feat/my-change`. 2. **PreToolUse hook blocks your write.** The `PreToolUse` hooks in `.claude/settings.json` will reject Write/Edit operations on any file that would push its line count past 500. This is intentional — split the file into smaller modules instead of trying to bypass the hook. @@ -274,7 +274,7 @@ curl -sf https://sdk-dev.breakpilot.ai/health git push origin main # Remote: -# origin: ssh://git@coolify.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-compliance.git +# origin: ssh://git@gitea.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-compliance.git ``` ### Lokale Docker-Befehle (Mac Mini — nur fuer Dev/Tests) diff --git a/.env.coolify.example b/.env.orca.example similarity index 84% rename from .env.coolify.example rename to .env.orca.example index f448ae8..8592bde 100644 --- a/.env.coolify.example +++ b/.env.orca.example @@ -1,12 +1,12 @@ # ========================================================= -# BreakPilot Compliance — Coolify Environment Variables +# BreakPilot Compliance — Orca Environment Variables # ========================================================= -# Copy these into Coolify's environment variable UI +# Copy these into Orca's environment variable UI # for the breakpilot-compliance Docker Compose resource. # ========================================================= -# --- External PostgreSQL (Coolify-managed, same as Core) --- -COMPLIANCE_DATABASE_URL=postgresql://breakpilot:CHANGE_ME@:5432/breakpilot_db +# --- External PostgreSQL (Orca-managed, same as Core) --- +COMPLIANCE_DATABASE_URL=postgresql://breakpilot:CHANGE_ME@:5432/breakpilot_db # --- Security --- JWT_SECRET=CHANGE_ME_SAME_AS_CORE diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5874e2f..d35dc73 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -5,12 +5,11 @@ ## 1. Getting Started ```bash -git clone ssh://git@coolify.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-compliance.git +git clone ssh://git@gitea.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-compliance.git cd breakpilot-compliance -git checkout coolify # always base work off coolify, NOT main ``` -**Branch conventions** (branch from `coolify`): +**Branch conventions** (branch from `main`): | Prefix | Use for | |--------|---------| @@ -177,7 +176,7 @@ with rationale. ## 6. Pull Requests -- **Target branch: `coolify`** — never open a PR directly against `main`. +- **Target branch: `main`** — squash merge your feature branch into `main`. - Keep PRs focused; one logical change per PR. **PR checklist before requesting review:** @@ -195,7 +194,7 @@ with rationale. This section is for AI-assisted development sessions using Claude Code. -- **Always verify your branch first:** `git branch --show-current` must return `coolify`. If it returns `main`, switch before doing anything. +- **Always work on a feature branch** (`feat/*`, `feature/*`, `hotfix/*`), never directly on `main`. - The `.claude/settings.json` `PreToolUse` hooks will automatically block Write/Edit operations on files that would exceed 500 lines. This is intentional — split the file instead. - If the `guardrail-integrity` CI job fails, check that your commit message body includes `[guardrail-change]`. Add it and amend or create a fixup commit. - **Never use `git add -A` or `git add .`** — always stage specific files by path to avoid accidentally committing `.env`, `node_modules/`, `.next/`, or compiled binaries. diff --git a/README.md b/README.md index 9ce81b4..0928de0 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ## Overview -breakpilot-compliance is a multi-tenant DSGVO/EU AI Act compliance platform that provides an SDK for consent management, data subject requests (DSR), audit logging, iACE impact assessments, and document archival. It ships as 10 containerised services covering an admin dashboard, a developer portal, a Python/FastAPI backend, a Go AI compliance engine, TTS, and a decentralised document store on IPFS. Every service is deployed automatically via Gitea Actions → Coolify on every push to `main`. +breakpilot-compliance is a multi-tenant DSGVO/EU AI Act compliance platform that provides an SDK for consent management, data subject requests (DSR), audit logging, iACE impact assessments, and document archival. It ships as 10 containerised services covering an admin dashboard, a developer portal, a Python/FastAPI backend, a Go AI compliance engine, TTS, and a decentralised document store on IPFS. Every service is deployed automatically via Gitea Actions → Orca on every push to `main`. --- @@ -45,7 +45,7 @@ All containers share the external `breakpilot-network` Docker network and depend **Prerequisites:** Docker, Go 1.24+, Python 3.12+, Node.js 20+ ```bash -git clone ssh://git@coolify.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-compliance.git +git clone ssh://git@gitea.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-compliance.git cd breakpilot-compliance # Copy and populate secrets (never commit .env) @@ -55,7 +55,7 @@ cp .env.example .env docker compose up -d ``` -For the Coolify/Hetzner production target (x86_64), use the override: +For the Orca/Hetzner production target (x86_64), use the override: ```bash docker compose -f docker-compose.yml -f docker-compose.hetzner.yml up -d @@ -77,7 +77,7 @@ git push origin feat/my-change Push to `main` triggers: 1. **Gitea Actions** — lint → test → validate (see CI Pipeline below) -2. **Coolify** — automatic build + deploy (~3 min total) +2. **Orca** — automatic build + deploy (~3 min total) Monitor status: diff --git a/docker-compose.coolify.yml b/docker-compose.orca.yml similarity index 94% rename from docker-compose.coolify.yml rename to docker-compose.orca.yml index 8e1d0fb..6bbd1ce 100644 --- a/docker-compose.coolify.yml +++ b/docker-compose.orca.yml @@ -1,9 +1,9 @@ # ========================================================= -# BreakPilot Compliance — Compliance SDK Platform (Coolify) +# BreakPilot Compliance — Compliance SDK Platform (Orca) # ========================================================= # Requires: breakpilot-core must be running -# Deployed via Coolify. SSL termination handled by Traefik. -# External services (managed separately in Coolify): +# Deployed via Orca. SSL termination handled by Traefik. +# External services (managed separately in Orca): # - PostgreSQL, Qdrant, S3-compatible storage # ========================================================= @@ -11,9 +11,9 @@ networks: breakpilot-network: external: true name: breakpilot-network - coolify: + orca: external: true - name: coolify + name: orca volumes: dsms_data: @@ -32,7 +32,7 @@ services: NEXT_PUBLIC_SDK_URL: ${NEXT_PUBLIC_SDK_URL:-https://sdk.breakpilot.ai} container_name: bp-compliance-admin labels: - - "traefik.docker.network=coolify" + - "traefik.docker.network=orca" expose: - "3000" environment: @@ -55,7 +55,7 @@ services: restart: unless-stopped networks: - breakpilot-network - - coolify + - orca developer-portal: build: @@ -63,7 +63,7 @@ services: dockerfile: Dockerfile container_name: bp-compliance-developer-portal labels: - - "traefik.docker.network=coolify" + - "traefik.docker.network=orca" expose: - "3000" environment: @@ -77,7 +77,7 @@ services: restart: unless-stopped networks: - breakpilot-network - - coolify + - orca # ========================================================= # BACKEND @@ -88,7 +88,7 @@ services: dockerfile: Dockerfile container_name: bp-compliance-backend labels: - - "traefik.docker.network=coolify" + - "traefik.docker.network=orca" expose: - "8002" environment: @@ -122,7 +122,7 @@ services: restart: unless-stopped networks: - breakpilot-network - - coolify + - orca # ========================================================= # SDK SERVICES @@ -133,7 +133,7 @@ services: dockerfile: Dockerfile container_name: bp-compliance-ai-sdk labels: - - "traefik.docker.network=coolify" + - "traefik.docker.network=orca" expose: - "8090" environment: @@ -164,7 +164,7 @@ services: restart: unless-stopped networks: - breakpilot-network - - coolify + - orca # ========================================================= # TTS SERVICE (Piper TTS + FFmpeg) diff --git a/scripts/deploy.sh b/scripts/deploy.sh index 2649428..c402810 100755 --- a/scripts/deploy.sh +++ b/scripts/deploy.sh @@ -3,7 +3,7 @@ # BreakPilot Compliance — Deploy Script # ========================================================= # Pushes to both remotes, rebuilds changed services on -# Mac Mini, and monitors Coolify production health. +# Mac Mini, and monitors Orca production health. # # Usage: ./scripts/deploy.sh # ========================================================= @@ -17,7 +17,7 @@ COMPOSE_FILE="${PROJECT_DIR}/docker-compose.yml" DOCKER="/usr/local/bin/docker" MAC_MINI="macmini" -# Coolify health endpoints +# Orca health endpoints HEALTH_ENDPOINTS=( "https://api-dev.breakpilot.ai/health" "https://sdk-dev.breakpilot.ai/health" @@ -107,8 +107,8 @@ else ok "Services restarted on Mac Mini." fi -# --- Step 5: Monitor Coolify health in background --- -info "Monitoring Coolify production health in background (every ${HEALTH_INTERVAL}s, max ${HEALTH_TIMEOUT}s)..." +# --- Step 5: Monitor Orca health in background --- +info "Monitoring Orca production health in background (every ${HEALTH_INTERVAL}s, max ${HEALTH_TIMEOUT}s)..." ( elapsed=0 @@ -137,15 +137,15 @@ info "Monitoring Coolify production health in background (every ${HEALTH_INTERVA echo "" if ${all_healthy}; then printf "\033[1;32m========================================\033[0m\n" - printf "\033[1;32m Coolify deploy complete! \033[0m\n" + printf "\033[1;32m Orca deploy complete! \033[0m\n" printf "\033[1;32m All health endpoints are healthy. \033[0m\n" printf "\033[1;32m Test at: https://admin-dev.breakpilot.ai\033[0m\n" printf "\033[1;32m========================================\033[0m\n" else printf "\033[1;31m========================================\033[0m\n" - printf "\033[1;31m Coolify deploy may have failed! \033[0m\n" + printf "\033[1;31m Orca deploy may have failed! \033[0m\n" printf "\033[1;31m Not all endpoints healthy after %ds. \033[0m\n" ${HEALTH_TIMEOUT} - printf "\033[1;31m Check Coolify logs. \033[0m\n" + printf "\033[1;31m Check Orca logs. \033[0m\n" printf "\033[1;31m========================================\033[0m\n" fi ) & @@ -155,6 +155,6 @@ HEALTH_PID=$! # --- Step 6: Report --- echo "" ok "Local deploy to Mac Mini: done." -info "Coolify health monitor running in background (PID ${HEALTH_PID})." -info "You will see a status banner when Coolify is ready (or after ${HEALTH_TIMEOUT}s timeout)." +info "Orca health monitor running in background (PID ${HEALTH_PID})." +info "You will see a status banner when Orca is ready (or after ${HEALTH_TIMEOUT}s timeout)." echo ""