informed-decision/tests/fixtures/review-policy/policy.md
tegwick 98c8de078e Ask Flex Auth list, not read, for each overview row (INFD-WP-0004-T03)
The overview now requests the new list action and its rows carry only the
memo id, version, question, live approval status and the person's own
responses without notes. Opening a memo still asks read; every act asks
its own action. The fixture Flex Auth package admits list under a
re-derived pin. Not deployable until flex-auth answers INFD-IN-0008.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:53:31 +02:00

1.4 KiB

id name namespace version status package allow_ttl actions owner fixtures caring activation
informed-decision.fixture Synthetic review API contract fixture informed-decision:decision-memo v1 ready flexauth.informed_decision.fixture 60s
read
list
acknowledge
accept
return
discuss
decline
fixture-only
fixtures.json
profile enforce
caring-0.4.0-rc2 false
mode
local

Synthetic component fixture, never a production policy

Only the locally signed human-fixture and memo:memo-1 can exercise this test. No production approver, group, mandate or permission is established here. No presentation claim, view hash, acknowledgment or local outcome is input.

import rego.v1

decision := {"effect": "allow", "reason": "synthetic_review_fixture"} if {
  input.tenant == "tenant:platform"
  input.subject.id == "human-fixture"
  input.subject.type == "human"
  input.resource.system == "informed-decision"
  input.resource.type == "decision-memo"
  input.resource.id == "memo:memo-1"
  input.action in {"read", "list", "acknowledge", "accept", "return", "discuss", "decline"}
  input.context.approval_id == "fixture"
} else := {"effect": "deny", "reason": "fixture_scope_refused"} if {
  true
}
package flexauth.informed_decision.fixture_test
import rego.v1
import data.flexauth.informed_decision.fixture

test_unknown_request_denied if {
  fixture.decision.effect == "deny" with input as {}
}