package proofedmesh.sinks.expense_db_app_test import data.proofedmesh.sinks.expense_db_app as sink import rego.v1 good_payload := { "schema": {"name": "sink.db.expense", "version": "1.0.0"}, "workflow_id": "WF-2026-0001", } good_approval := {"allowed_sinks": ["sink:expense-db-app"]} test_allow_posting if { sink.allow with input as { "sink_id": "sink:expense-db-app", "agent_id": "agent-sink-posting", "action": "expense.post", "payload": good_payload, "approval": good_approval, } } test_deny_wrong_agent if { not sink.allow with input as { "sink_id": "sink:expense-db-app", "agent_id": "agent-travel", "action": "expense.post", "payload": good_payload, "approval": good_approval, } } test_deny_wrong_action if { not sink.allow with input as { "sink_id": "sink:expense-db-app", "agent_id": "agent-sink-posting", "action": "expense.update", "payload": good_payload, "approval": good_approval, } } test_deny_wrong_schema if { bad := {"schema": {"name": "sink.sap.expense", "version": "1.0.0"}} not sink.allow with input as { "sink_id": "sink:expense-db-app", "agent_id": "agent-sink-posting", "action": "expense.post", "payload": bad, "approval": good_approval, } } test_deny_sink_not_in_approval if { not sink.allow with input as { "sink_id": "sink:expense-db-app", "agent_id": "agent-sink-posting", "action": "expense.post", "payload": good_payload, "approval": {"allowed_sinks": ["sink:sap-s4hana-prod"]}, } }