различных класификаций систем типов много, каждая из них ставит одни системы типов в сильную позицию, а другие в слабую
А все дело в том, что явная типизация будет более сильной чем неявная, статическая более сильная чем динамическая, soundness более сильная чем completeness, и т.д.
In 1974, Liskov and S. Zilles defined a strongly-typed language as one in which "whenever an object is passed from a calling function to a called function, its type must be compatible with the type declared in the called function."[3] In 1977, K. Jackson wrote, "In a strongly typed language each data area will have a distinct type and each process will state its communication requirements in terms of these types."
Languages are often colloquially referred to as strongly typed or weakly typed. In fact, there is no universally accepted definition of what these terms mean. In general, there are more precise terms to represent the differences between type systems that lead people to call them "strong" or "weak".
А еще, есть два типа людей - те, которые думают, что в TypeScript/Java/C# сильная система типов, и те, кто понимает, что они в разы слабее чем в ML языках.
Polling publisher наиболее распространенное решение, по-моему, надежное, и более простое по сравнению Transaction log tailing (быть может потому, что я видел только реализации по 1 сценарию).
Будет ли медленным Polling publisher? Смотря, что для вас медленно, в принципе стандартные потери на СУБД, пересылку по-сети и прочее.
Насчет публикации прямо из СУБД, не думаю, что это хорошее решение, если у вас нагруженная система, СУБД всегда узкое место, не нужно заставлять ее делать что-то еще, кроме того что она и так делает хорошо.
Насчет удаления из outbox, то мне кажется в варианте, когда вы забираете данные из журнала, нет смысла создавать outbox. Забирайте прямо из основной талицы, ориентирусь на какой-либо параметр: id, время обновления. Но нужно смотреть применимость в конкретной ситуации. Не знаю как работать с журналом, но думаю там есть встроенные идентификаторы транзакций, какой-нибудь GTID, и можно ориентироваться на него.