Sounds to me like what you're asking for is really documentation, not a spec? Or maybe project-internal rules about what individual platform code may and may not do (but that's still not really a spec)?
In my understanding, a specification is always something defining a standard that allows interoperability _between_ different implementations. Something that only applies to a single implementation (i.e. a single code base) can't really be a specification. Making a "coreboot specification" would mean that someone else could then take that and implement their own "coreboot" in a completely separate cleanroom code base from scratch, and I don't think that makes sense. (We could create a specification for the coreboot payload handoff interface (i.e. coreboot tables) so that other people could write their own firmware stack that can run coreboot payloads. I don't think that would make much sense, though. If we wanted payload interoperability we should probably rather attach to one of the various other "universal payload" proposals that were going around, although we've had discussions about that before where I at least argued that I don't think that makes much sense for coreboot.)