Skip to content

Industry · Food and beverage

A food shop runs on the neutral pack.

No dedicated pack is built for this sector yet, so a shop selling groceries, coffee, snacks or bottled drinks lands on the neutral one. That is the smaller claim rather than the broken one: twelve tools exist in the code, nine of them are handed to the model from the first conversation, and the base rule set every store gets is merged in whatever the shop sells. This page counts what runs on day one, which two of the nine handover patterns a food question already reaches, and the one family of sentences this trade exposed that nothing in the base catches.

Nine of twelve tools, from day one An allergy question already reaches a professional Zero ingredient words, zero intervals, zero needs
  • Products
  • Variants & options
  • Prices
  • Live stock
  • Collections
  • Order status
  • Returns
  • Store policies
  • Answers you write
  • A code you choose
Refik’s console, Overview screen: conversations used against the plan, a bar per day, what happened in them, unanswered questions, and orders Refik took part in.
Product screenshot, sample data. The numbers are made up, not a customer’s result. Once installed, every figure here is counted from your own store.

A pack changes what Refik asks; it leaves the ten sources an answer is built from exactly where they were. A grocery reads the same ten as a placed store — what Refik reads.

What runs

Nine tools, handed over on the first day.

Ten of the twelve tools are present under every pack; a pack only decides whether shade matching and a remembered profile are offered. The ordered-routine tool is the third one that stays shut here, and it is shut by your catalogue rather than by the pack: it is offered once at least one chain carries a product role, and roles are the thing a pack supplies. Order status, guest order lookup, the return request, the shipping and returns lookup, the stock-back e-mail and the handover to your team all work from the first conversation. The shipping answer comes out of your own policy pages rather than out of memory, and it comes back as two legs plus a total — the reason that rule was written down is that quoting the transit leg alone shortens the wait a shopper is told by about a week, which is a promise the store never made.

Your own words do the matching

The search tool runs before any recommendation and reads what the shopper actually typed: it resolves barcodes — the number printed on a packaged item — and that leg is code, the same under every pack. The Spanish and Turkish words, and the misspellings, are hand-written entries in the pack’s synonym dictionary, which here is an empty object. Nothing is corrected by algorithm: matching is substring-based, so a word merely cut short still lands and a transposed one does not. An item that is out of stock never appears in what it returns, and when one is wanted anyway the stock-back e-mail is offered right after the closest alternative, because some shoppers want the substitute and some want the exact jar. A line that carries a brand, a size and a flavour is answered out of whatever your titles, tags and collections already say, in the language your catalogue is written in. The tool is also told never to state a product name or a price from memory.

Disappointment is read as a usage question first

When a shopper is unhappy, the model is told to reach first for the tool that hands back that product’s own instructions along with what usually goes wrong — ahead of any talk of a return, a credit or a discount. The “what usually goes wrong” examples belong to a trade and arrive with a pack. Under the neutral pack that half of the sentence ships empty on purpose, and the reason is written into the code: before the split, a store in any trade was being handed one trade’s worth of examples on every single turn. Writing this trade’s typical mistake on a pack’s behalf, having measured none, is exactly the leak the split was built to stop.

Counted, not written

An allergy question already reaches a professional.

The base set carries nine patterns that mark a question as belonging to a professional rather than to a shop. Two of the nine are the ones a question about food reaches. One is the allergy pattern, which reads an allergy named with its trigger, the English phrase for having one, the Turkish alerjim var and the Spanish soy alergico. The other is the chronic-condition pattern, and diabetes is the first word in it — in English and in Turkish — alongside asthma, blood pressure, heart disease, epilepsy and thyroid. When either matches, Refik stops recommending, offers the ingredient list and points the shopper at a professional. That is the right behaviour here rather than a workaround: an answer about what someone with coeliac disease or diabetes may eat is a clinician’s, and the shop that tries it is guessing.

2

of the nine base handover patterns that a food question reaches: an allergy, and a chronic condition.

14

absence and nutrition words measured against every base pattern. None of the fourteen appears.

8

age-restricted words the base does name, so a drinks shelf is covered where a grocery shelf is not.

What the base does catch here

Two of the sixteen claim rules are written for age-restricted goods and they name alcohol, nicotine, tobacco, vape and three more by word, so the sentence that lifts a legal limit is caught: no age check needed, anyone can buy it, alcohol is safe, and in Turkish bagimlilik yapmaz. The first rule’s disease list names diabetes, so this tea cures diabetes is reported as a treatment claim. The third catches kills bacteria, and the sixth catches clinically proven.

What it does not

Fourteen words were measured against every base pattern with a boundary on both sides: gluten, sugar, organic, calorie, vegan, GMO, additive, preservative, halal, kosher, allergen, nutrition, vitamin and protein. None of the fourteen appears. So gluten free, no added sugar and contains no preservatives are sentences no rule in the base reports today, and the first of those three has a medical consequence rather than a marketing one.

One word looked like an exception

Searching that list turns up exactly one hit that reads like food: soy. It is there as the Spanish verb inside soy alergico — I am allergic — and not as the bean. The measurement was calibrated in both directions, a known-present word found and an invented one not, and the boundary markers matter: without them a word like cat turns up inside medication. Counting that one hit would have made this gap look a word smaller than it is.

The absence-claim family is already recognised in this codebase, in the wrong file: the beauty pack carries three rules for it and gluten is a word in two of their patterns. Two of the three are bound to one market and name a cosmetics guide in their own description; the third carries no market at all. Moving them into the base was measured in October and turned down, because a cosmetics authority is the wrong one for a grocery and the direction can invert — a declaration one guide forbids can be one a food rule requires. A rule written for this trade is a pack’s job, and a pack is what this sector has yet to get — what the base set carries.

What this page is a picture of

Refik card for Industry · Food and beverage: the sentence this page turns on, and the store data it reads.
Drawn from this page’s own data — the sentence and the sources shown are the ones shipped, not an illustration of them. Regenerated by scripts/sektor-maket-yaz.py.

From the schema

Four things a pack for this trade would add.

A pack is a file of named fields, and the schema says which of them a pack has to carry. These four are the ones this trade would fill, in the order of what they unlock.

  • An ingredient dictionary, and the calibration it needs

    One field is a plain list of ingredient words. When your catalogue is read, each product’s ingredient text is taken, lower-cased together with the title, and every dictionary word found inside it is kept on the product. The beauty pack carries thirty-nine terms; the neutral file carries none, so that field comes back empty for every product you sell. The lookup is a substring test, and it was measured: an entry for nut is found inside coconut and one for wheat inside buckwheat. That is precisely why the list belongs to a pack written against a real catalogue rather than to a guess made here.

  • Rules for the absence and nutrition family

    A pack’s own claim rules sit in front of the base ones, and each rule can be bound to a single market. That field is why this is a product and legal decision rather than a copy-and-paste: the three rules already written for this family cite a cosmetics guide, and the same wording can be forbidden in one trade and required in another. Until a rule exists that was written for a grocery, these sentences are reported by nothing — which is why they are counted on this page instead of being implied away.

  • Replenishment intervals, and the switch in front of them

    One field maps a role to a typical number of days per hundred millilitres. The window around it is fixed in the code rather than in the pack: nothing is suggested before twenty-one days have passed, nothing after two hundred and forty, and a reminder lands about a week before the estimated finish. Size is read out of the product title, in fluid ounces or millilitres, and a middling size is assumed when the title carries neither. Under the neutral pack the candidate list comes back empty for two independent reasons: the switch is shut, and the role-to-days table is where a pack would put the days. There is no forecast behind any of it, and the model is told the item may have run out and not to press the point.

  • Product roles, and an ordered routine

    A role dictionary maps your products onto the parts of a routine, and it is the precondition for the one tool that writes to the routine table a shopper sees. With no roles the chain is empty, the tool is kept out of the list the model is handed, and the pairing tool switches to a description that promises pairing alone rather than pointing at a tool the model cannot see. Roles carry a second job in this trade: the replenishment table above is keyed by role as well, so one dictionary is the precondition for both.

Unchanged

What stays yours, under every pack.

These three are the same on every vertical page on this site, and that is the point: they describe the part of Refik that your store decides and a pack only reads.

You choose it, and the server measures again

Refik counts how many of your products carry any of a pack’s words and shows you the count, the ranked score, up to eight of the words it matched and up to three example products for each. A pack is only suggested when the share clears a threshold, at least three different words matched and at least five products matched. You confirm it, and the server runs the measurement again on its own before it writes anything. How a pack gets chosen.

Your catalogue supplies the products

A pack supplies names; your catalogue supplies the products. Every option Refik offers has passed two gates in your own store — sellable, and in stock — so the products a shopper sees are the ones you carry today. A pack tag that matches zero products in your catalogue is counted and shown in the console, with the number it matched.

The base set stays merged in

Sixteen claim rules and nine handover patterns are merged in when any pack loads, in English, Turkish and Spanish, and they sit behind the pack’s own rules so the pack’s rule is still the first one reported. A base rule that would report the same words twice stays quiet. An empty set makes the app refuse the pack outright. The base set.

A pack arrives for this trade the day a catalogue in it is measured, and until then the neutral file is the honest one — the neutral pack, counted. The industries page lists the packs that exist and the three gates a store has to clear for one of them; this sector sits among the stores those gates leave unplaced — how a pack gets chosen.