Ferrous created a language specification.
https://github.com/ferrocene/specification
They do say any differences between it and upstream behavior or documentation is a defect in the spec, not upstream. So it isn't authoritative. Unless we all decide it is.