Files
qqq-all/infra/postgres/05-runtime-demo-permissions.sql
james.maes 4c6794065c feat(#8): complete runtime demos and core/full smoke gates (#19)
* ci(smoke): add core CI and prepare full conformance harness (#8)

* fix(smoke): query SFTP qbit and isolate Compose ports (#8)

* fix(smoke): require order-correlated Artemis trace and full CI job (#8)

* fix(smoke): exercise private full Compose services over HTTP (#8)

* fix(smoke): require explicit standalone full search endpoint (#8)

* fix(smoke): use Maven final jar in core CI (#8)

* test(smoke): verify Rabbit completion through ESB API

Grant full-profile admin ESB access and keep the exact process-run assertion. Part of #8.

* feat(esb): expose service observability in core profile

* feat(#21): complete runtime demos and backend modules (#22)

* feat(GH-21): complete runtime backend and JavaScript demos

* fix(GH-21): follow listener address for the API catalog

* ci(#8): pin settings-safe QQQ orb 0.6.8
2026-09-30 11:04:41 -05:00

19 lines
975 B
SQL

-- Read-only API catalog, transient notes, and the fixed JavaScript calculation.
INSERT INTO permission (name, object_type, object_label)
VALUES
('apiCatalog.read', 'table', 'API Catalog'),
('demoNote.read', 'table', 'Demo Note (Transient)'),
('demoNote.insert', 'table', 'Demo Note (Transient)'),
('demoNote.edit', 'table', 'Demo Note (Transient)'),
('demoNote.delete', 'table', 'Demo Note (Transient)'),
('calculateOrderTotal.hasAccess', 'process', 'Calculate Order Total (JavaScript)')
ON CONFLICT (name) DO NOTHING;
INSERT INTO role_permission_int (role_id, permission_id)
SELECT role.id, permission.id
FROM role CROSS JOIN permission
WHERE permission.name IN ('apiCatalog.read', 'demoNote.read', 'demoNote.insert',
'demoNote.edit', 'demoNote.delete', 'calculateOrderTotal.hasAccess')
AND (role.name = 'admin' OR (role.name = 'viewer' AND permission.name IN ('apiCatalog.read', 'demoNote.read')))
ON CONFLICT (role_id, permission_id) DO NOTHING;