
It looks like you’re experiencing an issue where records appear to be shared to multiple teams but aren’t visible to users who belong to more than one team. That usually points to Dataverse security model nuances, not a literal “sharing bug.” When a user is part of multiple teams, access checks evaluate all security roles and team memberships, and sometimes inherited privileges don’t apply as expected if a user’s effective permissions don’t include the necessary Read/Write access on that table.
A few things to try:
Verify the user’s effective permissions using the Check Access Web API for each team context to ensure Read/Write privileges are truly granted.
Ensure the security roles assigned to each team actually include the required privileges on that table.
Consider using hierarchy or owner-based sharing instead of team-based sharing if your model is complex, as this often yields more predictable results in multi-team scenarios.