This is opening up a situation where you have a 2D Javascript array for a model and a bunch of components in the layout (a chessboard, imagine). And the coordinates won' t match!
What kind of programmer can't deal with properly escaping input under the control of the user?
What kind of programmer can't deal with keeping array indexes in bounds?
(tl;dr: you. And me.)
Example: https://jsfiddle.net/5uvpco6e/
CSS grid's negative indexes, hilarious, don't even get this right. If the first element is 1 then the last must be 0, right? No, it's not. Nor is it -1. It's negative two. Don't ask. I don't know.
I do have to point out that your second point is not correct. Remember it's not grid areas, it's grid dividers. So the final grid line <strong>is</strong> in fact -1.
See my very hasty little Codepen: https://codepen.io/jodi/pen/ZeNRJZ
but consistent with the rest of CSS IIRC, for example nth-child starts at one