docs: Align documentation with true microservices architecture

Transform all documentation from modular monolith to true microservices
architecture where core services are independently deployable.

Key Changes:
- Core Kernel: Infrastructure only (no business logic)
- Core Services: Auth, Identity, Authz, Audit as separate microservices
  - Each service has own entry point (cmd/{service}/)
  - Each service has own gRPC server and database schema
  - Services register with Consul for service discovery
- API Gateway: Moved from Epic 8 to Epic 1 as core infrastructure
  - Single entry point for all external traffic
  - Handles routing, JWT validation, rate limiting, CORS
- Service Discovery: Consul as primary mechanism (ADR-0033)
- Database Pattern: Per-service connections with schema isolation

Documentation Updates:
- Updated all 9 architecture documents
- Updated 4 ADRs and created 2 new ADRs (API Gateway, Service Discovery)
- Rewrote Epic 1: Core Kernel & Infrastructure (infrastructure only)
- Rewrote Epic 2: Core Services (Auth, Identity, Authz, Audit as services)
- Updated Epic 3-8 stories for service architecture
- Updated plan.md, playbook.md, requirements.md, index.md
- Updated all epic READMEs and story files

New ADRs:
- ADR-0032: API Gateway Strategy
- ADR-0033: Service Discovery Implementation (Consul)

New Stories:
- Epic 1.7: Service Client Interfaces
- Epic 1.8: API Gateway Implementation
This commit is contained in:
2025-11-06 08:47:27 +01:00
parent cab7cadf9e
commit 38a251968c
47 changed files with 3190 additions and 1613 deletions

View File

@@ -4,13 +4,16 @@ Welcome to the Go Platform documentation! This is a plugin-friendly SaaS/Enterpr
## What is Go Platform?
Go Platform is a modular, extensible platform designed to support multiple business domains through a plugin architecture. It provides:
Go Platform is a microservices platform designed to support multiple business domains through independent, deployable services. It provides:
- **Core Kernel**: Foundation services including authentication, authorization, configuration, logging, and observability
- **Module Framework**: Plugin system for extending functionality
- **Core Kernel**: Infrastructure only (configuration, logging, DI, health, metrics, observability) - no business logic
- **Core Services**: Independent microservices (Auth, Identity, Authz, Audit) with their own entry points and databases
- **API Gateway**: Single entry point for all external traffic, handles routing, authentication, and rate limiting
- **Service Discovery**: Consul-based service registry for dynamic service discovery
- **Module Framework**: Feature services (Blog, Billing, etc.) as independent services
- **Infrastructure Adapters**: Support for databases, caching, event buses, and job scheduling
- **Security-by-Design**: Built-in JWT authentication, RBAC/ABAC authorization, and audit logging
- **Observability**: OpenTelemetry integration for tracing, metrics, and logging
- **Observability**: OpenTelemetry integration for distributed tracing, metrics, and logging across services
## Documentation Structure
@@ -63,11 +66,17 @@ Detailed task definitions for each epic are available in the [Stories section](s
## Key Principles
- **Hexagonal Architecture**: Clear separation between core and plugins
- **Microservices Architecture**: Each module is an independent service from day one
- **Plugin-First Design**: Extensible architecture supporting static and dynamic modules
- **microMicroservices Architecture**: Each service is independently deployable from day one
- Core Kernel: Infrastructure only (config, logger, DI, health, metrics)
- Core Services: Auth, Identity, Authz, Audit as separate services
- Feature Services: Blog, Billing, etc. as independent services
- **API Gateway**: Single entry point for all external traffic
- **Service Discovery**: Consul-based service registry for dynamic service location
- **Service Clients**: All inter-service communication via gRPC/HTTP through service clients
- **Database Isolation**: Each service has its own database connection pool and schema
- **Hexagonal Architecture**: Clear separation between interfaces and implementations
- **Security-by-Design**: Built-in authentication, authorization, and audit capabilities
- **Observability**: Comprehensive logging, metrics, and tracing
- **Observability**: Comprehensive distributed tracing, metrics, and logging across services
- **API-First**: OpenAPI/GraphQL schema generation
## Contributing