Every Curator automation, with a layperson explanation of the math or principle behind it. Living document — regenerated from the canonical MD whenever it changes.
man(1)-shaped per-automation pages live now.Every card below has a [man →] anchor; each opens a Unix-style reference document for that automation. Deep-linkable. URL pattern: /docs/automations/<name>.html
Left-border color = cost tier. White = atomic (free). Pink = Sakura local (free). Green = cloud assist + web search + vision. Light purple = cloud reasoning. Deep purple = deep reasoning.
§6. White — atomic tools143 entries
cart_status
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.1 The 28-tool API surface (the runtime catalog Sakura sees)man →
Status + recent events for a cart.
Read-only peek at one cart's current state and recent events. The 'what did this thing just do' tool.
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/send_customer_message.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cortex_query
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.1 The 28-tool API surface (the runtime catalog Sakura sees)man →
Read Cortex in one of four lenses.
Read Cortex through one of four lenses (facts / state / drift / history). Sakura's primary read API — the way she knows what you have, what's changed, and what's coming.
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/show_notification.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cortex.aggregate
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.1 The 28-tool API surface (the runtime catalog Sakura sees)man →
NEW. Aggregate over Cortex (sum/mean/median/count/percentile/topk/bottomk/group-by). The math API.
One verb for sum / mean / median / count / percentile / top-k / group-by over Cortex. The math API every grounded answer flows through. Never invents numbers — only reduces real ones.
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Operator opens the All listings card. Sakura calls etsy/listings, renders newest-first, and shows the table. The simplest read cart — useful as the architectural reference for every white cart.
Graph
list-active
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'List / browse (12)' group. Operator-commanded data surface in the Analysis tab.
Pure read against Cortex with a filter. No LLM, no API spend. Renders as a table or grid in the Analysis tab. The white-tier baseline.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
;;~ title "Active listings";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id list-active;;~ touches ();;~ summary "Every listing live + buyable right now. Reads through Etsy via act → named result handler — no direct verb calls.";; A WHITE cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real;; request, threads the response into ctx's 'last-result, then jumps;; to the named state fn. This is the same shape every read cart uses;;; the only difference between this and a write cart is whether the;; cart's 'touches lists a gated verb.
(cart 'list-active
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(act 'etsy/listings (list 'active) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(table rows '(listing-id title price quantity views favorites))
(done)))
;;~ title "Draft listings";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id list-draft;;~ touches ();;~ summary "Started but not yet published.";; Started but not yet published.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'list-draft
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/listings (list 'draft) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(listing-id title state price quantity))
(done))))))
;;~ title "New this week";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id list-new-week;;~ touches ();;~ summary "Listed in the last 7 days.";; Listed in the last 7 days.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'list-new-week
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/listings (list 'new-7d) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(listing-id title state price quantity))
(done))))))
Example forthcoming — examples.json entry editable in place.
Graph
revenue-today
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Operator asks "how much today?" Sakura sums today's receipts after Etsy fees. One number, your number, no internet involved.
Graph
revenue-week
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-month
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-year
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-30-by-day
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-12-by-week
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-12-by-month
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-by-section
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-by-tag
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-by-category
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
top-sellers-30
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
top-sellers-90
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
top-sellers-365
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
slow-sellers-90
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
revenue-after-fees
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Sales / revenue (16)' group. Operator-commanded data surface in the Analysis tab.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-today
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-week
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-unshipped
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-shipped
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-by-buyer
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-by-country
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-needs-review
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
orders-for-listing
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
;;~ title "Order history for a listing";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id orders-for-listing;;~ touches ();;~ summary "When did this thing sell.";; When did this thing sell.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'orders-for-listing
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/receipts (list 'today) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(receipt-id buyer total state shipped-at))
(done))))))
Example forthcoming — examples.json entry editable in place.
Graph
avg-order-value
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
shipment-deadlines
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
refunds-30
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Receipts / orders (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read against the receipts ledger. No LLM. Operator clicks a filter, the cart returns rows. The building blocks every higher tier composes on.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-detail
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-images
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-tags
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-variations
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-shipping
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-history-30
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-reviews
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-views-vs-favs
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
listing-favs-trend
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
shop-policies
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
shop-sections
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
shop-stats
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Listing inspection (12)' group. Operator-commanded data surface in the Analysis tab.
Pure Cortex read for one listing or shop attribute. No LLM, no spend. Renders the requested slice in the Analysis tab. Operator clicks; the data shows up.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
price-vs-section-median
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Performance ratios (16)' group. Operator-commanded data surface in the Analysis tab.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
price-vs-category-median
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Performance ratios (16)' group. Operator-commanded data surface in the Analysis tab.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
health-score
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Performance ratios (16)' group. Operator-commanded data surface in the Analysis tab.
One number per listing (0-100) composed from every audit + ratio + trend signal. The signals are simple math; the playbook around the number is where deep reasoning earns its money.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-no-photos
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-few-tags
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-no-desc
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-low-qty
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-no-variations
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-near-expiry
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-expired
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-mismatched-ready
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-mismatched-ship
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-dup-titles
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
audit-dup-photos
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
;;~ title "Duplicate photos";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id audit-dup-photos;;~ touches ();;~ summary "Same image used in many listings.";; Same image used in many listings.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'audit-dup-photos
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/images (list 'dup-photos) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(listing-id title flag))
(done))))))
Example forthcoming — examples.json entry editable in place.
Graph
audit-orphan-photos
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Health audit (12)' group. Operator-commanded data surface in the Analysis tab.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
;;~ title "Inventory snapshot";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id inv-snapshot;;~ touches ();;~ summary "Current qty + value across all listings.";; Current qty + value across all listings.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'inv-snapshot
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/listings (list 'snapshot) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(listing-id title qty value))
(done))))))
;;~ title "Reorder suggestions";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id inv-reorder;;~ touches ();;~ summary "What to restock based on sell-through.";; What to restock based on sell-through.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'inv-reorder
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/listings (list 'reorder) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(listing-id title qty value))
(done))))))
;;~ title "Tag frequency";;~ author "lacuna";;~ version 1;;~ mode analysis;;~ flavor white;;~ id tag-frequency;;~ touches ();;~ summary "How often each tag is used.";; How often each tag is used.;;;; Read-only cart, architect-shape. The verb call lives inside (act ...);; with a SYMBOL on-result. The driver intercepts, makes the real Etsy;; request, threads the response into ctx via 'last-result, then jumps;; to the named result handler.
(cart 'tag-frequency
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/listings (list 'frequency) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(tag count))
(done))))))
;;~ title "Upload a draft listing";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor gray;;~ id btn-upload;;~ touches (etsy-listings etsy-images);;~ summary "Generated when the operator presses the Upload button. Creates a draft from a payload, attaches photos, lands in Etsy. Architect-shape: every on-result is a NAMED state fn, no inline lambdas. OAuth liveness is a framework precondition; not a cart state. Escalate carries a closed KIND symbol only — surface decides recovery."
(cart 'btn-upload
'((author . "lacuna")
(version . 1)
(touches . (etsy-listings etsy-images))
(read-only . #f)))
;; ── start ─────────────────────────────────────────────────────────;; Guard the payload, jump into create-draft.
(define (start ctx)
(let ((payload (ctx-get 'payload ctx)))
(if (null? payload)
(escalate 'missing-payload null)
(act 'etsy/create-draft (list payload) 'check-draft-result))))
;; ── check-draft-result ───────────────────────────────────────────;; Named result handler — branches on what came back from the draft;; creation. No inline lambda; nothing in this branch decides the;; on-result of any further act. Serialisable.
(define (check-draft-result ctx)
(let ((r (ctx-result ctx)))
(cond
((eq? r 'rate-limited)
(after 30 'start ctx))
((eq? r 'auth-stale)
(escalate 'assistant-oauth-relogin null))
(else
(next 'attach-images (ctx-set 'draft r ctx))))))
;; ── attach-images ───────────────────────────────────────────────;; Pop the head image off the list, fire upload-image, branch on the;; response in a named state fn. The cart recurses through itself by;; jumping back here from check-image-result.
(define (attach-images ctx)
(let ((images (ctx-get 'images ctx)))
(if (or (null? images) (zero? (length images)))
(next 'announce ctx)
(let ((draft (ctx-get 'draft ctx)))
(act 'etsy/upload-image
(list (draft-id draft) (car images))
'check-image-result)))))
;; ── check-image-result ──────────────────────────────────────────;; Result handler for the image upload. Success → drop head + recurse;;; failure → saga compensation (rollback-draft). The compensation is;; its own state fn with its own retry/backoff (rollback-retry).
(define (check-image-result ctx)
(let ((r (ctx-result ctx))
(images (ctx-get 'images ctx)))
(cond
((eq? r 'ok)
(next 'attach-images (ctx-set 'images (cdr images) ctx)))
((eq? r 'rate-limited)
(after 30 'attach-images ctx))
(else
(next 'rollback-draft (ctx-set 'failure r ctx))))))
;; ── rollback-draft (saga compensation) ──────────────────────────;; Roll back the half-uploaded draft so the operator's shop isn't;; left in a half-published state.
(define (rollback-draft ctx)
(let ((draft (ctx-get 'draft ctx)))
(act 'etsy/delete-listing (list (draft-id draft)) 'check-rollback)))
;; ── check-rollback ──────────────────────────────────────────────;; The compensation can itself fail — that's a real path. Retry once;; with backoff, then escalate with the orphan draft id so a human;; can clean it up.
(define (check-rollback ctx)
(let ((r (ctx-result ctx)))
(cond
((eq? r 'ok)
(escalate 'image-upload-failed (ctx-get 'failure ctx)))
((eq? r 'rate-limited)
(after 30 'rollback-draft ctx))
(else
(escalate 'rollback-failed (ctx-get 'draft ctx))))))
;; ── announce ────────────────────────────────────────────────────;; Clean exit. The driver emits cart-end {outcome: done}; the surface;; reads that off the bus and pops a calm "uploaded" pill.
(define (announce ctx) (done))
Operator presses the green Publish button on a draft. Sakura confirms (the consent gate), Lacuna ships the listing live to Etsy, and on rate-limit she waits 30s and retries. If your token went stale, she escalates to relogin — never silently swallows the failure.
Graph
btn-update
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
The update button. Edits one or more fields on a live listing. Eight-star consent gate.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Operator edits a listing field (title, price, tags) and confirms. Sakura batches the edit, ships it via the worker spine, and confirms back. The cart records the diff to Cortex so you can replay it later.
Graph
btn-delete
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
The delete button. Removes a listing or draft. Eight-star consent gate; Sakura usually proposes archive first.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Operator deletes a listing. Sakura requires explicit confirmation (consent gate), then ships the destructive call. Cortex keeps the snapshot — deletes are reversible up the chain.
Graph
btn-reprice
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
The reprice button. Updates the listing price. Eight-star consent gate; Sakura reads back the new number before fire.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
;;~ title "Renew a listing";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor green;;~ id btn-renew;;~ touches (etsy-listings);;~ summary "Renew a listing for another 4 months.";; Renew a listing for another 4 months.;;;; Destructive write cart. Action-wrapper shape with the consent gate:;; precondition_fetch (ctx has id + payload + operator-confirmed);; -> guard (consent required) -> perform -> result -> on_error.;; operator_confirmed rides in args so the driver's destructive-verb;; gate sees it. Rate-limit retries with backoff; auth-stale escalates.;; State is `perform` (not `act`) so it never shadows the descriptor;; constructor of the same name in cartPrelude.
(cart 'btn-renew
'((author . "lacuna")
(version . 1)
(touches . (etsy-listings))
(read-only . #f)))
(define (start ctx)
(let ((id (ctx-get 'listing-id ctx))
(consent (ctx-get 'operator-confirmed ctx)))
(cond
((null? id) (escalate 'missing-listing-id null))
((not consent) (escalate 'consent-required null))
(else (next 'perform ctx)))))
(define (perform ctx)
(let ((id (ctx-get 'listing-id ctx)))
(act 'etsy/relist
(list id (list 'operator_confirmed #t))
'check-result)))
(define (check-result ctx)
(let ((r (ctx-result ctx)))
(cond
((eq? r 'ok) (done))
((eq? r 'rate-limited) (after 30 'perform ctx))
((eq? r 'auth-stale) (escalate 'auth-relogin null))
(else (escalate 'write-failed r)))))
Operator renews a listing. Sakura checks expiry, confirms the cost, and ships the renewal. On Etsy fee changes the worker logs the new fee to Cortex so the next ROAS report is honest.
Graph
btn-upload-image
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-set-qty
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-set-tags
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-set-title
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-set-desc
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-set-section
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-set-shipping
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
btn-ship-receipt
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
A write action behind a consent gate. Operator-commanded only. Eight-star canon — Sakura proposes via a chip; this is the verb that fires after the operator clicks yes.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Operator presses Sync. The worker pulls latest listings + receipts from Etsy, writes to Cortex, and surfaces any conflicts to the Analysis tab. Local drafts stay local; remote-only items appear with a clear marker.
Graph
btn-disconnect
white§6. White — atomic tools (142 baseline, 149 post-matrix) · §6.2 White read-carts — the 114 surfaces (all carry_forward)man →
White read-cart in the 'Buttons (write ops, mint-flavor) (15)' group. Operator-commanded data surface in the Analysis tab.
Disconnect a platform account. Settings infra, not really an automation — flagged for relocation to the Settings surface.
Trigger
operator-commanded
Tools
cortex_query, list_listings / list_orders
Source
carry-forward
Section
§6. White — atomic tools (142 baseline, 149 post-matrix)
Operator chooses to disconnect a shop. Sakura preserves local drafts in Cortex (they never live in the store), revokes tokens, and clears connected state without touching anything the operator hasn't seen.
Graph
§7. Pink — Sakura local65 entries
l0-write-title
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Writes a 50-char Etsy title in the operator's voice. Addresses pain #1, #12.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
draftlisting, cortexquery
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-title-shorter
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Halves a title without losing keywords.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-title-longer
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Adds useful keywords up to 140 chars.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-write-desc-2
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Two-sentence description: hook + detail.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
draft_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-write-desc-3
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Three-sentence description: hook, detail, care.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
draft_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-greeting-line
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Friendly opener for a description.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-care-instructions
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Care line for the piece.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-shipping-note
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Shipping line for the description.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-suggest-tags
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Proposes 13 tags from title + description.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-title-formal
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Same listing, formal voice.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-title-playful
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Same listing, playful voice.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-title-add-kw
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Insert a keyword naturally.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-desc-friendlier
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Same content, warmer voice.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-desc-shorter
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Trim a description without losing detail.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-desc-detail
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Add the second paragraph.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-bundle-name
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Name a collection of listings.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
cortex_write
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-sale-blurb
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Short blurb for a sale event.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-thanks-msg
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Thank-you to send with a packed order. Addresses pain #33.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
analysis-pattern
Tools
draftcustomermessage
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-restock-line
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
One-line note when something is back in stock.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
analysis-pattern
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-listing-summary
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
One-sentence summary of a listing.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
cortex_query
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-photo-caption
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Caption for a single product photo.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
cortex_query
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
l0-tagline
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.1 L0 — short conversational writes (carry_forward, 22)man →
Tagline for the whole shop.
Local 8B model writes this in your voice. Trained on your own past edits via Atlas pairs; the more you nudge, the closer it lands. Free, on-device, no API call.
Trigger
event
Tools
update_listing
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
customer-note-recall
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.3 Listing-aware local analysis (carry_forward, 5)man →
Recall a pinned fact about a buyer. Addresses pain #25. Matrix mod 2026-06-01: Engram-projected so recall works on phone for desktop-pinned notes (and vice versa).
Pull buyers who match a behavior pattern. Suggest a tailored touch — a thank-you, a restock note, a recovery message. Cheap care that compounds.
Trigger
event
Tools
cortex_query
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/customer-note-recall.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
imagination-tick
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.4 Always-on character loops (carry_forward, 9)man →
Background dream loop: pick a Cortex noun, paint a thought. Per projectsakuradreamsfromcortex. Matrix mod 2026-06-01: reads Engram-projected noun candidates so dreams reference cross-device-fresh nouns.
Background loop. Picks a recent noun from Cortex, paints a dot-matrix thought bubble. When the operator asks 'what are you thinking?' she explains the link truthfully — she actually was thinking about it.
Trigger
event
Tools
cortexquery, shownotification
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
voice-transcript-cleanup
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.4 Always-on character loops (carry_forward, 9)man →
Tidy a raw voice-to-text transcript before commit. Matrix mod 2026-06-01: extended to clean STT outputs (operator speaking) — the main voice input path now.
cloud reasoning writes in your voice, grounded in Atlas pairs. The word 'voice' here means register, not microphone — STT isn't involved.
Trigger
event
Tools
(LLM only)
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
intent-classifier
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.4 Always-on character loops (carry_forward, 9)man →
Route the user's message: shop / chat / control / relay. Per §10 surprise. Matrix mod 2026-06-01: extended for STT — voice intent classification with confidence threshold + readback for ambiguity.
Reads what the operator just said and assigns it to one of four buckets (shop / chat / control / relay). Routes the message to the right model before any expensive call fires. Cheap first, expensive only if needed.
Trigger
event
Tools
(LLM only)
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
pii-detector
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.4 Always-on character loops (carry_forward, 9)man →
Flag PII before it leaves the device. Matrix mod 2026-06-01: extended to gate Engram cloud-projection writes — PII never leaves device unless operator opts in.
Scan every outbound payload for likely names, addresses, emails, card numbers, IDs. Anything that smells personal gets a flag before the data leaves the device. Defense in depth — the model never sees what shouldn't leave.
Trigger
event
Tools
pii_detect
Source
carry-forward
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
daily-pulse
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.5 New customer-pain pink (4)man →
Morning pulse: yesterday's facts + one dream. Quiet-hours-aware. Addresses pain #21. Matrix mod 2026-06-01: Engram-aware — pulse lands on the device the operator is using; quiet-hours per device, single delivery.
Morning briefing at 06:00 local. Reads yesterday's facts from Cortex, adds one dream from the imagination-tick loop. Quiet-hours-aware so operators on a different schedule aren't pinged.
Trigger
cron (06:00 local)
Tools
cortexquery, shownotification
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/posting-cadence-suggest.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
oversold-guard
pink§7. Pink — Sakura local (65 baseline, 131 post-matrix) · §7.5 New customer-pain pink (4)man →
Inventory-mirror guard before an order risks oversell across channels. Addresses pain #5. Matrix mod 2026-06-01: Engram-light becomes the canonical inventory store; multi-channel guard is atomic across phone/desktop.
Before each order ships, check that stock across every channel still agrees. If two platforms both list the last one of a SKU, surface a warning before fulfillment. Pain #5 fix.
Trigger
event (order paid)
Tools
cortexquery, shownotification
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
;;~ title "Cross-post · Etsy → Google Shopping";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor purple;;~ id cross-post-etsy-to-google;;~ touches (etsy-listings google-merchant);;~ summary "Event-triggered on listing-published-to-etsy. Sakura ADAPTS the listing (Etsy-isms scrubbed, category translated, fields mapped) and pushes to Google Shopping. Tier-gated to Magic+ ($39.99). Local-drafts NEVER sync — only published listings.";; Cross-shop posting cart. Triggered when an Etsy publish completes.;; The state machine mirrors the action-wrapper Abel established:;; start → preconditions → adapt → push → result → done;; (each step is named, no inline lambdas, serialisable);;;; Adaptation = field mapping + format conversion + category translation.;; The actual mapping work happens server-side in listing_mapper.py; the;; cart's job is sequencing the calls + handling failure cleanly.
(cart 'cross-post-etsy-to-google
'((author . "lacuna")
(version . 1)
(touches . (etsy-listings google-merchant))
(read-only . #f)))
;; ── start — precondition_fetch ──────────────────────────────────;; The driver invokes this with ctx carrying the just-published Etsy;; listing id. We need the full listing record + the operator's;; merchant-center status before we can adapt.
(define (start ctx)
(let ((id (ctx-get 'listing-id ctx)))
(if (null? id)
(escalate 'missing-listing-id null)
(act 'etsy/listing (list id) 'check-listing))))
;; ── check-listing — guard the precondition ──────────────────────;; Drafts never sync (local-drafts canon). A draft has no platform_id;; assigned; the publish event shouldn't fire for a draft, but we guard;; anyway because the event bus can replay.
(define (check-listing ctx)
(let ((listing (ctx-result ctx)))
(cond
((null? listing)
(escalate 'listing-not-found null))
((listing-is-draft? listing)
(escalate 'drafts-do-not-sync null))
(else
(next 'check-merchant (ctx-set 'listing listing ctx))))))
;; ── check-merchant — guard the merchant connection ──────────────;; The merchant center must be connected (operator went through the;; OAuth flow at Settings) for the push to succeed. If not, escalate;; so the surface can prompt the operator to connect.
(define (check-merchant ctx)
(act 'merchant_center.status '() 'check-merchant-result))
(define (check-merchant-result ctx)
(let ((status (ctx-result ctx)))
(cond
((not (status-connected? status))
(escalate 'merchant-not-connected null))
((status-pending-verification? status)
;; Pending verification — Google hasn't finished verifying the;; operator's account yet. Queue + retry; the sync replays;; once the account flips to active (plan doc §2).
(after 3600 'check-merchant ctx))
(else
(next 'push ctx)))))
;; ── push — act ──────────────────────────────────────────────────;; The single side-effecting state. Calls merchant_center/sync with;; the full listing; the server-side mapper handles the translation.;; Result handler branches in a named state fn.
(define (push ctx)
(let ((listing (ctx-get 'listing ctx)))
(act 'merchant_center/sync (list listing) 'check-push-result)))
;; ── check-push-result — on_error grammar ────────────────────────;; Four outcomes:;; · 'ok → record the google product id, done;; · 'rate-limited → backoff 30s, retry;; · 'mapping-failed → escalate with the closed kind so the;; surface can show the operator which;; fields are misshapen;; · anything else → escalate with the closed kind
(define (check-push-result ctx)
(let ((r (ctx-result ctx)))
(cond
((push-ok? r) (next 'announce (ctx-set 'google-product-id (push-product-id r) ctx)))
((eq? r 'rate-limited) (after 30 'push ctx))
((eq? r 'mapping-failed) (escalate 'mapping-failed (push-errors r)))
(else (escalate 'push-failed r)))))
;; ── announce — clean exit ──────────────────────────────────────;; Emit a soft notification so the operator knows the cross-post;; landed. The surface picks this up off the bus.
(define (announce ctx)
(sakura/say (string-append
"Cross-posted to Google Shopping · "
(ctx-get 'google-product-id ctx)))
(done))
;;~ title "Cross-post · bulk to Google Shopping";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor purple;;~ id cross-post-bulk-to-google;;~ touches (etsy-listings ebay-listings shopify-listings google-merchant);;~ summary "Operator-commanded. Operator selects N listings; cart adapts and pushes each in turn with rate-limit-aware pacing. Per-listing failures don't abort the batch — they're collected and surfaced at the end. Tier-gated to Magic+; drafts never sync.";; Bulk cross-post. The operator selects a batch (in the listing grid;; or via "all active") and confirms; the cart walks the batch, pushing;; each listing in turn.;;;; Recursion shape: pop head off the input list, push, branch on result;;; on success drop the head and recurse; on per-listing failure record;; the failure and continue. The batch is allowed to partial-succeed —;; the operator gets a final report of which landed and which didn't.
(cart 'cross-post-bulk-to-google
'((author . "lacuna")
(version . 1)
(touches . (etsy-listings ebay-listings shopify-listings google-merchant))
(read-only . #f)))
;; ── start ──────────────────────────────────────────────────────;; ctx carries 'listings — a list of listing records (already fetched;; by the operator surface; the cart doesn't fetch them itself). Empty;; list = nothing to do; escalate calmly.
(define (start ctx)
(let ((listings (ctx-get 'listings ctx)))
(cond
((null? listings) (escalate 'empty-batch null))
(else (next 'check-merchant
(ctx-set 'failures '()
(ctx-set 'successes '() ctx)))))))
;; ── check-merchant ─────────────────────────────────────────────;; Verify the operator has the merchant center connected before we;; start the batch — failing fast here saves N round-trips.
(define (check-merchant ctx)
(act 'merchant_center.status '() 'check-merchant-result))
(define (check-merchant-result ctx)
(let ((status (ctx-result ctx)))
(cond
((not (status-connected? status))
(escalate 'merchant-not-connected null))
((status-pending-verification? status)
(after 3600 'check-merchant ctx))
(else (next 'pop-and-push ctx)))))
;; ── pop-and-push — the loop head ──────────────────────────────;; Peel one listing off the head, push it, branch in a named result;; fn. Drafts in the batch are silently skipped (the operator surface;; usually filters drafts out, but the cart's contract is "drafts;; never sync" so we belt-and-suspender it).
(define (pop-and-push ctx)
(let ((listings (ctx-get 'listings ctx)))
(cond
((null? listings) (next 'finalize ctx))
((listing-is-draft? (car listings))
(next 'pop-and-push
(ctx-set 'listings (cdr listings) ctx)))
(else
(act 'merchant_center/sync (list (car listings))
'check-batch-result)))))
;; ── check-batch-result ────────────────────────────────────────;; Record the outcome, drop the head, recurse. Per-listing failures;; are collected into 'failures so the operator can see what broke;; at the end. We pace at 30s on rate-limit; otherwise hard-step.
(define (check-batch-result ctx)
(let* ((r (ctx-result ctx))
(listings (ctx-get 'listings ctx))
(head (car listings))
(rest (cdr listings)))
(cond
((push-ok? r)
(next 'pop-and-push
(ctx-set 'listings rest
(ctx-set 'successes
(cons (push-product-id r) (ctx-get 'successes ctx))
ctx))))
((eq? r 'rate-limited)
;; Keep the head — don't drop it; we retry after the backoff.
(after 30 'pop-and-push ctx))
(else
(next 'pop-and-push
(ctx-set 'listings rest
(ctx-set 'failures
(cons (list (listing-id head) r) (ctx-get 'failures ctx))
ctx)))))))
;; ── finalize — operator-facing summary ────────────────────────
(define (finalize ctx)
(let ((wins (length (ctx-get 'successes ctx)))
(fails (length (ctx-get 'failures ctx))))
(sakura/say (string-append
"Bulk cross-post complete · "
(number->string wins) " ok"
(if (> fails 0)
(string-append " · " (number->string fails) " flagged")
"")))
(done)))
;;~ title "Merchant violations · hourly triage";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor purple;;~ id merchant-violations-triage;;~ touches (google-merchant);;~ summary "Hourly cron. Pulls list_violations from Google, surfaces new violations as Sakura analysis cards. Each card carries the operator-actionable verbs (fix it / dismiss / hide-forever). Tier-gated to Magic+; quiet-hours-respecting.";; Hourly triage. The cart subscribes to a cron trigger; the surface;; reads the resulting cards off the analysis bus and renders them.;; Cards are grouped by issue type per the GMC plan doc §6 (one card;; per issue type, not per listing — "Google flagged 3 listings —;; antique without provenance" reads better than three separate cards).;;;; Idempotency: each violation has a stable (product_id, issue_code);; key. The cart writes to Cortex with that key; subsequent runs are;; no-ops for unchanged violations. The operator's hide-forever pref;; is stored alongside so a dismissed violation never re-surfaces.
(cart 'merchant-violations-triage
'((author . "lacuna")
(version . 1)
(touches . (google-merchant))
(read-only . #f)))
;; ── start — gate on merchant connection ────────────────────────;; If the operator isn't connected to GMC, this cron is a no-op.;; We don't escalate because there's no operator-actionable thing to;; surface — the cron just exits clean.
(define (start ctx)
(act 'merchant_center.status '() 'check-merchant-result))
(define (check-merchant-result ctx)
(let ((status (ctx-result ctx)))
(cond
((not (status-connected? status)) (done))
((status-pending-verification? status) (done))
(else (next 'fetch ctx)))))
;; ── fetch — pull the violations list from Google ──────────────
(define (fetch ctx)
(act 'merchant_center/violations '() 'check-fetch))
(define (check-fetch ctx)
(let ((r (ctx-result ctx)))
(cond
((null? r) (done))
((eq? r 'rate-limited) (after 60 'fetch ctx))
((violations-error? r) (escalate 'fetch-failed (violations-error-detail r)))
(else (next 'group (ctx-set 'violations r ctx))))))
;; ── group — bucket by issue code ──────────────────────────────;; "antique without provenance" gets one card; "image_link_broken";; gets another. Operators triage by issue type because the fix is;; usually the same across products with the same issue.
(define (group ctx)
(let* ((rows (ctx-get 'violations ctx))
(buckets (group-by 'issue_code rows)))
(next 'surface (ctx-set 'buckets buckets ctx))))
;; ── surface — emit analysis cards ─────────────────────────────;; One card per bucket. Each card carries:;; · the issue code + human description;; · the list of affected product_ids (links into the listing drawer);; · the three Sakura verbs (Act / Dismiss / Hide-forever);; · a pre-filled suggested edit when one is available;;;; The surface reads these off the cart bus and renders them in the;; Analysis tab; the cart itself is done as soon as the events fire.
(define (surface ctx)
(let loop ((buckets (ctx-get 'buckets ctx)))
(if (null? buckets)
(done)
(let ((bucket (car buckets)))
(analysis-card
(bucket-issue-code bucket)
(bucket-description bucket)
(bucket-product-ids bucket)
(bucket-suggested-fix bucket))
(loop (cdr buckets))))))
Score the new buyer message for sentiment; only the negative case escalates to the operator.
Cheap local classifier reads the tone first. Only the genuinely negative messages escalate to cloud reasoning for deeper read. Saves API spend on the everyday-friendly stuff.
Trigger
event:new-buyer-message
Tools
sakura/decide
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Active-listings property fill rate (Etsy taxonomy attrs); surface anything under 80%.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
cron:daily
Tools
etsy/listings
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Confirm tax settings match the shop's declared nexus list.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
cron:weekly
Tools
etsy/shop
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
Returns + shipping + payment policy timestamps; flag anything over a year stale.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
cron:weekly
Tools
etsy/shop
Source
new
Section
§7. Pink — Sakura local (65 baseline, 131 post-matrix)
;;~ title "Featured listing rotation";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor pink;;~ id featured-listing-rotation;;~ trigger cron:weekly;;~ touches ();;~ summary "Weekly: nudge the operator to rotate the four featured listings if they've been the same for over a month.";; Pulls shop featured-listing slots + the date each was assigned.;; Anything in a slot over 30 days surfaces with a nudge to rotate.;; The rotation itself is a separate operator-driven action; this;; cart only flags.
(cart 'featured-listing-rotation
'((author . "lacuna")
(version . 1)
(read-only . #t)))
(define (start ctx)
(let ((connected (ctx-get 'shop-connected ctx)))
(cond
((not connected) (escalate 'shop-not-connected null))
(else (next 'fetch ctx)))))
(define (fetch ctx)
(act 'etsy/listings (list 'featured 'with-assigned-date) 'render))
(define (render ctx)
(let ((rows (ctx-result ctx)))
(cond
((null? rows) (escalate 'no-data null))
((eq? rows 'rate-limited) (after 30 'fetch ctx))
(else (begin
(table rows '(listing-id title assigned-at days-featured))
(done))))))
not-yet-implemented — no cart file at scheme/carts/…/suggest-photo-to-listing-match.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
competitor-tag-overlap
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.2 Web grounding via web search (new, 11)man →
Compare operator's tags to peers' for one listing. Addresses pain #3, #31. Matrix mod 2026-06-01: Engram-cached so repeated lookups share results across operator's devices.
Crawls trending keywords + your own tag-to-sales history. Proposes the thirteen tags that historically correlate with sales in your niche.
Trigger
event / analysis-pattern
Tools
peer_lookup
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/competitor-photo-style.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
niche-trend-watch
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.2 Web grounding via web search (new, 11)man →
What's trending in this operator's niche. Addresses pain #31. Matrix mod 2026-06-01: Engram-projection so output lands on every device.
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Trigger
cron (weekly)
Tools
web_search
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/niche-trend-watch.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
policy-preflight-listing
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.2 Web grounding via web search (new, 11)man →
Check listing against platform policy before publish. Addresses pain #2, #32. Matrix mod 2026-06-01: Engram + cross-device — if drafted on phone, preflight surfaces on desktop next sync.
cloud assist does one cheap cloud-side check. Sub-second, costs a fraction of a cent. The 'eyes and live web' tier.
Trigger
event (pre-publish)
Tools
policy_lookup
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/category-ai-policy-check.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
shipping-country-policy-check
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.2 Web grounding via web search (new, 11)man →
Country-of-destination shipping restrictions. Addresses pain #17. Matrix mod 2026-06-01: Engram-cached + Maps-grounded — preflight uses real buyer-country distribution.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Trigger
event
Tools
policy_lookup
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/shipping-country-policy-check.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
trending-keyword-pull
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.2 Web grounding via web search (new, 11)man →
What keywords are buyers searching this week.
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Trigger
cron (weekly)
Tools
web_search
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/holiday-trends.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
pricing-benchmarks
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.2 Web grounding via web search (new, 11)man →
Mid-market price band for this category. Addresses pain #19. Matrix mod 2026-06-01: Engram + Atlas — peer percentile in same geo region.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
event
Tools
peer_lookup
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/seller-handbook-lookup.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
recommend-price-change
light purple§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.3 Analysis-pattern green (new + carry, 16)man →
Suggest a price move with reasoning + comps. Addresses pain #14, #19, #23. Matrix mod 2026-06-01: + Engram (multi-device pricing context); premium variant moves to light-purple when Monte Carlo enabled.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
analysis-pattern
Tools
competitor-price-comp, cortex.aggregate
Source
carry-forward
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
spot-trend-in-my-shop
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.3 Analysis-pattern green (new + carry, 16)man →
Find an emerging pattern across listings + receipts.
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Trigger
analysis-pattern
Tools
cortex.aggregate, web_search
Source
carry-forward
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/listing-pre-publish-pass.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
price-drift-watch
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.3 Analysis-pattern green (new + carry, 16)man →
Operator's prices drifting vs market. Addresses pain #19.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
cron (monthly)
Tools
competitor-price-comp
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/price-drift-watch.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
review-anomaly-watch
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.3 Analysis-pattern green (new + carry, 16)man →
Sudden drop in rating or rise in returns. Addresses pain #4. Matrix mod 2026-06-01: voice-narrated option; Engram-broadcast to all devices.
Cluster the reviews by what they're about. Surface the themes with real quotes attached — operator sees what buyers actually said, not a summary that lost the words.
Trigger
cron (daily)
Tools
cortex.aggregate
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/review-anomaly-watch.sks
Example
Sakura uses this when she sees a sudden drift in your reviews. She compares the running monthly distribution to its own recent baseline and flags only the days that don't look like your shop's own normal — no hand-tuned threshold.
Graph
repeat-buyer-watch
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.3 Analysis-pattern green (new + carry, 16)man →
Buyers who came back; suggest a thank-you. Addresses pain #33. Matrix mod 2026-06-01: + geo — where do repeat buyers cluster? Feeds the buyer-cluster-geo summary.
Pull buyers who match a behavior pattern. Suggest a tailored touch — a thank-you, a restock note, a recovery message. Cheap care that compounds.
Trigger
cron (weekly)
Tools
cortex.aggregate
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/repeat-buyer-watch.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
audit-stale-announcement
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.3 Analysis-pattern green (new + carry, 16)man →
Shop announcement older than 90 days. Addresses pain #35.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
cron (monthly)
Tools
cortex_query
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/explain-platform-flag.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
review-roundup
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.4 Event-driven green (new, 10)man →
Roundup of recent reviews, grounded in actual review text. Addresses pain #4, #24.
Cluster the reviews by what they're about. Surface the themes with real quotes attached — operator sees what buyers actually said, not a summary that lost the words.
Trigger
event (new review)
Tools
cortex.aggregate
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/seasonal-prep-pulse.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
auto-receipts-watch
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.4 Event-driven green (new, 10)man →
Notice a payment that hasn't been acknowledged.
Compare incoming order against the operator's normal pattern (price tier, geography, buyer history). Flag the genuinely strange ones; trust the boring ones.
Trigger
cron (hourly)
Tools
cortex_query
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/auto-receipts-watch.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
tone-classify-message
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.4 Event-driven green (new, 10)man →
Classify tone of an inbound customer message before draft-reply. Addresses pain #9, #16.
Cheap local classifier reads the tone first. Only the genuinely negative messages escalate to cloud reasoning for deeper read. Saves API spend on the everyday-friendly stuff.
Trigger
event (customer DM)
Tools
cortex_query
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/quiet-hours-respect.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
shipping-template-audit
green§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix) · §8.5 Etsy-data-driven white audit (new, 1)man →
Listings whose category or weight no longer matches their assigned shipping template.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Trigger
cron:weekly
Tools
etsy/listings
Source
new
Section
§8. Green — cloud assist + web search + vision (46 baseline, 152 post-matrix)
Rewrite a listing in the operator's own voice (Atlas-grounded). Addresses pain #1, #7, #20. Matrix mod 2026-06-01: + Engram-hosted so cloud reasoning has full operator history context.
cloud reasoning rewrites a listing while preserving the operator's voice. Atlas-trained on the operator's own past edits — every word choice traces back to something they've already written. The #1 customer pain (generic AI prose) fixed by giving the model your edits as ground truth.
Recovery note to an unhappy buyer, tuned to the case. Addresses pain #16.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
Polished version of pink's draft for sensitive cases.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
Refund-explanation message with policy clauses. Addresses pain #16.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
Estimate how long a thing takes (or how much revenue lands) with honest confidence bands. Borrowed from medical research; we don't pretend to know what we don't know.
cloud reasoning rewrites the description for Google Shopping's search-results audience (vs the maker-storefront audience of Etsy / eBay). Opt-in. Operator approves the draft before sync. Atlas-grounded — preserves the operator's voice. Lives under scheme/carts/google/manifest.js.
cloud reasoning writes or reasons over your real data. The 'sound like you, but cleaner' tier. Atlas-pair-trained on the operator's own voice.
;;~ title "Polish · listing for Google Shopping (Sonnet)";;~ author "lacuna";;~ version 1;;~ mode automation;;~ flavor purple;;~ id polish-listing-for-google;;~ touches (google-merchant);;~ summary "Operator-commanded. Sonnet rewrites the listing's description specifically for Google Shopping's audience — search-results-page reading rather than maker's-storefront. OPT-IN, not default. Preserves the operator's voice (Atlas-grounded). Light-purple tier — Magic+.";; Light-purple polish cart. The other five Google-tier carts are pink;; (Sakura local) for the field mapping + sequencing; THIS one calls;; Sonnet for the rewrite because the audience is fundamentally;; different from Etsy / eBay (search-results-page reader, not a;; storefront browser) and the rewrite quality matters.;;;; Opt-in: never fires on event. The operator picks it from the;; analysis surface or asks Sakura ("polish this for Google").;; The rewrite is shown to the operator for approval before any push.
(cart 'polish-listing-for-google
'((author . "lacuna")
(version . 1)
(touches . (google-merchant))
(read-only . #f)))
;; ── start ──────────────────────────────────────────────────────;; ctx carries 'listing-id. Fetch the listing first; we need the;; current title + description as the seed for the rewrite.
(define (start ctx)
(let ((id (ctx-get 'listing-id ctx)))
(if (null? id)
(escalate 'missing-listing-id null)
(next 'fetch ctx))))
(define (fetch ctx)
(let ((id (ctx-get 'listing-id ctx)))
;; Platform-agnostic listing fetch — the dispatcher routes to the;; right origin platform based on the listing's id prefix.
(act 'listing/fetch (list id) 'check-listing)))
(define (check-listing ctx)
(let ((listing (ctx-result ctx)))
(cond
((null? listing) (escalate 'listing-not-found null))
((listing-is-draft? listing) (escalate 'drafts-do-not-sync null))
(else (next 'rewrite (ctx-set 'listing listing ctx))))))
;; ── rewrite — the Sonnet hop ──────────────────────────────────;; sakura/relay routes to Sonnet (per the orchestration grammar in;; AUTOMATIONS-CANONICAL.md §9). The audience prompt is "Google;; Shopping search results"; the operator's Atlas-grounded voice is;; pulled in as a system note so the rewrite preserves the voice.
(define (rewrite ctx)
(let ((listing (ctx-get 'listing ctx)))
(sakura/relay 'sonnet 'polish-google
(list (listing-title listing)
(listing-description listing)
(listing-category listing))
'check-rewrite)))
(define (check-rewrite ctx)
(let ((draft (ctx-result ctx)))
(cond
((null? draft) (escalate 'rewrite-failed null))
(else;; Show the operator the proposed rewrite before pushing. The;; surface owns the approval UI; the cart waits for the operator;; to commit or cancel.
(next 'await-approval (ctx-set 'draft draft ctx))))))
;; ── await-approval — surface waits for operator ───────────────;; The driver pauses here; the surface emits an "approve / edit /;; cancel" pill. On approve, ctx is updated with 'approved=#t and the;; driver re-runs us — we move to push. On cancel the cart ends without;; touching Google.
(define (await-approval ctx)
(cond
((eq? (ctx-get 'approved ctx) #t) (next 'push ctx))
((eq? (ctx-get 'cancelled ctx) #t) (done))
(else (sakura/say "Tap approve to push the polished version to Google.")
(done))))
;; ── push — the only side-effecting state ──────────────────────;; Build the polished listing dict (the original + the rewritten;; description) and call merchant_center/sync.
(define (push ctx)
(let ((listing (listing-with-description
(ctx-get 'listing ctx)
(ctx-get 'draft ctx))))
(act 'merchant_center/sync (list listing) 'check-push-result)))
(define (check-push-result ctx)
(let ((r (ctx-result ctx)))
(cond
((push-ok? r)
(sakura/say (string-append
"Polished + pushed to Google · "
(push-product-id r)))
(done))
((eq? r 'rate-limited) (after 30 'push ctx))
(else (escalate 'push-failed r)))))
Two-step: local sentiment first; only negative reviews escalate to cloud reasoning for theme analysis.
Cheap local classifier reads the tone first. Only the genuinely negative messages escalate to cloud reasoning for deeper read. Saves API spend on the everyday-friendly stuff.
Cluster the month's reviews into themes with concrete examples. Addresses pain #4, #24.
Cluster the reviews by what they're about. Surface the themes with real quotes attached — operator sees what buyers actually said, not a summary that lost the words.
Compare paid-vs-charged shipping across 90d, propose template edits with expected per-order delta.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Listings likely needing a production-partner disclosure per Etsy policy. Addresses pain #2.
Walk your data, check one predicate, surface the rows that fail. Pure SQL-shaped logic — no LLM, no API call. Runs on cron and shows up in the Analysis tab as a table.
Example forthcoming — examples.json entry editable in place.
Graph
§10. Deep purple ✨ — deep reasoning33 entries
design-pricing-strategy✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
Whole-shop pricing strategy with tiers, ladders, anchors. Addresses pain #19. Matrix mod 2026-06-01: + Engram-hosted + Monte Carlo (was: cloud reasoning).
Cluster your work into tiers, anchor each tier to a market band, and walk buyers up the ladder. The math is a portfolio mix-and-match; the craft is naming the tiers in your voice.
not-yet-implemented — no cart file at scheme/carts/…/write-brand-story.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
annual-strategy-review✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
Year-over-year strategic review with positioning + bets.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
cron (Jan 1)
Tools
cortex.aggregate, year-end-summary
Source
carry-forward
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/annual-strategy-review.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
new-product-line-design✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
Propose a new product line: themes, SKUs, positioning.
Multi-step playbook. deep reasoning chains together a sequence of smaller automations and synthesizes the result. The verbs each exist on their own — deep reasoning is the conductor.
not-yet-implemented — no cart file at scheme/carts/…/new-product-line-design.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
year-end-summary✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
Narrative recap of the year.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
cron (Dec 31)
Tools
cortex.aggregate (heavy)
Source
carry-forward
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/holiday-listing-strategy.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
shop-positioning-refresh✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
Refresh positioning across About + announcement + key listings.
Multi-signal composite — pulls every relevant audit + ratio + trend into one number per listing. The signals are simple; the playbook around them is where deep reasoning earns its money.
Trigger
operator-asked
Tools
cortexquery, peerlookup, write-brand-story
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/shop-positioning-refresh.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
growth-bet-portfolio✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
3-month growth bet portfolio: which listings to push, which to retire, which to test.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
operator-asked
Tools
cortex.aggregate, niche-trend-watch
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/growth-bet-portfolio.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
pricing-monte-carlo✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)SINGLEman →
MCMC simulation of price moves against historical demand.
Run a thousand parallel 'what if I changed the price' simulations against your real sales history. The median outcome is your honest expectation; the spread is your honest uncertainty.
Trigger
operator-asked
Tools
cortex.aggregate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/markov-buyer-journey.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
dead-shop-revival-plan✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.1 Whole-shop strategy (carry + new, 11)PLAYBOOKman →
"My shop has been dead for 6 months — turn it around." End-to-end plan.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
not-yet-implemented — no cart file at scheme/carts/…/dead-shop-revival-plan.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
shop-audit-narrative✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.2 Synthesis playbooks (carry + new, 9)PLAYBOOKman →
Write the prose around an audit run — wins + gaps. Addresses pain #11. Matrix mod 2026-06-01: + Engram-hosted means deep reasoning reads full projection (was: digest only) + voice readout.
Multi-signal composite — pulls every relevant audit + ratio + trend into one number per listing. The signals are simple; the playbook around them is where deep reasoning earns its money.
Trigger
operator-asked
Tools
all white audit-*
Source
carry-forward
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
write-policy-update✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.2 Synthesis playbooks (carry + new, 9)PLAYBOOKman →
Shop-policy update with diff + rationale.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
operator-asked
Tools
shop-policies, policy_lookup
Source
carry-forward
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
Example forthcoming — examples.json entry editable in place.
Graph
compare-shop-to-segment-deep✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.2 Synthesis playbooks (carry + new, 9)PLAYBOOKman →
Deep comparison with 50+ peer listings (vs cloud reasoning light comparison).
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
operator-asked
Tools
peer_lookup (heavy), cortex.aggregate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/cohort-deep-dive.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
pricing-anomaly-explain✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.2 Synthesis playbooks (carry + new, 9)SINGLEman →
"Your margins on rings dropped 22% — here's what changed and what to do."
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Trigger
analysis-pattern (big margin drift)
Tools
cortex.aggregate, pricing-benchmarks
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/pricing-anomaly-explain.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
churn-postmortem✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.2 Synthesis playbooks (carry + new, 9)PLAYBOOKman →
Quarterly review of buyer churn + recovery plan.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
cron (quarterly)
Tools
cortex.aggregate, review-anomaly-watch
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/churn-postmortem.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-channel-portfolio✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.2 Synthesis playbooks (carry + new, 9)PLAYBOOKman →
Portfolio analysis across Etsy + eBay + Shopify + Meta. Addresses pain #5, #31. Matrix mod 2026-06-01: + Engram unifies the cross-channel projection (was: per-platform pulls).
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
operator-asked
Tools
cortex.aggregate per platform
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/cross-channel-portfolio.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
write-custom-cart✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)PLAYBOOKman →
Write a custom cart from operator intent. Validated by Sakura via eight-star lint.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
operator-asked
Tools
cartvalidate, cortexquery
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/write-custom-cart.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
debug-cart-failure✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)PLAYBOOKman →
Debug a failed cart from log + source + error.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
event (cart fail)
Tools
cartstatus, cartvalidate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/debug-cart-failure.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
compose-multi-cart-playbook✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)PLAYBOOKman →
Compose multi-cart playbook ("clean up the shop, then publish 5 new listings, then send a newsletter").
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
operator-asked
Tools
cartpropose, cartvalidate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/compose-multi-cart-playbook.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cart-refactor✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)PLAYBOOKman →
Refactor a cart for clarity / safety / efficiency.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
operator-asked
Tools
cart_validate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/cart-refactor.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cart-migration✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)PLAYBOOKman →
Migrate a cart to a new spine API surface.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
operator-asked
Tools
cart_validate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/cart-migration.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
explain-cart-deep✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)SINGLEman →
Long-form plain-English explanation of a complex cart.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
operator-asked
Tools
cart_status
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/explain-cart-deep.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
safety-star-fix✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)PLAYBOOKman →
Fix a cart's eight-star lint failure with reasoning.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
event (lint fail)
Tools
cart_validate
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/safety-star-fix.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
sim-trace-deep-narration✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.3 Code + Scheme + cart writing (new, 8)SINGLEman →
Step-by-step narration of a long sim trace.
Cart-writing playbook. deep reasoning drafts the Scheme; Sakura runs eight-star lint; if it fails, deep reasoning iterates. Code that ships passes the same lint your human carts pass.
Trigger
operator-asked
Tools
cart_status
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
event (account flagged)
Tools
policy_lookup, draft-policy-explanation-to-buyer
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/seasonal-campaign-launch.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
competitor-response-plan✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.4 Multi-step orchestration (new, 6)PLAYBOOKman →
When a competitor undercuts, here's how to respond without a race to the bottom.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
analysis-pattern (peer moved on price)
Tools
competitor-price-comp, design-pricing-strategy
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
not-yet-implemented — no cart file at scheme/carts/…/competitor-response-plan.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
onboarding-first-week✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.4 Multi-step orchestration (new, 6)PLAYBOOKman →
First-week onboarding playbook for a brand-new operator.
Multi-step playbook. deep reasoning chains together a sequence of smaller automations and synthesizes the result. The verbs each exist on their own — deep reasoning is the conductor.
not-yet-implemented — no cart file at scheme/carts/…/onboarding-first-week.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
migration-from-platform✦
deep purple§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix) · §10.4 Multi-step orchestration (new, 6)PLAYBOOKman →
"I just connected eBay — what should I migrate first?"
Multi-step playbook. deep reasoning chains together a sequence of smaller automations and synthesizes the result. The verbs each exist on their own — deep reasoning is the conductor.
Trigger
event (operator added new platform)
Tools
cross-channel-portfolio
Source
new
Section
§10. Deep purple ✨ — deep reasoning (34 baseline, 45 post-matrix)
Tap mic on any text input, dictate, transcript fills. Universal.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
"Sakura, show me today's sales" → fires cortex.aggregate.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
Operator interrupts Sakura mid-speak; her turn yields. Invariant for safety (Abel).
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
"Stop" / "cancel" / "wait" cancels current Sakura action. Abel-mandated.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
"M as in mango, A as in apple..." — fall-back for brand names and SKUs.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
Long-press mic anywhere → 30s memo → pinned to active card's Cortex node.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
Phone photo → R2 → desktop Cortex pulls. The headliner.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
Start a draft on phone, finish on desktop (or reverse).
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
Sakura context (recent turns) follows operator across devices.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
"What's on my desktop now?" surfaces in phone Sakura view.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
Operator's last 24h of activity, available on every device. Consolidates 4 retired per-device feeds.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
"New order" pings every signed-in device, suppress duplicates. Consolidates 5 retired per-device notification carts.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
"Continue on desktop" — Safari-Handoff for Curator cards.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
Photo + dictation → full Etsy draft. The headline upgrade lure.
Photo plus dictation plus context window equals a full listing draft. cloud reasoning does the prose; STT handles the voice; embeddings pulls the image embed. The headliner upgrade lure.
Same for eBay. eBay's form is famously long — voice cuts it in half.
Photo plus dictation plus context window equals a full listing draft. cloud reasoning does the prose; STT handles the voice; embeddings pulls the image embed. The headliner upgrade lure.
Photo plus dictation plus context window equals a full listing draft. cloud reasoning does the prose; STT handles the voice; embeddings pulls the image embed. The headliner upgrade lure.
Speech-to-text on-device, mapped to a Sakura action. Tap mic, talk, the tool fires. Eight-star canon means anything destructive gets a read-back before it runs.
"USPS Priority $7.85 / 3d vs UPS Ground $9.20 / 5d, by your past delivery data."
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Build per-region templates from actual delivery history.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Listings whose template's stated zone doesn't match actual buyer zone history. Extension of shipping-template-audit.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Where you're overcharging or undercharging shipping by region.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Pulls per-jurisdiction tax rules + your real sales by location. Surfaces the line items your accountant cares about, with receipts attached for verification.
Tax actually collected per jurisdiction; flag where Etsy auto-collect doesn't apply.
Pulls per-jurisdiction tax rules + your real sales by location. Surfaces the line items your accountant cares about, with receipts attached for verification.
"This order's address is 800 mi from buyer's past addresses."
Compare incoming order against the operator's normal pattern (price tier, geography, buyer history). Flag the genuinely strange ones; trust the boring ones.
Regions where you can charge more (or where you can't); per-region price hint.
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
"Mail by Dec 18 to land before Christmas in 90% of cases."
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tag a batch of phone photos on desktop with bulk operations.
Cortex projection on R2 (encrypted at rest, scoped DEK). Phone writes, desktop reads. Same single source of truth across every device the operator signs into.
not-yet-implemented — no cart file at scheme/carts/…/etsy-photo-from-phone-into-draft.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
§15. Matrix absorption — Power tier ($99.99) additions53 entries
deep-engram-monte-carlo-pricing✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
1000-sim pricing analysis. "Median revenue at current = $1,840; at +8% pricing = $2,010 median." The single most defensible $99.99 upgrade.
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
cron (nightly)
Tools
engram-hosted, deep reasoning, Lacuna nightly
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-monte-carlo-pricing.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-markov-buyer-journey✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
Markov chain of visit-favorite-purchase across operator's whole history.
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
operator-asked
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
operator-asked
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-multi-shop-portfolio.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-niche-positioning-deep✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
Where the operator sits in the niche, 50+ peer deep-comparison.
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
operator-asked
Tools
engram-hosted, web search (heavy), deep reasoning
Substrates
engram-hosted, deep reasoning, web search
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-niche-positioning-deep.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-listing-pricing-mcmc-per-sku✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
Per-SKU price band recommendation by Monte Carlo over history.
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
cron (nightly)
Tools
engram-hosted, deep reasoning, Lacuna nightly
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-listing-pricing-mcmc-per-sku.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-cohort-deep-dive-with-projection✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
"Find the cohort behind my last 100 sales and tell me how to find more."
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
operator-asked
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-cohort-deep-dive-with-projection.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-quarterly-churn-postmortem✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
Quarterly buyer-churn narrative + recovery plan.
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
cron (quarterly)
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-quarterly-churn-postmortem.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-trend-vs-history-anomaly✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
"Your category is moving, you're not — here's the gap."
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
cron (weekly)
Tools
engram-hosted, web search, deep reasoning
Substrates
engram-hosted, deep reasoning, web search
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-trend-vs-history-anomaly.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-photo-style-drift-detect✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
"Your photo style changed in March; sales correlate."
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
analysis-pattern
Tools
engram-hosted, image understanding, deep reasoning
Substrates
engram-hosted, embeddings, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-photo-style-drift-detect.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-listing-funnel-walk-multi-shop✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
View → favorite → sale funnel across all platforms with diagnosis.
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
operator-asked
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-listing-funnel-walk-multi-shop.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-seasonal-multi-year✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
"Last 3 years' seasonality projected forward with confidence bands."
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
cron (Sep)
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/deep-engram-seasonal-multi-year.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
deep-engram-buyer-retention-strategy✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.1 Cloud-reasoning playbooks — deep-purple ✨ (12)PLAYBOOKman →
"These 80 buyers came back once; here's how to reach them again."
deep reasoning reads the full Engram-hosted projection (your whole history, in context). Runs nightly on Lacuna's batched-worker tier — cheap per call because the heavy math runs once and the cached results serve all day.
Trigger
operator-asked
Tools
engram-hosted, deep reasoning
Substrates
engram-hosted, deep reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-cloud-listing-rewrite.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-cloud-shop-audit-narrative✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.2 Cloud-LLM-reads-Engram — light-purple (7)man →
cloud reasoning writes the prose around an audit run, grounded in shop data.
Multi-signal composite — pulls every relevant audit + ratio + trend into one number per listing. The signals are simple; the playbook around them is where deep reasoning earns its money.
Trigger
event
Tools
engram-hosted, cloud reasoning
Substrates
engram-hosted, cloud reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-cloud-brand-story-revise.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-streaming-sync-status✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.3 Streaming sync — invisible plumbing (8)man →
Sakura surfaces "last synced X ago" in a quiet chip.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
cron (init)
Tools
engram-hosted (gRPC)
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-streaming-sync-status.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-streaming-conflict-resolve✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.3 Streaming sync — invisible plumbing (8)man →
When two devices edit the same field, surface a chooser.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
event
Tools
engram-hosted (gRPC)
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-streaming-conflict-resolve.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-streaming-replay-on-reconnect✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.3 Streaming sync — invisible plumbing (8)man →
Offline → online: pending edits flush in order.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
event
Tools
engram-hosted (gRPC)
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-streaming-replay-on-reconnect.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-projection-on-demand✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.3 Streaming sync — invisible plumbing (8)man →
Operator triggers a full re-projection from Cortex.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
event (operator-asked)
Tools
engram-hosted (gRPC), scoped DEK
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
"Give me everything as a file" — tier-cancellation-friendly. White.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
tool
Tools
engram-hosted, scoped DEK
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
tool
Tools
engram-hosted, scoped DEK
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
Share an anonymized projection with an accountant / collaborator. Light-purple.
Operator owns the data. Export gives them everything as a tarball; import restores from one; redact strips identifiers for sharing with an accountant. Cancellation never holds your data hostage.
Trigger
event
Tools
engram-hosted, cloud reasoning, scoped DEK
Substrates
engram-hosted, cloud reasoning
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-redact-and-share.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-time-travel-snapshot✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.3 Streaming sync — invisible plumbing (8)man →
Read Cortex as of N days ago, for a "what changed since" diff.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
Trigger
event
Tools
engram-hosted, scoped DEK
Substrates
engram-hosted
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
not-yet-implemented — no cart file at scheme/carts/…/cross-voice-financial-readout.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-voice-customer-message-reply✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.4 Voice — context-aware conversational, light-purple (8)man →
Voice-reply to a buyer with cloud reasoning polishing the prose. Pain #16.
cloud reasoning drafts a buyer-facing reply in your voice, grounded in Cortex context (the buyer's past purchases, shop policy). Never auto-sends; operator reviews and fires manually.
not-yet-implemented — no cart file at scheme/carts/…/cross-craft-fair-photo-of-buyer-piece.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-fulfillment-route-priority✦
deep purple§15. Matrix absorption — Power tier ($99.99) additions (53) · §15.5 Real-time geo + voice + Engram — green live (8)man →
"Drop off these 3 packages on your usual coffee run."
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Trigger
event
Tools
Maps directions, cortex.aggregate
Substrates
Maps
Section
§15. Matrix absorption — Power tier ($99.99) additions (53)
One operator, multiple shops, single projection. Light-purple.
Cortex hosted on Lacuna infra, gRPC bidi streaming sync. Sub-2s cross-device latency. Still encrypted with the operator's key — we run the machine but cannot read the data.
deep reasoning runs a multi-step playbook. Reserved for strategy, MCMC, code-from-scratch — things where a single cloud reasoning call would give the right answer but not the right plan.
Owner, manager, viewer roles. Each sees a redacted projection. White.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
"Chaun packs, Alfred ships" — task moves between operators. Green.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Read-only API for external accountants / partners. White.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Scheduled CSV drops to operator's cloud storage. Green.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Operator sets retention window per data class. White.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Enterprise infra plumbing. Scoped DEKs gate which team member can read what. Compliance-shaped — the audit log is hash-chained so nothing can be silently rewritten.
Multi-step playbook. deep reasoning chains together a sequence of smaller automations and synthesizes the result. The verbs each exist on their own — deep reasoning is the conductor.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
Maps
Substrates
Maps
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
Maps
Substrates
Maps
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
web search, Maps
Substrates
web search, Maps
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
Maps, cortex.aggregate
Substrates
Maps, cortex.aggregate
Section
§17. Matrix absorption — per-marketplace deep dives (47)
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Tools
Atlas, cloud reasoning
Substrates
Atlas, cloud reasoning
Section
§17. Matrix absorption — per-marketplace deep dives (47)
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Tools
web search
Substrates
web search
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
web search, Maps
Substrates
web search, Maps
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
STT, cloud reasoning
Substrates
STT, cloud reasoning
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
STT
Substrates
STT
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
web search, Maps
Substrates
web search, Maps
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Pulls your real margin from Cortex and (when green-tier) peer pricing from web search. Suggests a delta with reasoning. Operator decides; tool never auto-fires a destructive write.
Tools
Maps, cloud reasoning
Substrates
Maps, cloud reasoning
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
Tools
Maps
Substrates
Maps
Section
§17. Matrix absorption — per-marketplace deep dives (47)
not-yet-implemented — no cart file at scheme/carts/…/cross-engram-review-photo-claims-mismatch.sks
Example
Example forthcoming — examples.json entry editable in place.
Graph
cross-engram-niche-share-of-voice
light purple§17. Matrix absorption — per-marketplace deep dives (47) · §17.6 Cross-marketplace additions (no specific platform) (12)man →
Total share-of-voice.
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Tools
Atlas, Engram-hosted
Substrates
Atlas, Engram-hosted
Section
§17. Matrix absorption — per-marketplace deep dives (47)
Minimum profitable shipping per region per platform.
Looks at the buyer's ZIP, distance to operator, your past delivery history, carrier rate tables. Suggests the carrier + transit estimate that matches the real data.
web search reads the live market in your niche; we diff against where you sit. The gap between what's moving and what you're listing is the opportunity.
Embed every listing into a high-dim vector into vectors. Search by meaning, not keywords. 'Rustic autumn pieces' finds the right listings even if you never typed 'rustic.'
Embed every listing into a high-dim vector into vectors. Search by meaning, not keywords. 'Rustic autumn pieces' finds the right listings even if you never typed 'rustic.'
Embed every listing into a high-dim vector into vectors. Search by meaning, not keywords. 'Rustic autumn pieces' finds the right listings even if you never typed 'rustic.'
Embed every listing into a high-dim vector into vectors. Search by meaning, not keywords. 'Rustic autumn pieces' finds the right listings even if you never typed 'rustic.'
Engram broadcasts to all signed-in devices; per-device variant is redundant.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
Retired in the 2026-06-01 Engram absorption pass. A per-device variant — one cross-device Engram cart replaced N per-device entries. Cite trail preserved in §19 of the canonical doc.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-revenue-month-conversational.sks
Example
Sakura uses this when you ask "how was last month?" or it lands on the first of the month. She reads your own Cortex, not the internet's, and gives the number with the context: "May was your second-best month — $4,210 gross, $3,612 after fees."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-cortex-conversational-qa.sks
Example
Sakura uses this whenever you ask anything about your money in plain English. She reads your local ledger only — never the internet, never aggregated platform data. "Ask me anything about your money — I read your own ledger."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-refund-reason-clustering.sks
Example
Sakura uses this when your refund pile starts to feel patterned. She clusters refund narratives on-device. "Your '14k gold-filled' descriptions get refunded 4× more than 'stainless' — two clusters: tarnished and allergic."
"Etsy 1099-K agrees with your ledger within $12 for the year. Three timing discrepancies — here's the explanation."
Pulls per-jurisdiction tax rules + your real sales by location. Surfaces the line items your accountant cares about, with receipts attached for verification.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-1099k-reconciliation.sks
Example
Sakura uses this when Etsy mails the 1099-K. She compares it line by line to your Cortex ledger. "Within $12 for the year. Three timing discrepancies — here's the explanation." You walk into your accountant with the diff already done.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-revenue-anomaly-annotated.sks
Example
Sakura uses this on a daily cron. When yesterday's revenue stands out, she names the cause from your own receipts. "Up 2.4x — one $312 custom order to Maine. Worth following up." Anomaly with a why.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-true-roas-google-shopping.sks
Example
Sakura uses this when your ad spend doesn't match what showed up at the register. She joins Merchant Center spend with your actual receipts. "$4/day on the hammered-cuff campaign returned $52 — 3.1× ROAS. The candle campaign is underwater at 0.6×."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-cohort-ltv-synthesis.sks
Example
Sakura uses this when she's reasoning about which product is your repeat-buyer engine. "Candle-first buyers came back twice as often as ring-first buyers. Year-1 spend: $87 vs $42. Candles are your engine."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-knowledge-graph-same-item-detection.sks
Example
Sakura uses knowledge lookup to resolve listings across your three marketplaces to the same physical thing. "Your hammered brass cuff is everywhere. Etsy sold 12; eBay 0. eBay's photos are the worst — copy yours over?"
"Candle searches are up 40% this week — you have zero candle listings. Your Q3 wax-and-wood collection would slot here."
Reads search-trend signals (Pinterest, community signals, search-trend signals). Crosses with your catalog. Surfaces 'this is trending and you have inventory' or 'this is trending and you have nothing to sell.'
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-pinterest-demand-inventory-gap.sks
Example
Sakura uses this weekly to catch demand you're not serving. "Candle searches are up 40% this week — you have zero candle listings. Your Q3 wax-and-wood collection would slot here."
"Five things to draft this week: birthstone rings (community signal up 200), earthy pottery (community signals 3× normal)..."
Reads search-trend signals (Pinterest, community signals, search-trend signals). Crosses with your catalog. Surfaces 'this is trending and you have inventory' or 'this is trending and you have nothing to sell.'
Trigger
cron (weekly)
Tools
community signals, trend signals, cortex.aggregate
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-reddit-pinterest-demand-listing-suggester.sks
Example
Sakura uses this when she's surfacing what to draft next. "Five things to draft this week: birthstone rings (community signal up 200), earthy pottery (community signals 3× normal)..."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-cortex-replay-counterfactual.sks
Example
Sakura uses this when you ask "what if I'd done it differently?" She replays your Cortex history with a mutation. "At 10% higher Q1 prices, you'd have netted $4,800 instead of $4,210 — but the hammered cuff would have sold 30% less."
"Etsy fees Q3: $487. That goes on Schedule C line 10. Each receipt available if your accountant wants to verify."
Pulls per-jurisdiction tax rules + your real sales by location. Surfaces the line items your accountant cares about, with receipts attached for verification.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-engram-tax-year-companion.sks
Example
Sakura uses this throughout the year so April isn't a scramble. "Etsy fees Q3: $487. That goes on Schedule C line 10. Each receipt available if your accountant wants to verify."
"Three negative reviews about shipping in week 32; conversion on USPS Ground listings dropped 18% the next two weeks."
Cheap local classifier reads the tone first. Only the genuinely negative messages escalate to cloud reasoning for deeper read. Saves API spend on the everyday-friendly stuff.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-review-sentiment-finance-impact.sks
Example
Sakura uses this when she sees a review-sentiment dip and wants to connect it to revenue. "Three negative reviews about shipping in week 32; conversion on USPS Ground listings dropped 18% the next two weeks." Cause to effect, named.
"Effective Etsy fee 12.4% most listings, 21% on bridal — Etsy Offsite Ads kicked in. Three of those sales would have come from your own shoppers."
Pulls per-jurisdiction tax rules + your real sales by location. Surfaces the line items your accountant cares about, with receipts attached for verification.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-fee-leakage-detector.sks
Example
Sakura uses this monthly to catch Etsy's Offsite Ads quietly taking 15% off the top. "Effective fee 12.4% most listings, 21% on bridal — Offsite Ads kicked in. Three of those sales would have come from your own shoppers."
"Next month projects $3,800–$5,200 gross. If your rent + materials run $3,100, you're covered but not by much."
Estimate how long a thing takes (or how much revenue lands) with honest confidence bands. Borrowed from medical research; we don't pretend to know what we don't know.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-cash-flow-forecast-conversational.sks
Example
Sakura uses this when you ask how next month looks. "Next month projects $3,800 to $5,200 gross. If rent + materials run $3,100, you're covered but not by much." Real numbers, real range.
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-loam-radio-browser-ambient-context.sks
Example
Sakura uses this when she spots a pattern she doesn't want to overclaim. "Curious — your three best sale days this month were all days the Mali Sahel station was on. About mood, not the station. Noted."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-engram-multi-shop-consolidation.sks
Example
Sakura uses this when you run multiple shops. She pulls them together via Engram. "Across three shops: $12,400 gross this quarter. Vintage $4,800, jewelry $5,200, candles $2,400. Vintage is highest-margin at 64%."
not-yet-implemented — no cart file at scheme/carts/…/cross-finance-google-knowledge-graph-category-margin.sks
Example
Sakura uses this monthly when you ask what's actually paying for itself. She joins knowledge lookup categories with your make-time logs. "Bridal rings make $87/hour of make-time. Stamped pendants make $12/hour. If you have a Saturday, it's rings."
"Posterior: 68% probability you clear $10K this quarter; 95% credible interval $8.4K–$11.7K."
Guess many possible futures with weighted dice, then average them. Each guess uses what we've already seen to nudge the dice; over thousands of throws, the averages converge on a real probability distribution for future revenue — not a point guess, but a range with confidence bands.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-mcmc-revenue.sks
Example
Sakura uses this when you ask "will I clear $10K this quarter?" She runs a Bayesian model over your last 18 months of receipts and tells you the probability honestly: "68% chance you clear it; the 95% range is $8,400 to $11,700." Not a guess — a posterior distribution from your own data.
"Five of your loyal-state buyers slid to dormant in May — they all bought during the holiday sale and never came back."
The customer is in some hidden mood (active, dormant, churning) we can't see directly. We watch what they DO buy and when, then infer which mood they're in like detectives. The math finds the hidden states from the visible behavior.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-hmm-buyer-states.sks
Example
Sakura uses this when she notices buyers behaving differently month-to-month. A hidden Markov model finds the loyal/lapsed/dormant states without you labeling them. "Five loyal buyers slid to dormant after the holiday sale and never came back" — she names the slide, you decide whether to email them.
"Next 60 days project $9,200 (95% interval $7,400–$11,000); confidence narrows for week 1, widens for week 8."
Draw the smoothest possible curve through what we've seen, with a fog of uncertainty wherever data is thin. Next week's forecast is sharp; week eight's forecast has a wide fog band. The fog matters as much as the curve.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-gp-forecast.sks
Example
Sakura uses this when you want a forecast that knows its own uncertainty. Gaussian Processes give a confidence band that's narrow up close and widens out — "Next week: $1,800 ± $200. Week 8: $1,400 ± $900." She shows you the cone, not a single line that pretends to be sure.
"Stopping Google Shopping for two weeks: posterior says you'd have lost $1,200 (99% probability the effect was positive)."
Did the ad cause the spike, or would the spike have happened anyway? We build a parallel-universe model of what sales would have looked like WITHOUT the ad, then measure the gap. Same math NASA uses to know whether a policy actually moved a metric.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-bsts-causal.sks
Example
Sakura uses this when you ask "did stopping Google Shopping cost me money?" She builds a synthetic control of what your revenue would have been with the ads still running, compares it to what actually happened, and reports the gap with a probability attached. "99% probability you lost about $1,200."
"Your top sellers share a structural feature your bottom 20 lack — same warm-toned background + same caption structure."
Squeeze every listing through a narrow neural funnel that keeps only the features that matter for selling, then look at where your top sellers cluster in that compressed space. Your bottom listings probably sit in a different neighborhood.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-vae-listing-embed.sks
Example
Sakura uses this when your top sellers feel like they share something but you can't name it. A variational autoencoder learns a compressed representation of every listing — photo, caption, tags — and clusters them. "Your top sellers share warm backgrounds and short captions. Your bottom 20 don't."
"Median time-to-sale for your cuff at $48 is 71 days; 25/75 percentile band $34–$112. Worth renewing."
Borrowed from medical research: estimate how long until a listing 'dies' (sells), with a confidence band. Censored data (still on the shelf) contributes too — we don't pretend it sold at the cutoff.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-survival-sale-time.sks
Example
Sakura uses this when you ask "how long should I wait before relisting?" Survival analysis treats time-to-sale like a clinical trial — accounting for the listings still alive without a sale. "Median 71 days at $48. Worth renewing."
"This month's reviews cluster on three themes: chain quality (8 mentions), shipping speed (12), packaging (4). Quotes attached."
Cluster reviews by the words they use, but using semantic similarity, not exact word matches. 'Chain broke' and 'clasp came off' land in the same theme. Returns the clusters AND a real example quote for each.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-topic-reviews.sks
Example
Sakura uses this when your review pile is too big to read. Topic modeling clusters the words people actually use. "Three themes this month: chain quality (8 mentions), shipping speed (12), packaging (4)." She attaches the verbatim quotes so you trust the cluster.
"After 18 views + 3 sales: 72% probability the $40 price is better. Run two more days for a decisive call."
Two prices, watch the buyers. After every sale we update our belief about which price wins. Stop when we're confident enough — no need for the rigid fixed-sample-size test, no need to pre-pick a winner.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-bayesian-ab-price.sks
Example
Sakura uses this when you're testing two prices and don't want to wait forever. Bayesian A/B tells you the running probability that one is better — "72% likely the $40 price wins, give it two more days for a confident call" — instead of demanding a fixed sample size like classical stats.
"Promoted Listings worked on your wedding pieces (+18% conversion) but had no effect on gift items. Scope the ads to wedding listings only."
Instead of asking 'do ads work on average,' ask 'do ads work on THIS subgroup.' A forest of decision trees finds the buyer segments where the ad pays off and the segments where it's wasted.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-causal-forest-ads.sks
Example
Sakura uses this when you suspect your ad spend works in some places but not others. A causal forest splits buyers and listings into subgroups and asks "where did this ad actually change behavior?" — "Promoted Listings lifted wedding pieces 18%. Gift items: no effect. Scope the ads."
"You have 4 cuffs left, sell 1.2/week with σ=0.6, lead time 3 days. Restock at 3 to keep stock-out probability under 5%."
Treat restocking like a chess game: every state (current stock, demand rate, lead time) has a best move. Solve backward from a million possible futures to find the threshold where 'order now' beats 'wait one more day.'
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-mdp-inventory.sks
Example
Sakura uses this when she's reasoning about restock timing. A Markov Decision Process maps states (stock level, demand rate, lead time) to actions and finds the policy that keeps stock-out probability below your tolerance. "Restock at 3 cuffs to stay under 5% stock-out risk."
"This order — $1,200 from a buyer averaging $40, shipping to a new country, card flagged for prior chargebacks — review before fulfilling."
Throw every order onto a random-decision-tree obstacle course; the orders that get isolated fastest are the weird ones. No labeled fraud data needed — the algorithm just notices outliers.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-isolation-forest-fraud.sks
Example
Sakura uses this on every incoming order, quietly. Isolation forests are good at "this point looks unlike the others" without you defining what fraud means. "$1,200 from a buyer who usually spends $40, new country, card has prior chargebacks — review before fulfilling."
"Visit→favorite is shop-average. Favorite→purchase is half the median. Surface shipping cost earlier in the listing — that's your leak."
Each buyer click is a state (visited, favorited, asked-a-question, bought). The transitions tell you where buyers drop off. Identify the leak; fix the listing step that's bleeding conversions.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-markov-buyer-journey.sks
Example
Sakura uses this when she's looking for your specific leak in the funnel. A Markov chain over visit/favorite/cart/purchase finds the step that's half the shop median. "Your favorite-to-purchase is the leak. Show shipping cost earlier — that's the friction."
"Raising Etsy prices 10%: eBay sales of the same item likely drop 4-6% (cross-platform price-comparison effect). Net positive on revenue."
Draw a dependency graph: 'Etsy price' influences 'eBay sales' through 'cross-platform shopper.' Update one node and ripple the consequences. Lets you reason about counterfactuals across marketplaces.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-bayesnet-cross-platform.sks
Example
Sakura uses this when you have the same item on Etsy + eBay + Shopify and want to know how a change on one ripples to the others. A Bayesian network learns the cross-platform dependencies. "Raising Etsy 10%: eBay sales likely drop 4-6%. Net positive."
"Your Etsy and eBay customers differ mostly on price tier; geography is similar. Don't serve them the same email."
Earth Mover's Distance: how much 'work' would it take to morph one cohort into another, dirt-pile to dirt-pile? Tells you which two cohorts are genuinely different and on which dimension.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-wasserstein-cohort.sks
Example
Sakura uses this when she's comparing two cohorts and you want "how different, exactly?" Wasserstein distance measures it as a transport cost — the work to morph one distribution into the other. "Etsy vs eBay buyers differ mostly on price tier; geography is similar. Don't email them the same thing."
"Holiday demand has shifted 11 days earlier each year for three years — December peak this year projects Dec 5, not Dec 16."
A neural network trained on three years of weekly demand learns the shape of seasonality — including the fact that it's been creeping earlier each year. Forecasts the curve, not just the level.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-seq2seq-demand.sks
Example
Sakura uses this when seasonal patterns aren't holding still. A sequence-to-sequence model learns from your last 24+ months and projects forward. "Holiday demand has shifted 11 days earlier each year — December peak this year projects Dec 5, not Dec 16."
"This refund tags as {chain-quality, comm-response-slow} — two structured signals, not one cluster. Both worth addressing."
Conditional Random Fields: assign multiple labels to one refund at once ('chain-quality' AND 'slow-response') while respecting that some labels tend to co-occur. Catches the multi-cause cases that flat classifiers miss.
not-yet-implemented — no cart file at scheme/carts/…/deep-finance-crf-refund-labels.sks
Example
Sakura uses this on each posted refund to extract structured signals. A conditional random field labels the refund narrative — "this is two signals, not one cluster: {chain-quality, comm-response-slow}" — so the next month's report is built from facts, not vibes.