hsiegeln
9a575eaa94
feat: add license controller with generate and fetch endpoints
...
POST /api/tenants/{id}/license generates Ed25519-signed license JWT.
GET /api/tenants/{id}/license returns active license.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 15:00:31 +02:00
hsiegeln
d987969e05
feat: add license service with Ed25519 JWT signing and verification
...
Generates tier-aware license tokens with features/limits per tier.
Verifies signature and expiry. Audit logged.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:58:56 +02:00
hsiegeln
a74894e0f1
feat: add license entity, repository, and database migration
...
Licenses table linked to tenants with JSONB features/limits, Ed25519
signed token storage, and revocation support.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:56:52 +02:00
hsiegeln
c1cae25db7
feat: add tenant service, controller, and DTOs with TDD
...
CRUD operations for tenants with slug-based lookup, tier management,
and audit logging. Integration tests verify 201/409/401 responses.
2026-04-04 14:53:58 +02:00
hsiegeln
119034307c
feat: add tenant entity, repository, and database migration
...
Tenants table with slug, tier (LOW/MID/HIGH/BUSINESS), status
(PROVISIONING/ACTIVE/SUSPENDED/DELETED), Logto org reference, and
Stripe IDs.
2026-04-04 14:53:51 +02:00
hsiegeln
0a2d5970e4
feat: externalize Ed25519 keys with file-based loading
...
Keys are loaded from PEM files when CAMELEER_JWT_PRIVATE_KEY_PATH and
CAMELEER_JWT_PUBLIC_KEY_PATH are set. Falls back to ephemeral key
generation for development.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:48:20 +02:00
hsiegeln
24309eab94
docs: add dual deployment architecture spec and Phase 2 plan
...
Architecture spec covers Docker+K8s dual deployment with build-vs-buy
decisions (Logto, Traefik, Stripe, deferred Lago/Vault). Phase 2 plan
has 12 implementation tasks for tenants, identity, and licensing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-04 14:45:33 +02:00
hsiegeln
fcb372023f
feat: add Dockerfile and Gitea Actions CI pipeline
...
CI / build (push) Failing after 32s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:33:01 +02:00
hsiegeln
b5bd67fbd6
feat: add Spring Security with JWT filter, auth controller, and health endpoint
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:27:41 +02:00
hsiegeln
770f59500d
feat: add login with password verification and audit logging
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:26:37 +02:00
hsiegeln
33c4a2991f
feat: add Ed25519 JWT signing and verification
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:25:27 +02:00
hsiegeln
aff10704e0
feat: add user entity, registration, and RBAC model
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:23:59 +02:00
hsiegeln
cdd19e180e
feat: add audit logging framework with immutable append-only log
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:22:33 +02:00
hsiegeln
d7cc3a3e04
feat: add Flyway migrations for users, roles, and permissions
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:13:49 +02:00
hsiegeln
a7e28cab32
feat: add Docker Compose + TestContainers for PostgreSQL
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:13:39 +02:00
hsiegeln
c113c2b38b
feat: initialize Maven project with Spring Boot 3.4.3 + Java 21
...
Set up the foundational Spring Boot project structure:
- Root POM with web, security, JPA, Flyway, validation, AOP, actuator
- PostgreSQL + Testcontainers for test infrastructure
- Application YAML configs for default, dev, and test profiles
- Maven wrapper (3.9.9) for reproducible builds
- .gitignore for Maven/IDE/OS artifacts
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-30 10:08:14 +02:00
hsiegeln
5e06d31cfb
Add phase roadmap and Phase 1 implementation plan
...
Phase roadmap: 9 phases from foundation to frontend, each producing
working, testable software independently.
Phase 1 plan: Foundation + Auth — 10 tasks, ~60 steps covering:
- Maven project setup (Spring Boot 3.4.3, Java 21)
- PostgreSQL + Docker Compose + TestContainers
- Flyway migrations (users, roles, permissions, audit_log)
- Immutable audit logging framework
- User registration with bcrypt
- Ed25519 JWT signing (no third-party JWT library)
- Login with audit trail
- Spring Security JWT filter + RBAC
- Dockerfile + Gitea Actions CI
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-29 23:58:25 +02:00
hsiegeln
2ed6430aea
Add SaaS platform PRD
...
Comprehensive product requirements document covering:
- Four-tier structure (Low/Mid shared, High/Business dedicated)
- Modular monolith architecture (Spring Boot + React)
- Camel application runtime with agent auto-injection
- Flux CD GitOps provisioning, build-once-deploy-often pipeline
- Dual-mode license (SaaS API + air-gapped file)
- SOC 2 day-1 compliance, zero-trust tenant isolation
- Stripe billing (usage-based + committed resources)
- Platform self-monitoring (Prometheus/Grafana/Loki)
- Exchange Replay MOAT feature
Gitea epics: cameleer/cameleer-saas #1-#13
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-29 23:45:15 +02:00
hsiegeln
bd472be312
Add moat-strengthening features design spec
...
Comprehensive design document for three defensibility features:
- Live Route Debugger (replay-based, zero production impact)
- Payload Flow Lineage (targeted per-processor capture + diff)
- Cross-Service Trace Correlation + Topology Map (network effect)
Gitea issues: cameleer/cameleer3 #57-#72 (MOAT label)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-29 16:14:04 +02:00