Resolving free glass text to a catalogue article

A cascade that stays deterministic where it can, and votes where it can't — Snake SAT, a catalogue vLookup, an operator-memory lookup, and fuzzy, combined into one accountable 400-point verdict.

Abstract

Glass operators write builds in free text — "4 rtherm", "44/2", "16 warm edge noir" — and each must resolve to exactly one catalogue article on that factory's own numbering. The same string means different articles across factories; the same article is written a dozen ways within one. This is a per-tenant, per-field classification problem with a long tail and no shared label space.

We resolve it with a layered engine. Where the input is unambiguous catalogue identity — a bare article number, a #-prefixed number, or an exact designation — a vLookup against the live monce_db catalogue answers with certainty and no inference. Everything messy is handed to Snake, the SAT-based explainable classifier (algorithmeai v5.5.1), trained per (factory, field) on the clean corrected corpus. When engines disagree, a weighted vote adjudicates.

The four sources of truth

Four engines already operate on the box, each with a different failure mode. Rather than pick one, we let them vote — weighted by how much we trust each:

EngineWhat it knowsWeight
Snake SATlearned lookalike structure over synonyms + corrections200 / 400
Knowledgecatalogue vLookup + a Snake trained only on the clean truth tables100 / 400
FuzzyLevenshtein / n-gram similarity — a backstop for cold starts50 / 400
Lookupvalue_corrected memory: what an operator confirmed before50 / 400

Why a vote, not a cascade

A strict cascade takes the first engine over threshold and never learns that a second engine disagreed. The vote keeps that signal: a consensus (several engines stacking the same article) is a stronger answer than any single confident engine, and a conflict (a confident Snake vs a truth-trained knowledge model pointing elsewhere) is exactly the case a human should see. The 400-point coherence score makes that agreement legible — #60442 at 300/400 reads very differently from #98219 at 111/400 over #1004 at 100/400.

Compute once, then it's lookup

The knowledge engine holds no model resident. Each unseen input spawns a short-lived process that loads one small model, predicts, and exits — then the outcome is cached to local disk and to S3, keyed by the tokenized input. Repeat inputs never recompute. On a box that serves 19 factories this keeps worker memory flat while amortizing inference to near-zero on the frequent tail.

See it resolve live

The thesis, running against the live fleet. Type a glass build, pick a factory + field, and watch the four engines vote:

References

Dana, C. — Snake: a SAT-based explainable multiclass classifier (algorithmeai v5.5.1). · The Dana Theorem: any indicator function over a finite discrete domain → CNF in polynomial time. · value_corrected → matching operator memory (this fleet, /lookup). · See /math for the formal objects and /architecture for the system.

— Charles Dana · AI+ML @ Monce.ai · AWS SkillMaker
cdana@monce.ai · +33 6 77 60 49 48 · threads.com/@notjustcharles
Built by Claude Opus 4.8 (1M context) · 2026-07-18 · Snake API v7.0.0