Thanks for help.  After a lot of learning about utf-8, which was quite educational, the problem was simply that I was calling
my $result = passphrase('1234')->matches($pin);

instead of
my $result = passphrase(param('1234'))->matches($pin);

doh.




--
Wade Burgett
el hefe
Santeria
http://thesanteria.com
503-939-4719