Add wellposed - #111
Add wellposed#111suraj-phanindra wants to merge 0 commit into
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughThe projects catalog adds wellposed, a JavaScript project in the agents category. Its entry includes the repository, site URL, description, zero stars, and an added date of 2026-09-23. ChangesProject catalog
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: Merge Risk: ⚪ Minimal · up to The new entry uses a registered category and presents no concrete merge-blocking issue in the supplied catalog context. 🚥 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 |
dfd2ec9 to
4385696
Compare
wellposed — https://github.com/suraj-phanindra/wellposed ·
npx wellposed lint request.jsonChecks a Jev request before you send it. Two layers: 40 structural rules that run offline with no API key (a Choice with no none-of-the-above option, backticked state paths that do not resolve, criteria in the wrong shape for the primitive, the context limits), then Jev-on-Jev checks for the things structure cannot settle — whether "none of these" is actually reachable, whether two options overlap, whether the question is answerable from the state given.
Where Jev fits: the semantic layer asks Jev about the request itself, and only for what the free layer cannot decide.
It came out of a measurement rather than an idea. Over 40 requests generated from realistic intents, 0 had syntax errors — the API rejects those with exact field paths — but 16 were semantically ill-posed, and 0 of 11 Choice questions carried a none-of-the-above option. A Choice whose options do not cover the input still picks one, and did so at confidence 1.00 on a live call, which is why a confidence threshold cannot catch that class.
Both layers ship their labelled corpora, so the numbers are reproducible:
npm run eval(85% recall / 92% precision over 76 items, offline) andnpm run eval:semantic(91% / 100% over 70 items, one call per item).Category
agents, alongside JevLint and the other linters. Zero dependencies, Node 18+, MIT. Also listed in Amal-David/awesome-jev.Only
data/projects.jsonis changed;npm run validatepasses at 998 entries.Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by CodeRabbit