# Core Server

`core-server` 是 AI Support 的基础核心服务框架，提供配置加载、依赖注入、数据库连接、数据库迁移、后台服务管理和 gRPC 服务。

当前只包含基础设施，不包含业务领域模型。

## RPC Services

- `grpc.health.v1.Health`
- gRPC Server Reflection

服务使用明文 gRPC，不启用 TLS 或 gRPC Gateway。

## Run

```bash
cd services/core-server
cp config.example.yaml config.local.yaml
# 编辑 config.local.yaml，填写可访问的 MySQL 配置
go run ./cmd/core-server --config config.local.yaml
```

默认监听 `:9090`。

配置按以下顺序合并，后面的配置覆盖前面的配置：

1. Go 结构体默认值
2. `--config` 指定的 YAML 文件
3. `secret.rootConfigSecretName` 指定的 AWS Secrets Manager 配置

## Development

```bash
make build
go test ./...
```

新增后台服务时，实现 `packages/sdk-go/infra/service.Service`，并通过 Dig 的 `group:"service"` 注册。新增 RPC handler 时，实现 `rpcserver.Handler`，并通过 `app.HandlerResult` 注册。
