`mode` for a file (or cookbook_file, template, et al) can be a string or a numeric literal (octal):

https://github.com/opscode/chef/blob/master/lib/chef/mixin/securable.rb#L41-L60

I don't think the validation check is required in this case, as it will get passed to the file resource, which already has a validation check.