⚡ Memintel is in early access — star us on GitHub to follow the build.
Conditions
Conditions are the significance layer (φ). They define when a concept's Result (Rₜ) is meaningful enough to act on. Conditions are immutable once created — changes produce new versions.
Endpoint
Level
Description
POST /conditions/explain
Definition-level
Explains the condition logic — strategy, parameters, and why they were selected. No entity or execution required.
POST /decisions/explain
Instance-level
Explains a specific Decision (Aₜ) for a given entity at a given timestamp — why it fired, which signals drove the Result (Rₜ).
Definition-level. Explains the condition logic itself — what strategy is applied, why those parameters were selected, and the condition's relationship to its concept. Use for audit trails, compliance documentation, and reviewing guardrails decisions.
Determinism Guarantee
Same condition_id, condition_version, and timestamp always return the same explanation. Application context may influence terminology in natural language summaries — never decision values, parameter values, or attribution weights.
const exp =await client.conditions.explain({ conditionId:"org.high_churn", conditionVersion:"1.0", }); console.log(exp.natural_language_summary); // "Fires when churn_risk score exceeds 0.8 — the high-severity threshold // based on guardrails priors." console.log(exp.parameter_rationale); // "Threshold 0.8 from primitive-level prior at high severity. // Severity resolved from \"significantly\" via severity vocabulary."
Analyses stored feedback and/or a target alert volume to recommend adjusted parameters. Does not modify the existing condition — call POST /conditions/apply-calibration to create a new version.
Strategy coverage: Supports threshold, percentile, change, and z_score. For equals strategy, always returns status: no_recommendation with reason: not_applicable_strategy — no numeric parameter to adjust.
Bounds Enforcement
Recommendations are validated against guardrails threshold_bounds. If exceeded, on_bounds_exceeded applies (clamp or reject). Bounds cannot be crossed.
Creates a new immutable condition version from the calibration recommendation. The existing version is never modified.
Rebinding is Always Explicit
This endpoint does not auto-rebind tasks. It returns tasks_pending_rebind so you know which tasks still need rebinding. Call PATCH /tasks/{id} for each. This prevents silent behavior changes.