SQLite 3.37.0, scheduled for release on 2021-10-20, will introduce a new feature: strict table mode. It will make it possible to create tables for which column types will be strictly enforced, bar a bit of type coercion:
sqlite> CREATE TABLE test(x INTEGER) STRICT; sqlite> INSERT INTO foo VALUES('123'); sqlite> INSERT INTO foo VALUES('text'); Error: cannot store TEXT value in INT column foo.x
Since it resolves the long-standing problem with SQLite's types being mostly suggestions, it's something worth exploring. I imagine we could include it as an experimental option in installer before this feature becomes ubiquitous on every thinkable system configuration.