Pure naming functions used to build article slugs and
filename suffixes. Extracted into a dedicated module so the
news/<date>-<type>[-<suffix>]-<lang>.html filename convention has one
authoritative implementation that batch mode, single-run mode, and the
back-compat shim in article-generator.ts all defer to.
Every function here is referentially transparent — no I/O, no global
state, deterministic for the same inputs.
Description
Pure naming functions used to build article slugs and filename suffixes. Extracted into a dedicated module so the
news/<date>-<type>[-<suffix>]-<lang>.htmlfilename convention has one authoritative implementation that batch mode, single-run mode, and the back-compat shim inarticle-generator.tsall defer to.Every function here is referentially transparent — no I/O, no global state, deterministic for the same inputs.