I'm speaking for myself here, not for Scott, who knows a lot more about the details of TCKs than I do, but here are a few areas that would make things clearer for me. I'll gladly send up a PR with specific suggestions, but probably not for a couple days. So the following is more directional than precise.
1) My interpretation of L49-52 is that this section is meant to list different types of spec *requirements* and the tests related to those types of requirements. It's not at all about how the tests are executed, i.e. how the TCKs work or who should run them. If I'm right I think changes like this might help people focus on that concept and not on implementation:
a) L49: "There are 3 different types of TCKs, detailed below." -> "TCKs can include tests of 3 different types of specification requirements, detailed below."
b) For each of L50-51: "Type #: Tests that only apply when running" -> "Type #: Tests of specification requirements that are only applicable when running"
Maybe 'specified behaviors' instead of 'specification requirements'. Suggestions welcome. :)
Perhaps we could follow this with some concrete examples (e.g. CDI has requirements of all three types), but that risks adding confusion or having the example fall out of date.
2) L54-56 are then about how the TCKs containing these tests must be executable. For each of L54 and L56 a brief mention of the intended use will help clarify (i.e. L56 is to allow individual spec impls to certify and L54 is to allow platform/profile impls to certify.)
There may be other items too, e.g. specific mention that service releases of existing TCKs do not need to be updated to meet these requirements.