# goalctl 标准文档
---
## 1. 需求标准
### 目标
goalctl 提供最小化 Goal-to-Contract 编译能力,包含 doctor(诊断)、validate(验证)、compile(编译)三个子命令。
### 边界
- **包含**:doctor 诊断、validate 验证、compile 编译、fixtures + VERSION 单元测试
- **不包含**:完整权限平面、IDE 集成
- **依赖**:clap、serde、serde_json、serde_yaml、sha2、hex
---
## 2. 设计标准
### 架构
```text
goalctl
├── cmd/ — doctor/validate/compile 子命令
├── compiler/ — Goal → Contract 编译逻辑
├── validator/ — 验证逻辑
└── doctor/ — 诊断逻辑
```
### CLI 结构
```text
goalctl doctor — 检查环境/配置
goalctl validate — 验证 Goal 文件
goalctl compile — 编译 Goal → Contract
```
---
## 3-17 简写
### 编码标准 — clap 命令行参数解析、完整错误处理
### 测试标准 — fixtures 测试(编译/验证)、VERSION 单元测试
### 性能标准 — 编译 < 1s(典型 Goal 文件)
### 安全标准 — 文件路径注入防护、sha2 哈希验证
### 可靠性 — 文件 I/O 错误处理
### 风控 — N/A
### 回测 — N/A
### 上线标准
- 二进制发布(cargo install --path tools/goalctl)
- 版本嵌入(--version 输出)
### 运维标准
- 使用 rust-toolchain 固定版本构建
- 二进制部署
### 文档标准
- README:安装、使用、子命令说明
- CLI --help 自动生成
### 交付标准
- Cargo.lock 锁定依赖
- CI 构建产物
- 二进制哈希校验
### 评分 — 4/5
### 验收 — CI门禁 + VERSION 测试通过
---
**版本**:v1.0