We worked on this during the offsite, but there are a couple of things that are still needed to productionize it:
1. move it to ee & release for all paid customers
2. product design: currently we just prepend the dashboardItem we came from, but dashboards can have layouts, which would get messed up if we did it this way. It would be great to be able to see where we came from (e.g. to know when the spike in the graph happened exactly that made me click on the dive link, but I don't know how to design it)
3. Code changes based on ^
4. Blog post (including a diving hedgehog @lottiecoxon) - I propose with the different user stories we used in our demo

cc @samwinslow @jamesefhawkins anything else I'm missing?

posthog/api/insight.py
FunnelStepsResultsSerializer,
    TrendResultsSerializer,
    TrendSerializer,
)
from posthog.api.routing import StructuredViewSetMixin
from posthog.api.shared import UserBasicSerializer
from posthog.api.tagged_item import TaggedItemSerializerMixin, TaggedItemViewSetMixin
from posthog.api.utils import format_paginated_url
from posthog.constants import (
    BREAKDOWN_VALUES_LIMIT,
    FROM_DASHBOARD,
    INSIGHT,
    INSIGHT_FUNNELS,
    INSIGHT_PATHS,
    INSIGHT_STICKINESS,
    PATHS_INCLUDE_EVENT_TYPES,
    TRENDS_STICKINESS,
    FunnelVizType,
)
from posthog.decorators import cached_function
from posthog.helpers.multi_property_breakdown import protect_old_clients_from_multi_property_default
from posthog.models import Filter, Insight, Team
from posthog.models.dashboard import Dashboard
from posthog.models.filters import RetentionFilter
from posthog.models.filters.path_filter import PathFilter
from posthog.models.filters.stickiness_filter import StickinessFilter
from posthog.permissions import ProjectMembershipNecessaryPermissions, TeamMemberAccessPermission
from posthog.tasks.update_cache import update_dashboard_item_cache
from posthog.utils import get_safe_cache, relative_date_parse, should_refresh, str_to_bool
class InsightBasicSerializer(serializers.ModelSerializer):