Files
Lyu 610c472f49 feat(deploy): pin the insforge_pg_utils grant roles explicitly
insforge.policy_grant_role and insforge.extension_grant_role both already default
to 'project_admin' inside the extension (insforge_pg_utils.c:74-84, :98-103), so
behaviour is unchanged. Pinned explicitly because the default lives in a compiled
.so, invisible to a reader of this file, and a rebuild could shift permission
behaviour with no diff in any config repo.

extension_grant_role was declared nowhere and matters more than it looks: the hook
runs CREATE/DROP EXTENSION as the bootstrap superuser, a broader grant than the
policy one.

Both copies updated; deploy/zeabur/template.yml inlines this file as a YAML
template string.

Verified on ghcr.io/insforge/postgres:v15.13.4 that both report
source=configuration file with value project_admin, and that the preload list is
byte-identical to origin/main.

An earlier revision of this PR also preloaded pg_net. Dropped: cloud has had it
preloaded for seven months with pg_net.database_name unset, meaning async SQL HTTP
never worked there and nobody reported it — so there is no demand to serve, and
preloading costs a permanent background worker per instance.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 18:21:41 -07:00
..