Acknowledge a branch's review
Stores the current review as acknowledged: its hash becomes the branch's review_acknowledged_hash, and its items stop being new. hash must be the current review's.
Authorization
bearer In: header
Path Parameters
Database id
uuidBranch id
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
POST …/review/acknowledge.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/databases/497f6eca-6276-4993-bfeb-53cbbbba6f08/branches/497f6eca-6276-4993-bfeb-53cbbbba6f08/review/acknowledge" \ -H "Content-Type: application/json" \ -d '{ "hash": "string" }'{ "acknowledged_hash": "string", "hash": "string", "items": [ { "database": "string", "digest": "string", "function": "string", "identity": "string", "key": "string", "kind": "function", "name": "string", "new": true, "opaque_body": true, "owner": "string", "reasons": [ { "kind": "security_definer", "via": "string" } ], "schema": "string" } ]}Review the code that can run in someone else's session GET
The worker scans every live database of the branch, as `cloud_admin`, for code owned by a non-Admin role that can run in someone else's session (an Admin's included): triggers whose function or table such a role owns, rules on its relations, and its functions that are SECURITY DEFINER or reached from a policy, a default or generated column, a check, an index, a view, a trigger, a rule, a range type or another such function. Each item has a stable `key`, its `reasons`, and `new` when a list was acknowledged that didn't hold it. `hash` is what protecting (`review_hash`), acknowledging and fixing confirm. Needs the branch's compute running.
Fix one item of a branch's review POST
The worker scans the branch again, checks `hash` against it, and runs one fix in the item's database in its own transaction with `lock_timeout` 5 s: `reassign` gives the item's function (a trigger's function; a rule's relation) to the owner (`ALTER … OWNER TO`), after which the Admin answers for its code and a SECURITY DEFINER function runs as the owner; `drop` drops the function, trigger or rule `RESTRICT` (never cascading). Answers with the SQL it ran and the review after it.