Reference
Glossary
Every term in the demo, in plain English. Linked from the demo map.
Core concepts
- Quality gate
- A pure, deterministic validator (same input → same verdict). MFGLookup has eight. Each runs in two places over identical logic: the batch curation pipeline AND the agent's query-time tools. That twin-use is the guarantee that a number which fails a gate is never surfaced./controls
- Refusal
- When an honest answer would require data that fails a gate, the agent returns a typed refusal naming the gate, the threshold, and the observed value — instead of fabricating a number. The most important thing the product does./ask
- Curation tier
- T0 Raw → T1 Validated → T2 Curated → T3 Published. A column is promoted tier-by-tier only by passing the relevant gates. The agent may only serve answers from T2/T3./zones
- Provenance
- The signed record of where a value came from and which gates it passed. Every agent answer and gate decision is ed25519-signed and hash-chained, so you can trust a number after the fact./audit/lineage
- Data Trust Score
- 0–100 posture metric. Starts at 100; each quality dimension loses weight proportional to how many of its gates fail across the catalog (a fail costs a full unit, a warn costs half)./sprs
Fetch & stitch (the Lookup pattern)
- Landscape
- A registered family of related tables the agent can answer over — its schema, grain, foreign keys, and semantics, but not a copy of the data. Two are wired in: a synthetic plant, and AdventureWorks (16 real relational tables). Pick the active one from the header./landscape
- Lookup / registry
- The index of every table's schema + semantics across all landscapes. It holds what a column means and how tables connect — so the agent can plan a join without the data being centralized. Lookup replicates schema, not rows./landscape
- Fetcher agent
- A read-only worker that pulls just the slice of one table the plan asks for (filtered, projected). The data stays at the source until a fetcher needs it; nothing is pre-replicated./explore
- Stitch
- Joining the fetched slices into one answer — the multi-hop join across the foreign-key graph that a person would otherwise hand-write in SQL. Supports many-to-one joins, time-bucketing, multi-metric rollups, and temporal semi-joins./explore
- Stitch plan
- The validated recipe for an answer: base table (the metric's grain), dimensions to bring in, the metric, group-by, filters, and any temporal semi-join. Produced deterministically from the question, or by the local LLM — and always checked against the registry before it runs./explore
- Join path / FK graph
- Tables are nodes, foreign keys are edges. To bring a dimension into an answer the registry finds the shortest path between tables by breadth-first search over that graph — so the agent discovers the join rather than being told it./landscape
- Grain
- What one row of a table represents (one work order, one PO line, one product-at-location). A metric's base table must match the metric's grain, or the aggregate would double-count./landscape
- Value vocabulary
- The map from stored codes to human labels (R → Road, 0 → Online, 1 → Northwest). Applied on output so groupings read in plain English instead of raw keys./explore
- Temporal semi-join
- Keep only base rows that have a matching event within a time window (e.g. lots on machines with a maintenance event in the prior 7 days). An EXISTS-style filter across time, not a value join./explore
- Correlate
- Instead of one aggregate, align two metrics on a shared key (line × week) and report their Pearson r — does scrap move with downtime? A different answer shape from a grouped stitch./reports
- Deep plan (LLM)
- An opt-in toggle in Explore. Off (default), planning is deterministic and instant. On, the local LLM emits the stitch plan for open-ended phrasing — still validated against the registry before it runs./explore
- Low-confidence answer
- When no known metric matches the question, the agent still attempts an interpretation but flags it — so a guess never reads as a confident result. Shown as a banner in Explore./explore
- AdventureWorks
- Microsoft's sample relational database, loaded as the second landscape: 16 tables across Production, Purchasing, and Sales. Illustrative (not real plant) data, sampled for demo speed — it exists to show genuinely multi-table joins./landscape
The eight gates
- Completeness
- Field non-null coverage. A column more than 50% missing is quarantined (T0); above 20% is flagged (T1)./controls
- Schema conformance
- Constant or near-constant columns carry no signal. A column with one distinct value is dropped; ≤3 distinct is flagged. Catches C-MAPSS's flat-lined sensors automatically./lineage
- Range / validity
- Statistical outlier fraction beyond ±5σ (or physical rules where defined, e.g. AI4I process-temp > air-temp)./lineage
- Coverage-for-aggregation
- The query-time gate behind the hero refusal. An aggregate is only reported with ≥30 supporting observations and ≤20% missingness on the filtered set./ask
- Freshness
- Latest source record vs the SLA window (demo: 5 years). SECOM's 2008 timestamps fail it, so SECOM is curated but never auto-published./zones
- Uniqueness
- Conflicting duplicate natural keys (lot id / machine UID / engine+cycle) are quarantined./zones
- Reconciliation
- When two sources report the same metric, they must agree within tolerance. AI4I carries a within-source version: the machine-failure flag vs the OR of the five mode flags./zones
- Confidence
- A derived/imputed value below the confidence threshold is held for steward review rather than auto-published./checkpoints
Quality dimensions (ISO 8000 / DAMA)
- Completeness
- Are values present? Weight 25 in the Trust Score.
- Validity
- Schema & range conformance. Weight 25.
- Consistency
- Do sources agree? (reconciliation) Weight 15.
- Timeliness
- Is the data fresh enough? (freshness) Weight 10.
- Uniqueness
- No conflicting duplicates? Weight 10.
- Accuracy
- Is an aggregate well-supported? (coverage + confidence) Weight 15.
The datasets
- SECOMsemiconductor manufacturing
- UCI dataset, the messy hero: 1,567 wafer lots × 590 sensors, 41,951 missing values, 116 constant columns. Drives the bad-data refusal. From 2008 — so the freshness gate keeps it at curated, not published./zones
- AI4I 2020machine telemetry
- UCI, CC BY 4.0. 10,000 machines, product quality L/M/H, tidy temp/torque/speed/tool-wear, five failure modes (TWF/HDF/PWF/OSF/RNF). The clean contrast — most columns publish./zones
- NASA C-MAPSSturbofan run-to-failure
- NASA Prognostics, public domain. Run-to-failure trajectories: engine × cycle, 3 settings + 21 sensors, remaining-useful-life. Powers the asset-reliability view; several sensors are flat-lined and caught by the schema gate./ot-risk
Platform primitives
- OPA / RegoOpen Policy Agent
- The policy engine. Every agent tool call is evaluated against Rego policy before it runs — the same boundary the gates enforce, applied to who may invoke what./policies
- Capability token
- A scoped, orchestrator-signed token that says which datasets/tiers an agent may read. The lighter access-control layer./subagents
- ed25519 + hash chain
- Every provenance entry is signed with ed25519 and hash-chained to the previous, so tampering breaks the chain at a visible entry./audit
- Local LLM (Ollama)
- The model runs on the customer's hardware and only phrases answers — the deterministic gates decide them. If it's offline, a deterministic planner/synthesizer keeps the agent working./ask
- Steward review queue
- Low-confidence or borderline records held for a human data steward to approve before they publish./checkpoints
Assets & documents
- Asset
- A named operational entity — Machine 47, Line 3, Supplier A — that groups structured column references and uploaded documents under one trust score. The asset is the organizing unit for governance: structured data quality and document freshness both roll into it./assets
- Asset trust score
- 0–100 composite: 60% from the column reputation gate verdicts of linked structured columns, 40% from the staleness gate scores of linked documents. When no documents are linked, 100% structured. Chronically bad columns cap the score at 30 regardless./assets
- Doc staleness gate
- Pass if the document was ingested/modified within the past year. Warn if 1–2 years old. Fail if older than 2 years. Directly penalizes the asset trust score for any linked asset./docs
- Authority gate
- A document warning if it has no linked assets — it exists in the index but isn't tied to any governed entity. Not a hard failure, but surfaces on the /docs page and trust ledger./docs
- BM25
- Best Match 25 — a keyword-based relevance ranking algorithm used to retrieve the top-k document chunks matching a question. Implemented in ~150 lines with no external dependency. Documents are chunked at ~300 words, tokenized, and indexed at ingest time; BM25 searches run in-process at query time./explore
- Coverage gap
- An asset with no linked documents. The doc staleness score defaults to 100% structured (no doc penalty), but the gap is surfaced in /trust-ledger and the Intelligence Hub as a signal that unstructured context is missing./intelligence
- Domain vertical
- Industry-specific configuration used by the onboarding wizard: discrete-mfg, process-mfg, food-bev, med-device, energy. Each preset identifies which column patterns map to which asset kinds and which document types are expected./onboard
- Onboarding wizard
- The five-step cold-start flow: pick industry → upload CSV (headers only, no data sent anywhere) → confirm detected assets → upload documents → see trust scores. Designed for an SMB with no prior data governance tooling./onboard