ONE DESIGN DISTINCTION

What belongs in Jevantic?

Separate the judgment the model makes, the convenience the library provides, and the action the application takes.

01 · Primitive

Measure a risk

A Noul question asks whether a command could expose private data. Jev returns a probability.

02 · Convenience API

Make it easy to ask

A reusable assess_command() function accepts a typed command record, builds the question, and returns the answer with request metadata.

03 · Workflow

Decide what happens

The application compares that probability with its policy, then runs the command, requests review, or rejects it.

The first layer comes from Jev's three primitives: Noul estimates a yes outcome, Choice selects from supplied options, and Score evaluates an ordered rubric. The other layers are software we build around those answers.

“Convenience API” is the broad term

Syntactic sugar is a narrower idea: shorter syntax with equivalent meaning. For example, Python's @decorate notation applies a decorator to a function. The language reference shows the equivalent transformation.

Ergonomics describes how pleasant and hard to misuse an interface is. A convenience API improves ergonomics by packaging recurring work. It may also add substantive behavior, such as bounded concurrency, input validation, or preserving the type of a selected object.

The design question: What repetitive code does this helper remove, and what decisions does it make on the caller's behalf?

Try that distinction on a cookbook

A document review asks several questions in one request. A helper returns named, typed answers. The application rejects a document when its risk estimate exceeds a configured threshold.

Which part is the library convenience, and which part is policy?

The helper that bundles questions and recovers typed answers is a convenience API. The rejection threshold is policy: it encodes the application's cost of a wrong decision. They can be composed without putting a universal threshold in the library.

The parallel questions cookbook supplies a concrete shared-state example.

Typed does not mean true

Types and validation can establish that an answer is a ScoreAnswer, its probability values are valid, and its rubric matches the request. They cannot establish that the model judged the real situation correctly.

A probability describes an outcome estimate. TypeSafe's confidence summarizes a distribution; it is a separate statistic. Read the provider's confidence explanation before treating either number as a policy threshold.