mirror of
https://github.com/safishamsi/graphify.git
synced 2026-10-29 10:05:21 +00:00
Three fixes on top of #4706's YAML extractor: - Multi-document YAML (`---` separators) returned zero nodes because it used yaml.safe_load, which accepts only one document; k8s manifests, Helm output, and CI pipelines (the headline use cases) were silently empty. Use safe_load_all and give each document a distinct node (labelled by kind+name for k8s) so two docs in one file do not merge their keys. - Add a _is_config_yaml gate mirroring extract_json's _is_config_json: a top-level data array, an OpenAPI/Swagger spec, a JSON-schema-in-YAML, and a flat all-scalar bundle (i18n) are skipped as data instead of minting up to 500 orphan nodes. A mapping with any nested value, a recognized config name, or a .github/workflows path is still walked. - Bump _AST_CACHE_SCHEMA 22 -> 23 (the PR reclassifies .yaml/.yml and adds a new extractor, so cached YAML must re-extract). - Tests: multi-doc, data/OpenAPI/array skip, the safe_load ACE guard, and caps. - Clearer missing-PyYAML hint (pip install pyyaml). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>