# DECLINE PHRASES a bank ROLE writes instead of a rendering — the prose form of the engine's own
# ⟦TM-NO-DST⟧ sentinel (terminology.NoDst), which the pair's prompt invites and the parser already
# understands. This file is for the OTHER half: a model that declines in words («не термин», «это не
# имя»), whose answer is today banked and injected as the book's canon, byte-identical to a rendering the
# owner signed.
#
# Rows: `lang<TAB>phrase`, one phrase per line, matched STRICTLY — the whole `dst` field, after trimming
# spaces, surrounding quotes and trailing punctuation, case-folded. A phrase is NEVER matched as a
# substring: «не термин» inside a longer answer may be part of a legitimate rendering, and a false decline
# costs the book a canon row and the next purchase a re-ask (there is no retry for a bank role today —
# backlog row 438). `lang` is the book's TARGET language; `*` matches any target, for the phrases a model
# writes in English whatever the pair (the drift the provider quirks record).
#
# ⛔ SHIPPING EMPTY ON PURPOSE, and the emptiness is PINNED by two tests that exist — check them by name
# before trusting this line: `TestTheDeclineRegistryShipsEmpty` (internal/lang/declinephrases_test.go)
# asserts this file carries no rows, and `TestAProseDeclineNeverBecomesTheBooksCanon`
# (internal/pipeline/bankreplyparse_test.go) asserts that an OPEN RUNNER carries the registry and that the
# shipping one declines nothing. An empty registry is an exact no-op: the parser
# recognises the sentinel and nothing else, which is what it did before this file existed. A phrase is a
# BEHAVIOUR change on the money path — it moves a paid rendering out of the bank — so the first row is
# entered when its population has been MEASURED on bought material, not when it sounds right.
#
# ⚠ WHAT MOVES WHEN A ROW IS ADDED: nothing in any request. This plane is not in the wave snapshot and the
# parser is not in the bank role's request identity (attemptRequest), so no batch is re-bought. What moves
# is the bank's CONTENT — a declined term leaves it — and with it memory_version, which re-bills the edit
# wave under the ordinary consent gate. That is the whole price, and it is not zero.
