Why a Postgres View Can Silently Bypass Row-Level SecurityQuerying a reporting view returned a project's real task counts to a user with zero membership in that project. Row-level security should have scoped that row out. It came back anyway, because the vieSep 24 · 9 min readuduakukpong.hashnode.dev
Row-Level Security for Multi-Tenant Postgres: USING vs WITH CHECK in PracticeThis piece isn't about turning RLS on. It's about what goes inside the policies once it is, and about proving they do what you think they do instead of just trusting the SQL. That distinction matters Sep 15 · 10 min readuduakukpong.hashnode.dev
Build a Postgres Audit Log Your Application Code Cannot BypassMost audit logs get written by application code. A service function calls the database, then calls a logging function right after, two separate steps, two separate places to remember. Forget the seconSep 13 · 11 min readuduakukpong.hashnode.dev
Stop Using a mounted Flag to Fix Theme Flash: Use useSyncExternalStore InsteadThe login page went blank in production. Not a broken layout, not a missing stylesheet. Blank: the whole subtree that the sidebar belonged to just disappeared from the DOM right after the page finisheSep 10 · 11 min readuduakukpong.hashnode.dev