fix(engine): skip non-dict models/views when collecting names - #2546
fix(engine): skip non-dict models/views when collecting names#2546Bartok9 wants to merge 2 commits into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (2)
WalkthroughManifest planning now safely extracts non-empty names from valid model and view entries, ignoring malformed manifest data. Unit tests cover invalid entries, empty inputs, non-list inputs, and view handling. ChangesManifest name handling
Estimated code review effort: 2 (Simple) | ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Malformed MDL lists (nulls, primitives) caused TypeError/KeyError during dry_plan queryable-name collection. Guard via _named_manifest_entries.
90c1fa1 to
871406d
Compare
|
Thanks for the patch, but I'm going to pass on this one. The shapes this guards against are already rejected by
So the request aborts either way — The broader reason I'd rather not take it: manifest schema is validated once, in If you'd like to fix the symptom that's actually visible here, there is a real one worth doing: a corrupt |
|
Thanks for the detailed trace — that's a convincing analysis. You're right: Closing this. The corrupt- |
Summary
WrenEngine._planbuiltmodel_names/view_nameswithm["name"]over rawmanifest_json["models"|"views"].TypeError/KeyErrorbefore policy checks._named_manifest_entriesand use it for both lists.Motivation
Same defensive pattern as memory schema_indexer / seed_query guards already on Apache-2.0
core/**paths. Planning should degrade to empty name sets for junk rows, not abort the request.Verification
Real behavior proof
Apache-2.0 path:
core/wren/**only.Summary by CodeRabbit
Bug Fixes
Tests