## Bug description

I have lost edit permissions to a [dashboard I created](https://app.posthog.com/dashboard/28987), despite still being listed as the owner of the dashboard

## Expected behavior

I should still be able to edit the dashboard

## How to reproduce

I noticed this problem after adding a new insight, but this doesn't appear to be the cause of the issue. I've duplicated the dashboard to restore access and adding a new insight didn't appear to cause the issue 

## Environment

- [x] PostHog Cloud
- [ ] self-hosted PostHog (ClickHouse-based), version/commit: _please provide_
- [ ] self-hosted PostHog (Postgres-based, legacy), version/commit: _please provide_

## Additional context

#### *Thank you* for your bug report – we love squashing them!

posthog/api/dashboard.py
user = cast(User, self.context["request"].user)
        can_user_restrict = instance.can_user_restrict(user.id)
        if "restriction_level" in validated_data and not can_user_restrict:
            raise exceptions.PermissionDenied(
                "Only the dashboard owner and project admins have the restriction rights required to change the dashboard's restriction level."
            )
        validated_data.pop("use_template", None)  
        if validated_data.get("is_shared") and not instance.share_token:
            instance.share_token = secrets.token_urlsafe(22)
        instance = super().update(instance, validated_data)
        if "request" in self.context:
            report_user_action(user, "dashboard updated", instance.get_analytics_metadata())
        return instance
    def add_dive_source_item(self, items: QuerySet, dive_source_id: int):
        item_as_list = list(i for i in items if i.id == dive_source_id)
        if not item_as_list:
            item_as_list = [Insight.objects.get(pk=dive_source_id)]
        others = list(i for i in items if i.id != dive_source_id)
        return item_as_list + others
    def get_items(self, dashboard: Dashboard):