Skip to content

Commit 5f82b84

Browse files
committed
feat(database-jobs): bake actor_id into job payload
Add jwt_public.current_user_id() to payload in add_job function body. All jobs automatically include actor_id for RLS context propagation. Upstream from constructive-io/constructive-db#761
1 parent 7d80d3c commit 5f82b84

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

  • packages/database-jobs/deploy/schemas/app_jobs/procedures

packages/database-jobs/deploy/schemas/app_jobs/procedures/add_job.sql

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ CREATE FUNCTION app_jobs.add_job (
1919
DECLARE
2020
v_job app_jobs.jobs;
2121
BEGIN
22+
-- Bake actor_id into payload
23+
payload := (coalesce(payload, '{}'::json)::jsonb || jsonb_build_object('actor_id', jwt_public.current_user_id()))::json;
24+
2225
IF job_key IS NOT NULL THEN
2326
-- Upsert job
2427
INSERT INTO app_jobs.jobs (

0 commit comments

Comments
 (0)