Skip to content

Commit b7d337c

Browse files
committed
chore(i18n): bank the malformed Blob token message
packages/core/src/env.ts goes from 51 to 55: the four fragments of the message the schema now raises for a BLOB_READ_WRITE_TOKEN that names no store. It is emitted by assertEnv() before there is a board, a member or a Translator, like the boot-time strings already banked in this file. Also records what one of the strings already banked in blob-file-store.ts actually is: BLOB_NO_CREDENTIALS holds the sentence @vercel/blob throws, matched on so the driver can replace that error with one naming the store. It is a sentinel for somebody else's string, not copy, and rephrasing it would stop the match — worth saying where the count is explained, since it looks like a message and is not one. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015WBLHKvRatuUufybYpgER1
1 parent 9e7b803 commit b7d337c

2 files changed

Lines changed: 15 additions & 6 deletions

File tree

docs/internationalisation.md

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -289,16 +289,16 @@ configuration that would fail silently says so there or nowhere: refusing
289289
25 where the egress is blocked and every message would hang until the function
290290
timed out.
291291

292-
That entry went from 27 to 51 when the Vercel template stopped asking an
292+
That entry went from 27 to 55 when the Vercel template stopped asking an
293293
operator for values its linked integrations already publish. `env.ts` now
294294
derives `CACHE_DRIVER`, `FILESTORE_DRIVER`, `REDIS_URL` and
295295
`DIRECT_DATABASE_URL` from those, and refuses to boot when it cannot — naming
296296
every variable it searched, because that name is the only clue an operator has
297297
when their store publishes something this board has never heard of. Five
298-
refusals account for the whole raise: the counter charges per quoted fragment,
299-
so a message wrapped over eight lines is eight strings and not eight messages.
300-
Each one is read in a deploy log, by the person who started the deploy, in the
301-
same language as the log around it. See
298+
refusals and one malformed-credential message account for the whole raise: the
299+
counter charges per quoted fragment, so a message wrapped over eight lines is
300+
eight strings and not eight messages. Each one is read in a deploy log, by the
301+
person who started the deploy, in the same language as the log around it. See
302302
[Running on Vercel](./vercel.md#when-a-derivation-cannot-resolve) for what each
303303
refusal means.
304304

@@ -309,6 +309,15 @@ tell apart and a first-upload failure to explain when the platform supplies
309309
neither — all of it thrown as `ConfigurationError` from a driver constructed
310310
at boot, and read by whoever ran the deploy or the backup.
311311

312+
One of that file's counted strings is not copy in any sense and must not be
313+
edited as though it were: `BLOB_NO_CREDENTIALS` is the literal sentence
314+
`@vercel/blob` throws when it can find no credential, and the driver matches
315+
on it to replace that error with one that names the store and the cause. It
316+
is a sentinel for somebody else's string, and translating or rephrasing it
317+
would silently stop the match. A test asserts the same literal is still
318+
present in the installed SDK, so a reword upstream fails the build rather
319+
than passing quietly.
320+
312321
The file store's count is not copy at all — `url()` builds an object
313322
URL per storage shape, and the counter reads the template's fragments as prose.
314323
Neither surface has ever rendered to a member.

scripts/i18n-baseline.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@
6161
"packages/avatars/src/index.ts": 4,
6262
"packages/core/src/cache.ts": 2,
6363
"packages/core/src/config.ts": 2,
64-
"packages/core/src/env.ts": 51,
64+
"packages/core/src/env.ts": 55,
6565
"packages/core/src/errors.ts": 7,
6666
"packages/core/src/metrics.ts": 1,
6767
"packages/core/src/permissions.ts": 53,

0 commit comments

Comments
 (0)