# src/config

## Purpose

Contains flow configuration loading, validation, rendering, and file initialization.

## Modules

- `../config.js`: config defaults, parsing, merge precedence, and `flow config` helpers

## Conventions

- Keep the precedence order exact: defaults, global, project, workflow, workflow-local, env, flag
- Validate both keys and values before merging user-provided config
- Keep YAML output stable for tests and proof artifacts
- Prefer explicit supported-key handling over generic deep merges

## Verification

- Run `npm test`
- Run `npm run coverage`
- Run `npx eslint src/ --fix`
- Run `npx eslint src/`
