A TypeScript server in a PHP shop, and who maintains it

A second language in the repository, and the question that matters more than the language.

the questions, asked before writing it:

  who can change this in six months?   two of three
  where does it build?                 the same
                                       pipeline
  how is it versioned?                 with the
                                       repository
  what happens if it breaks?           nothing. it is
                                       a development
                                       tool, not on
                                       any production
                                       path.

the last answer is what made it acceptable.

A second language is a maintenance decision rather than a technical one, and the mitigating factor is that this one is a development tool — a broken server costs somebody an afternoon and costs no customer anything. The protocol’s reference implementations are in TypeScript, which is the reason it is not PHP.