#1857 mentor marks — the violet vocabulary

Everything the mentor touches gets marked in mentor violet, on a three-rung ladder: node shadow (which node) → option left line (which option) → type-specific detail (which chars / edge / row). Same marks serve ACT (“changed this”), SUGGEST (preview pending accept) and GUIDE (“look here” pointer, rungs 1–2 only). Dial the values, then copy the readout back into the chat.

dial it in

1 · Node shadow SCAFFOLD NODE

load_orders
sql · eu.venact.extract
extract_customers
sql · eu.venact.extract
2

Right node: mentor-touched — selected (ring + elevation, unchanged studio look) plus the violet offset shadow (admin’s -o o 0 0 node shape, recoloured). The badge sits on top: the shadow paints under badges by design.

2 · Option marks REAL OptionsEditor (consumer = OPTIONS tab)

The mentor set the checkbox (left line only — the control is its own diff) and changed the SQL filter from arr_usd > 10000 (left line + violet underscore on the changed chars). Text / join-type rows would get the left line only, same as the checkbox.

3 · Column-mapping marks SCAFFOLD GRID

input · customers
idi64
namestr
regionstr
arr_usdf64
output
idi64
customer_namestr
arr_k round(arr_usd / 1000)

Diff classes keyed on the output-row identity (edgeKey). Every changed output row gets the row mark (tint + line) — the grid’s analogue of the option left line. Detail marks paint on top: edge added/removed → the edge itself violet (bottom edge, into arr_k); expression changed → underscore on the changed chars (/ 1000); a rename (customer_name) gets the row mark only.

WHEREMARK
touched node (≥1 mark)violet offset shadow, under badges; node is also selected
any changed / pointed optionviolet left line
code option+ underscore on changed chars
text · checkbox · join-typeleft line only (the control is its own diff)
mapping: any changed output rowoutput-row tint + line
mapping: edge added / removed+ edge painted violet
mapping: expression changed+ underscore on changed chars