jevascript
esc

    Type to search · ↑↓ to move · ↵ to open

    Get started

    Reference

    Changelog

    What changed in each release. The package follows semantic versioning; before 1.0, minor versions may change the public API.

    Releases are also published on GitHub and npm.

    0.1.0#

    2026-09-23

    Initial public release.

    • semantic(state) with is(), score(), choose(), batch() and rank().
    • Automatic batching: every question created in one synchronous turn shares a request. Warning on unbatched sequential awaits outside production.
    • createSemantic() for private instances; configureSemantic() for the module-level one; zero configuration with JEV_API_KEY.
    • Definitions: defineRule, defineMetric, defineSchema, and the low-level evaluate() with boolean, number, enumOf, object and numberRange output helpers.
    • Collections: filter, some, every, rank, find (one request) and compare (one request).
    • Measured confidence via samples and minConfidence, with value or async fallback; allowUnknown bands.
    • Caching with TTL strings, an LRU MemoryCache, and the SemanticCache interface for shared stores.
    • Observability hooks onEvaluation and onUnbatched.
    • Jev provider with a pinned model, retries with backoff, timeouts, and per-request key resolution.
    • jevascript/testing with createMockSemanticProvider.
    • Error classes: SemanticError, NotConfiguredError, UnsupportedByProviderError, LowConfidenceError, ProviderError.

    Not yet built#

    Designed but out of scope for this release: evidence (extractive citation of the lines behind a judgement), semanticAssert and defineInvariant, definePolicy (mixed deterministic and semantic rules), semantic.query, evaluateDataset, adaptive filter packing, and framework and provider add-ons (Next.js helper, Zod bridge, OpenAI provider, Vercel AI SDK bridge).