Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions application/single_app/functions_governance.py
Original file line number Diff line number Diff line change
Expand Up @@ -1228,8 +1228,9 @@ def ensure_action_type_access(
)

if _passes_policy(feature_policy, normalized_user_id, user_group_ids):
_set_request_cache_value(decision_key, True)
return
if not action_type_policies:
_set_request_cache_value(decision_key, True)
return

if any(_passes_policy(policy, normalized_user_id, user_group_ids) for policy in action_type_policies):
_set_request_cache_value(decision_key, True)
Expand Down
5 changes: 5 additions & 0 deletions docs/explanation/release_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,11 @@ Tracking: [#1489](https://github.com/microsoft/simplechat/issues/1489); implemen

#### Bug Fixes

* **Delegated Action-Type Policies Now Override Broad Action Access**
* Fixed a governance gap where an explicit delegated item policy for a personal, group, or global action type could still be bypassed by a broader feature-level allow.
* Action-type governance now treats explicit item policies as authoritative once they exist, so a targeted policy such as `personal_action_type = azure_maps` can block that action type even when the broader action feature remains enabled.
* This resolves cases where action types such as Azure Maps continued to appear in action creation flows after admins saved a delegated item policy intended to block them.
* (Ref: delegated item governance, action-type enforcement, `functions_governance.py`)
* **Admin Settings Consistency Across Workers**
* Removed worker-local admin settings snapshots so reloads read shared Redis settings, or Cosmos directly when Redis is disabled.
* Added conflict-checked writes and coordinated cache publication to prevent stale metadata updates, worker startup, and interrupted saves from restoring older settings.
Expand Down