La liste sans ustensile ne veut pas dire tous les ustensilesCrewAI propose de fermer une allowlist explicitement videAn empty permitted list does not mean the whole cupboardCrewAI proposes deny-all for an explicitly empty allowlist
Le chef donne une liste qui ne permet aucun ustensile, mais le commis la traite comme s'il n'avait reçu aucune restriction. Une proposition ouverte corrige cette inversion.Une PR ouverte rapporte que StaticToolFilter traitait allowed_tool_names=[] comme None via truthiness, exposant tous les outils. Elle propose de distinguer ces deux états.The chef supplies a list permitting no utensils, but the cook treats it like no restriction was supplied. An open proposal addresses that inversion.The reported StaticToolFilter behavior conflates an explicitly empty allowed-tool set with an omitted one. The proposed change preserves the meaning of a supplied restriction rather than inferring unrestricted access from its emptiness.
La brigadeRôles et orchestrationThe brigadeRoles and orchestration
Lire si la liste manque ou si elle ne permet rienRéponseCheck whether the list is missing or deliberately permits nothingResponse
La règle proposée laisse la différence visible : pas de liste et liste vide ne demandent pas le même geste. Une interdiction reste prioritaire même lorsqu'un ustensile figure ailleurs comme permis.None reste l'absence de restriction ; [] signifie aucun outil autorisé. La proposition conserve la priorité du blocage et annonce cinq tests unitaires pour les états concernés.A missing list and a provided list with no entries must lead to different decisions. The proposed rule also keeps a refusal stronger than a conflicting allowance.Preserve unset, empty and populated states explicitly, then apply the existing blocking precedence. Collection truthiness cannot represent that authorization contract.
La réparation reste proposée pour ce filtre précisÉtat actuelThe repair remains an unverified proposal for this filterCurrent state
La proposition n'est pas fusionnée ni publiée, et nous n'avons pas refait les cinq essais annoncés. Ce récit concerne ce filtre précis, pas toutes les règles de la maison.PR ouverte et tests annoncés non reproduits ; aucun correctif publié n'est établi. La portée reste StaticToolFilter, sans conclusion sur l'ensemble des politiques CrewAI. Guidance research_only.The proposal is unmerged, with no published repair or independent replay of its five reported tests. Its scope is this filter, not every rule in the house.Retain the reported status and bounded component scope. The evidence does not establish a deployed fix, exploitation or failure of all CrewAI authorization paths.
