feat(kb): automatic KB builder, ingestion & validation tooling (#35) (#139)
* feat(kb): automatic KB builder, ingestion & validation tooling (#35)
Closes #118, #119, #120, #121, #122.
- Ingest committed Danbooru alias/implication snapshots during generation:
synonyms reach canonicals (long black stockings -> thighhighs), implications
become expand relations. Curated-wins preserved.
- Automatic candidate validator (structural rules reused from kb_validation +
confidence heuristic, no approval gate; SC0022).
- Duplicate/conflict detection tool (scripts/detect_kb_conflicts.py) + reusable
detect_conflicts; clean reference KB reports zero.
- KB coverage benchmark harness (scripts/coverage_benchmark.py) + JSON summary.
- Single fully-automated, CI-runnable build pipeline (scripts/build_knowledge_base.py)
that fails fast on rejections/conflicts and never prompts. Docs added.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* test(kb): use pytest.approx for confidence float assertions (SonarCloud reliability)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---------
Co-authored-by: kunail0804 <kunail0804@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>