DONATELLO LOCAL · ACTUAL MODEL OUTPUTSmall function.
Inspectable evidence.
Granite 4.1 3B · local runtime · 12 regression checks passed after one correction. No Donatello credits or cloud-model requests.
function slugify(value) {
if (typeof value !== 'string') {
throw new TypeError('Input must be a string');
}
value = value.trim().toLowerCase();
value = value.normalize('NFKD').replace(/[\u0300-\u036f]/g, '');
value = value.replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
return value || '';
}Not a benchmark or proof of automatic offline fallback. Read the case for both attempts, prompts, timings and limitations.