Files
Dirigent/plugin/rules.ts
zhi 75f358001b fix(rules): handle multi-byte emoji in getLastChar via Array.from
getLastChar used t[t.length-1] which only gets the trailing surrogate
of emoji like 🔚 (U+1F51A, a surrogate pair in UTF-16). This meant
end symbol matching ALWAYS failed for emoji symbols, causing every
non-humanList message to hit rule_match_no_end_symbol -> no-reply.

Fix: use Array.from(t) to correctly split by Unicode code points.
2026-02-27 15:20:05 +00:00

4.7 KiB