The Bash and Awk scripts have too many awkward text handling issues, are not easily testable, and are not widely maintainable by the lab. Rewrite the project in a better language, likely Python.
Review this comment for a possible solution. #3 (comment)
@nwiltsie suggested using https://docs.github.com/en/webhooks/webhook-events-and-payloads#push and the github.event.commits.added / modified arrays. This would also resolve a significant portion of #2.