grid-template[-areas]: "auto span" is valid whereas auto and span are not valid <custom-ident> in <grid-line> and <line-names>. Authors can still use them as named grid areas and reference their lines with auto|span-start|end though.
This rule seems mandatory for <grid-line> otherwise its parsing would be ambiguous, but not for <line-names>. Is it intentional or is it an oversight in parsing <string>+ of grid-template-areas?
A line name cannot be span or auto, i.e. the <custom-ident> in the <line-names> production excludes the keywords span and auto.
https://drafts.csswg.org/css-grid-2/#named-lines
In all the above productions, the <custom-ident> additionally excludes the keywords span and auto.
https://drafts.csswg.org/css-grid-2/#typedef-grid-row-start-grid-line