Exact-preimage CAS rule for established unsealed procedure review routes.
eligible
eligible(properties: dict[str, Any]) -> bool
Only consistent pending drafts or unsealed legacy terminals qualify.
Source code in src/symfonic/memory/backends/procedure_compat_review_transition.py
| def eligible(properties: dict[str, Any]) -> bool:
"""Only consistent pending drafts or unsealed legacy terminals qualify."""
if is_retracted(properties) or any(
key in properties for key in (
"procedure_review_authority", "procedure_review_actor",
"procedure_review_revision",
)
):
return False
nested = properties.get("record_metadata")
if isinstance(nested, dict) and any(key in nested for key in ("status", "active")):
return False
status, active = properties.get("status"), properties.get("active")
if type(active) is not bool:
return False
if is_pending(properties):
return status == "draft" and active is False
return (
(status == "approved" and active is True)
or (status == "rejected" and active is False)
)
|