docs: add mkdocs, update links, add architecture documentation
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# Task 1.1.1: Extend `internal/di/container.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.1.1
|
||||
- **Title**: Extend `internal/di/container.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.1
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Extend `internal/di/container.go`:
|
||||
|
||||
## Requirements
|
||||
- Extend `internal/di/container.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.1.1 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.1.2: Create `internal/di/providers.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.1.2
|
||||
- **Title**: Create `internal/di/providers.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.1
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `internal/di/providers.go`:
|
||||
|
||||
## Requirements
|
||||
- Create `internal/di/providers.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.1.2 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.1.3: Add `internal/di/core_module.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.1.3
|
||||
- **Title**: Add `internal/di/core_module.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.1
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Add `internal/di/core_module.go`:
|
||||
|
||||
## Requirements
|
||||
- Add `internal/di/core_module.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.1.3 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.2.1: Install `entgo.io/ent/cmd/ent`
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.2.1
|
||||
- **Title**: Install `entgo.io/ent/cmd/ent`
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.2
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Install `entgo.io/ent/cmd/ent`
|
||||
|
||||
## Requirements
|
||||
- Install `entgo.io/ent/cmd/ent`
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.2.1 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
46
docs/content/stories/phase1/1.2.2-initialize-ent-schema.md
Normal file
46
docs/content/stories/phase1/1.2.2-initialize-ent-schema.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Task 1.2.2: Initialize Ent schema:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.2.2
|
||||
- **Title**: Initialize Ent schema:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.2
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Initialize Ent schema:
|
||||
|
||||
## Requirements
|
||||
- Initialize Ent schema:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.2.2 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
|
||||
## Code Reference
|
||||
|
||||
```go
|
||||
go run entgo.io/ent/cmd/ent init User Role Permission AuditLog
|
||||
```
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.2.3: Define core entities in `internal/ent/schema/`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.2.3
|
||||
- **Title**: Define core entities in `internal/ent/schema/`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.2
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Define core entities in `internal/ent/schema/`:
|
||||
|
||||
## Requirements
|
||||
- Define core entities in `internal/ent/schema/`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.2.3 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.2.4: Generate Ent code: `go generate ./internal/ent`
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.2.4
|
||||
- **Title**: Generate Ent code: `go generate ./internal/ent`
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.2
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Generate Ent code: `go generate ./internal/ent`
|
||||
|
||||
## Requirements
|
||||
- Generate Ent code: `go generate ./internal/ent`
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.2.4 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.2.5: Create `internal/infra/database/client.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.2.5
|
||||
- **Title**: Create `internal/infra/database/client.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.2
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `internal/infra/database/client.go`:
|
||||
|
||||
## Requirements
|
||||
- Create `internal/infra/database/client.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.2.5 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.2.6: Add database config to `config/default.yaml`
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.2.6
|
||||
- **Title**: Add database config to `config/default.yaml`
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.2
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Add database config to `config/default.yaml`
|
||||
|
||||
## Requirements
|
||||
- Add database config to `config/default.yaml`
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.2.6 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.3.1: Install `github.com/prometheus/client_golang/prometheus`
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.1
|
||||
- **Title**: Install `github.com/prometheus/client_golang/prometheus`
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Install `github.com/prometheus/client_golang/prometheus`
|
||||
|
||||
## Requirements
|
||||
- Install `github.com/prometheus/client_golang/prometheus`
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.1 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.3.2: Install `github.com/heptiolabs/healthcheck` (optional, or custom)
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.2
|
||||
- **Title**: Install `github.com/heptiolabs/healthcheck` (optional, or custom)
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Install `github.com/heptiolabs/healthcheck` (optional, or custom)
|
||||
|
||||
## Requirements
|
||||
- Install `github.com/heptiolabs/healthcheck` (optional, or custom)
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.2 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
# Task 1.3.3: Create `pkg/health/health.go` interface:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.3
|
||||
- **Title**: Create `pkg/health/health.go` interface:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `pkg/health/health.go` interface:
|
||||
|
||||
## Requirements
|
||||
- Create `pkg/health/health.go` interface:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.3 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
|
||||
## Code Reference
|
||||
|
||||
```go
|
||||
type HealthChecker interface {
|
||||
Check(ctx context.Context) error
|
||||
}
|
||||
```
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.3.4: Implement `internal/health/registry.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.4
|
||||
- **Title**: Implement `internal/health/registry.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Implement `internal/health/registry.go`:
|
||||
|
||||
## Requirements
|
||||
- Implement `internal/health/registry.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.4 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.3.5: Create `internal/metrics/metrics.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.5
|
||||
- **Title**: Create `internal/metrics/metrics.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `internal/metrics/metrics.go`:
|
||||
|
||||
## Requirements
|
||||
- Create `internal/metrics/metrics.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.5 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.3.6: Add `/metrics` endpoint (Prometheus format)
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.6
|
||||
- **Title**: Add `/metrics` endpoint (Prometheus format)
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Add `/metrics` endpoint (Prometheus format)
|
||||
|
||||
## Requirements
|
||||
- Add `/metrics` endpoint (Prometheus format)
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.6 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.3.7: Register endpoints in main HTTP router
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.3.7
|
||||
- **Title**: Register endpoints in main HTTP router
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.3
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Register endpoints in main HTTP router
|
||||
|
||||
## Requirements
|
||||
- Register endpoints in main HTTP router
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.3.7 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
# Task 1.4.1: Create `pkg/errorbus/errorbus.go` interface:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.4.1
|
||||
- **Title**: Create `pkg/errorbus/errorbus.go` interface:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.4
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `pkg/errorbus/errorbus.go` interface:
|
||||
|
||||
## Requirements
|
||||
- Create `pkg/errorbus/errorbus.go` interface:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.4.1 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
|
||||
## Code Reference
|
||||
|
||||
```go
|
||||
type ErrorPublisher interface {
|
||||
Publish(err error)
|
||||
}
|
||||
```
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.4.2: Implement `internal/errorbus/channel_bus.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.4.2
|
||||
- **Title**: Implement `internal/errorbus/channel_bus.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.4
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Implement `internal/errorbus/channel_bus.go`:
|
||||
|
||||
## Requirements
|
||||
- Implement `internal/errorbus/channel_bus.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.4.2 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.4.3: Add panic recovery middleware that publishes to error bus
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.4.3
|
||||
- **Title**: Add panic recovery middleware that publishes to error bus
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.4
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Add panic recovery middleware that publishes to error bus
|
||||
|
||||
## Requirements
|
||||
- Add panic recovery middleware that publishes to error bus
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.4.3 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.4.4: Register error bus in DI container
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.4.4
|
||||
- **Title**: Register error bus in DI container
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.4
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Register error bus in DI container
|
||||
|
||||
## Requirements
|
||||
- Register error bus in DI container
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.4.4 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.5.1: Install `github.com/gin-gonic/gin`
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.5.1
|
||||
- **Title**: Install `github.com/gin-gonic/gin`
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.5
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Install `github.com/gin-gonic/gin`
|
||||
|
||||
## Requirements
|
||||
- Install `github.com/gin-gonic/gin`
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.5.1 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.5.2: Create `internal/server/server.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.5.2
|
||||
- **Title**: Create `internal/server/server.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.5
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `internal/server/server.go`:
|
||||
|
||||
## Requirements
|
||||
- Create `internal/server/server.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.5.2 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.5.3: Wire HTTP server into fx lifecycle:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.5.3
|
||||
- **Title**: Wire HTTP server into fx lifecycle:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.5
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Wire HTTP server into fx lifecycle:
|
||||
|
||||
## Requirements
|
||||
- Wire HTTP server into fx lifecycle:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.5.3 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.5.4: Update `cmd/platform/main.go` to use fx lifecycle
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.5.4
|
||||
- **Title**: Update `cmd/platform/main.go` to use fx lifecycle
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.5
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Update `cmd/platform/main.go` to use fx lifecycle
|
||||
|
||||
## Requirements
|
||||
- Update `cmd/platform/main.go` to use fx lifecycle
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.5.4 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.6.1: Install OpenTelemetry packages:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.6.1
|
||||
- **Title**: Install OpenTelemetry packages:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.6
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Install OpenTelemetry packages:
|
||||
|
||||
## Requirements
|
||||
- Install OpenTelemetry packages:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.6.1 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.6.2: Create `internal/observability/tracer.go`:
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.6.2
|
||||
- **Title**: Create `internal/observability/tracer.go`:
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.6
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Create `internal/observability/tracer.go`:
|
||||
|
||||
## Requirements
|
||||
- Create `internal/observability/tracer.go`:
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.6.2 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.6.3: Add HTTP instrumentation middleware
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.6.3
|
||||
- **Title**: Add HTTP instrumentation middleware
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.6
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Add HTTP instrumentation middleware
|
||||
|
||||
## Requirements
|
||||
- Add HTTP instrumentation middleware
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.6.3 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Task 1.6.4: Add trace context propagation to requests
|
||||
|
||||
## Metadata
|
||||
- **Task ID**: 1.6.4
|
||||
- **Title**: Add trace context propagation to requests
|
||||
- **Phase**: 1 - Core Kernel & Infrastructure
|
||||
- **Section**: 1.6
|
||||
- **Status**: Pending
|
||||
- **Priority**: High
|
||||
- **Estimated Time**: TBD
|
||||
- **Dependencies**: TBD
|
||||
|
||||
## Description
|
||||
Add trace context propagation to requests
|
||||
|
||||
## Requirements
|
||||
- Add trace context propagation to requests
|
||||
|
||||
## Implementation Steps
|
||||
1. TODO: Add implementation steps
|
||||
2. TODO: Add implementation steps
|
||||
3. TODO: Add implementation steps
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Task 1.6.4 is completed
|
||||
- [ ] All requirements are met
|
||||
- [ ] Code compiles and tests pass
|
||||
|
||||
## Related ADRs
|
||||
- See relevant ADRs in `docs/adr/`
|
||||
|
||||
## Implementation Notes
|
||||
- TODO: Add implementation notes
|
||||
|
||||
## Testing
|
||||
```bash
|
||||
# TODO: Add test commands
|
||||
go test ./...
|
||||
```
|
||||
|
||||
64
docs/content/stories/phase1/README.md
Normal file
64
docs/content/stories/phase1/README.md
Normal file
@@ -0,0 +1,64 @@
|
||||
# Phase 1: Core Kernel & Infrastructure
|
||||
|
||||
## Overview
|
||||
Implement dependency injection container, set up database (Ent ORM), create health and metrics endpoints, implement error bus, and add basic HTTP server with middleware.
|
||||
|
||||
## Tasks
|
||||
|
||||
### 1.1 Dependency Injection Container
|
||||
- [1.1.1 - Extend DI Container](./1.1.1-extend-internaldicontainergo.md)
|
||||
- [1.1.2 - Create DI Providers](./1.1.2-create-internaldiprovidersgo.md)
|
||||
- [1.1.3 - Add Core Module](./1.1.3-add-internaldicore_modulego.md)
|
||||
|
||||
### 1.2 Database Setup (Ent)
|
||||
- [1.2.1 - Install Ent](./1.2.1-install-entgoioentcmdent.md)
|
||||
- [1.2.2 - Initialize Ent Schema](./1.2.2-initialize-ent-schema.md)
|
||||
- [1.2.3 - Define Core Entities](./1.2.3-define-core-entities-in-internalentschema.md)
|
||||
- [1.2.4 - Generate Ent Code](./1.2.4-generate-ent-code-go-generate-internalent.md)
|
||||
- [1.2.5 - Create Database Client](./1.2.5-create-internalinfradatabaseclientgo.md)
|
||||
- [1.2.6 - Add Database Config](./1.2.6-add-database-config-to-configdefaultyaml.md)
|
||||
|
||||
### 1.3 Health & Metrics
|
||||
- [1.3.1 - Install Prometheus](./1.3.1-install-githubcomprometheusclient_golangprometheus.md)
|
||||
- [1.3.2 - Install Health Check](./1.3.2-install-githubcomheptiolabshealthcheck-optional-or.md)
|
||||
- [1.3.3 - Create Health Interface](./1.3.3-create-pkghealthhealthgo-interface.md)
|
||||
- [1.3.4 - Implement Health Registry](./1.3.4-implement-internalhealthregistrygo.md)
|
||||
- [1.3.5 - Create Metrics](./1.3.5-create-internalmetricsmetricsgo.md)
|
||||
- [1.3.6 - Add Metrics Endpoint](./1.3.6-add-metrics-endpoint-prometheus-format.md)
|
||||
- [1.3.7 - Register Endpoints](./1.3.7-register-endpoints-in-main-http-router.md)
|
||||
|
||||
### 1.4 Error Bus
|
||||
- [1.4.1 - Create Error Bus Interface](./1.4.1-create-pkgerrorbuserrorbusgo-interface.md)
|
||||
- [1.4.2 - Implement Channel Bus](./1.4.2-implement-internalerrorbuschannel_busgo.md)
|
||||
- [1.4.3 - Add Panic Recovery Middleware](./1.4.3-add-panic-recovery-middleware-that-publishes-to-er.md)
|
||||
- [1.4.4 - Register Error Bus](./1.4.4-register-error-bus-in-di-container.md)
|
||||
|
||||
### 1.5 HTTP Server Foundation
|
||||
- [1.5.1 - Install Gin](./1.5.1-install-githubcomgin-gonicgin.md)
|
||||
- [1.5.2 - Create Server](./1.5.2-create-internalserverservergo.md)
|
||||
- [1.5.3 - Wire HTTP Server](./1.5.3-wire-http-server-into-fx-lifecycle.md)
|
||||
- [1.5.4 - Update Main Entry Point](./1.5.4-update-cmdplatformmaingo-to-use-fx-lifecycle.md)
|
||||
|
||||
### 1.6 Observability (OpenTelemetry)
|
||||
- [1.6.1 - Install OpenTelemetry](./1.6.1-install-opentelemetry-packages.md)
|
||||
- [1.6.2 - Create Tracer](./1.6.2-create-internalobservabilitytracergo.md)
|
||||
- [1.6.3 - Add HTTP Instrumentation](./1.6.3-add-http-instrumentation-middleware.md)
|
||||
- [1.6.4 - Add Trace Context Propagation](./1.6.4-add-trace-context-propagation-to-requests.md)
|
||||
|
||||
## Deliverables Checklist
|
||||
- [ ] DI container with all core services registered
|
||||
- [ ] Database schema defined with Ent
|
||||
- [ ] Health check endpoints working
|
||||
- [ ] Metrics endpoint exposed
|
||||
- [ ] Error bus implemented and integrated
|
||||
- [ ] HTTP server with middleware stack
|
||||
- [ ] OpenTelemetry tracing integrated
|
||||
|
||||
## Acceptance Criteria
|
||||
- `GET /healthz` returns 200
|
||||
- `GET /ready` checks database connectivity
|
||||
- `GET /metrics` returns Prometheus metrics
|
||||
- HTTP requests are logged with structured logging
|
||||
- Panic recovery middleware catches and reports errors
|
||||
- OpenTelemetry traces are generated for HTTP requests
|
||||
|
||||
Reference in New Issue
Block a user