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
50 lines
1.4 KiB
Markdown
50 lines
1.4 KiB
Markdown
---
|
|
id: informed-decision.fixture
|
|
name: Synthetic review API contract fixture
|
|
namespace: informed-decision:decision-memo
|
|
version: v1
|
|
status: ready
|
|
package: flexauth.informed_decision.fixture
|
|
allow_ttl: 60s
|
|
actions: [read, list, acknowledge, accept, return, discuss, decline]
|
|
owner: fixture-only
|
|
fixtures: [fixtures.json]
|
|
caring:
|
|
profile: caring-0.4.0-rc2
|
|
enforce: false
|
|
activation:
|
|
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.
|
|
|
|
```rego
|
|
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
|
|
}
|
|
```
|
|
|
|
```rego test
|
|
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 {}
|
|
}
|
|
```
|