I see two drawbacks to this:
Issue 13: This propdef table is fully expanded to evaluate and adjust the shorthand’s value space. It simplifies down to <text-box-trim> || <text-box-edge> minus the none and auto keywords.
First, this is error prone and slightly more maintenance work when you add a new longhand value.
Second, depending on the CSS parser, this may require more implementation work than making none and auto invalid.
Nit: the fully expanded value definition would be normal | [<'text-box-trim'> || <'text-box-edge'>].