Skip to content

Glossary

The vocabulary in Dino Discover is small but precise. These are the terms that recur across the rest of the docs, with one-paragraph definitions and a link to the page that explains each term in depth.

One choice on a question. An answer carries an upvote mapping (which products it weights towards) and a routing pill (what question comes next when it’s chosen). See Question Builder.

The small (≈1.5 KB) server-rendered HTML + inline script that the shortcode emits. Variant-agnostic and CDN-cacheable for a year. The full storefront bundle only loads after the shopper interacts with the bootstrap. See Embedding the Quiz.

The admin page that shows which products your current published flow can reach, and which ones it can’t. Backed by the Coverage Engine. See Catalogue Coverage.

One of the four engine interfaces. Default implementation walks every path through the published snapshot and computes the maximum upvote score each product could achieve. Runs nightly, on publish (debounced), and on demand. See Engine Interfaces.

The mutable, admin-only state of a quiz. Lives in the dd_quizzes and related tables. The storefront never reads drafts. Only the Builder’s preview tab can read a draft, and only via an admin-session-gated nonce. See Drafts, Publishing & Snapshots.

A monotonically-increasing integer on every quiz draft. Every PATCH and publish carries an expected_draft_version; if the server’s value has moved on, the request returns 409 and the Builder reloads. Optimistic locking for two-admin edits.

One of the four PHP interfaces in includes/Engine/QuestionEngineInterface, RecommendationEngineInterface, CoverageEngineInterface, and StatisticsInterface. The Analytics surface (EventAggregator, SankeyBuilder, AttributionLinker) sits alongside these but is split across several concrete classes today. Each interface is filterable site-wide. See Engine Interfaces.

An email address (and consent metadata) captured during a quiz session. Stored hashed at rest with the activation-generated key, and pushed asynchronously to configured integrations (Klaviyo, Mailchimp, webhook). See Lead Capture Panel.

One step in a quiz. Has a prompt, a type (one of seven), and one or more answers. See Question Builder.

One of the four engine interfaces. Decides what question to ask next based on the answer history. Default: RulesQuestionEngine, which honours the routing pills the merchant set. Filterable via dino_discover_question_engine.

A named question flow with a slug, one or more variants, and a publish history. The thing a merchant edits in the Builder.

One of the four engine interfaces. Turns an answer history into a ranked RecommendationSet. Default: UpvoteRecommendationEngine, which sums per-answer upvote weights and applies eligibility filters. Filterable via dino_discover_recommendation_engine. See Recommendation Rules.

The value object the recommendation engine returns: a ranked list of RecommendationItems, plus rationale metadata. The dino_discover_recommendation_results filter sees this last and can re-rank, suppress, or inject items.

The pill on the right edge of every answer that says where the quiz goes next when the answer is chosen: Default, specific question, or End. Variant-scoped.

A single shopper’s run through a quiz. Carries answer history, the variant they were assigned, and the recommendation they received. Started by POST /storefront/sessions; subsequent calls carry the X-DD-Variant-Token header issued at session start.

The [dino_discover quiz="slug"] shortcode that embeds a quiz on the storefront. Lives in includes/Storefront/Shortcode.php. Attributes: quiz, layout, launcher. See Embedding the Quiz.

An immutable, sha256-stamped row in dd_quiz_snapshots that records a single published version of a quiz. The storefront only ever reads snapshots. Restorable to draft via the History tab. See Drafts, Publishing & Snapshots.

One of the four engine interfaces. Returns point estimates and confidence intervals for A/B variants. Default: PointEstimateStatistics (point estimate today, CI null — wired for a v2 swap). Filterable via dino_discover_statistics_engine.

A weight an answer carries against a specific product or product variant. The default recommendation engine sums upvotes across every answer a shopper picks. See Recommendation Rules.

A version of a quiz used for A/B testing. Each variant has its own question order, routing graph, and upvote weights, but shares the same underlying question definitions with sibling variants. Traffic is split by weighted hash of the session.