Governed asset registry slice with asset creation, representations, metadata, lifecycle transitions, policy authorization, fail-closed denial, audit events, and version records

This commit is contained in:
2026-05-06 00:35:30 +02:00
parent d7e38606d2
commit bf59087073
22 changed files with 1259 additions and 6 deletions

View File

@@ -77,3 +77,16 @@ class PolicyDecision:
}
)
@classmethod
def from_dict(cls, data: dict[str, Any]) -> "PolicyDecision":
return cls(
decision_id=data["decision_id"],
effect=PolicyEffect(data["effect"]),
subject_id=data["subject_id"],
action=data["action"],
resource=data["resource"],
reason=data.get("reason", ""),
obligations=dict(data.get("obligations", {})),
context=dict(data.get("context", {})),
decided_at=data["decided_at"],
)