market_walk
Walk the market as a place. Call it with NOTHING to stand at the gate and see which quarters exist — categories, storefronts, tags, kinds, sizes in stock and the price band across every listed shop, each with how many shops and items are in it. Then pass any of category/store/tag/kind/size/format/price_min_cents/price_max_cents to walk into a row: the surviving shops come back with live sample rows (each carrying its listing id, a preview image link you can show, and — for a digital file — the format PROVED by reading its bytes plus its size, which is often the ONLY thing telling two identically-titled rows apart), and the quarters NARROW to what is still open from where you now stand — so a thousand shops become the few worth asking. Pass from: <shop> instead to see who trades on that shop's row (shops sharing its categories and tags). Sizes understand words and codes alike ('large' finds 'Black / L'). Everything is read off each shop's own shelf at call time, ordered alphabetically always — nothing is ranked by us and no placement is for sale. unreachable names any shop whose shelf refused, so a shop that is missing is never confused with a shop that did not match. Then use concierge_ask on a shop for its full shelf and cited specs.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | narrow by a flat tag, e.g. 'heavyweight' | |
| from | No | instead of predicates: a shop slug, to see who else trades on its row | |
| kind | No | narrow by kind: physical, digital or service | |
| size | No | narrow by size — a word or a code, 'large' and 'L' are the same question | |
| store | No | walk one storefront within the shops, e.g. 'Merch' | |
| format | No | narrow by file format, e.g. 'obj', '3mf', 'stl' — matched only against the format PROVED by reading the file, never a filename or a tag | |
| category | No | walk one category, e.g. 'T-Shirts' — from the gate's quarters | |
| in_stock | No | default true — pass false to include sold-out rows in the walk | |
| price_max_cents | No | dearest acceptable price, in minor units | |
| price_min_cents | No | cheapest acceptable price, in minor units |