refactor(context): validate ktx.yaml with Zod and surface issues in status

- Replace hand-rolled ktx.yaml parsing with a strict Zod schema and
  derive KtxProjectConfig types from it.
- Add validateKtxProjectConfig returning structured KtxConfigIssue[]
  with migration hints for deprecated keys (ingest.llm,
  scan.enrichment.backend, etc.).
- Wire ktx status/doctor to run validation, render schema issues in
  plain and JSON output, and add a Config row to project status.
- Update the orbit example to camelCase scan.relationships keys to
  match the schema.
This commit is contained in:
Andrey Avtomonov 2026-05-14 15:22:46 +02:00
parent 52dd89481c
commit 38e71a94e7
8 changed files with 511 additions and 524 deletions

View file

@ -13,14 +13,14 @@ ingest:
adapters: []
scan:
enrichment:
backend: none
mode: none
relationships:
enabled: true
llm_proposals: false
validation_required_for_manifest: true
accept_threshold: 0.85
review_threshold: 0.55
max_llm_tables_per_batch: 40
max_candidates_per_column: 25
profile_sample_rows: 10000
validation_concurrency: 4
llmProposals: false
validationRequiredForManifest: true
acceptThreshold: 0.85
reviewThreshold: 0.55
maxLlmTablesPerBatch: 40
maxCandidatesPerColumn: 25
profileSampleRows: 10000
validationConcurrency: 4