One of the most useful software enineering things taught to me recently is "The only things tests ensure is that your code passes the tests."
Brought to you today by:
My C compiler's parser passes the tests, but the AST is completely wrong.
Because the tests were wrong.
I only found out because today I implemented a function to print the AST as a dot/graphviz graph.
Terminal nodes like "(" had children, which is impossible.
The tests and impl being wrong was kinda expected tbh.
social.samathy.space is one server in the network