Configuration System
Implement a hierarchical configuration system with .cora.yaml support.
Hierarchy (highest to lowest priority)
- CLI flags
- Environment variables (
CORA_MODEL, CORA_OUTPUT, etc.)
- Project
.cora.yaml
- User-level
~/.config/cora/config.yaml
- Built-in defaults
Config File Schema (.cora.yaml)
provider:
name: openai
api_key_env: OPENAI_API_KEY
base_url: https://api.openai.com/v1
model: gpt-4o
temperature: 0.1
review:
severity: warning
include: ["src/**/*.rs"]
exclude: ["src/vendor/**"]
language: en
focus: [security, performance, correctness, style]
scan:
batch_size: 20
chunk_lines: 500
output:
format: pretty
color: auto
Requirements
- Parse YAML config using
serde_yaml
- Merge configs across hierarchy levels
- Validate config values
cora init generates a starter .cora.yaml
Acceptance Criteria
Configuration System
Implement a hierarchical configuration system with
.cora.yamlsupport.Hierarchy (highest to lowest priority)
CORA_MODEL,CORA_OUTPUT, etc.).cora.yaml~/.config/cora/config.yamlConfig File Schema (
.cora.yaml)Requirements
serde_yamlcora initgenerates a starter.cora.yamlAcceptance Criteria
cora initcreates a documented template