Skip to content

Sprint - September 7 to September 18 #92782

Closed

Description

@dustinbyrne

Sprint Planning

List of incidents + any action items that haven't been scheduled yet

Team sprint planning

For your team sprint planning copy this template into a comment below for each team.

# Team ___

**Support hero:** ___
**Off during the sprint:** ___

## Quarter goals

1. Quarter goals, status (red/yellow/green) and action points if yellow/red

## Retro

### Tasks

<!-- Grab the high and low priority items from last time and add whether that item was completed or not -->

## Plan

### High priority

-

### Low priority / side quests

-

### Are any other teams impacted by this plan? If so, tag them here

-

Activity

  1. changed the title [-]Sprint - September7 to September 18[/-] [+]Sprint - September 7 to September 18[/+] on Sep 1, 2026
  2. pinned this issue on Sep 1, 2026
  3. dustinbyrne commented on Sep 1, 2026

    @dustinbyrne
    ContributorAuthor

    Team Client Libraries

    Support hero: @marandaneto then @ioannisj
    OOO: 2 days @turnipdabeets

    Quarter goals

    Q3 2026 objectives

    • 🟡 Goal 1: SDK harness and specs (@dustinbyrne)
      • 🟡 Expand the SDK harness coverage across SDKs
      • 🟢 Define clear specs for shared SDK behavior (incl. SDK parity table)
      • 🟡 Use the harness in CI so SDK changes stay on contract
      • 🟡 Make it easier for contributors and employees to validate changes before release
      • 🔴 Publish shared SDK skills customers can install, using the SDK specs as source of truth
      • 🟢 Explore spec-driven "software factory" workflow for agent-assisted updates across SDKs
      • 🟢 Experiment with a GitHub Action that triages issues and opens PRs for straightforward fixes
    • 🟢 Goal 2: Mobile push notifications (@ioannisj)
      • 🟢 Android and iOS support
      • 🟢 Flutter and React Native support by reusing the native SDK implementations
    • 🟡 Goal 3: SDK coverage and modernization (@marandaneto)
      • 🟢 KMP SDK
      • ⚪ Flutter desktop SDK
        • a customer wanted to contribute/donate here
      • 🔴 Session replay for macOS
      • 🟢 React Native Expo Router touch events
      • 🟢 Flutter SDK init bootstrapping for feature flags
      • ⚪ Framework-level SDK experiences and docs native to customers' frameworks
      • 🟢 CocoaPods sunset migration plan
      • ⚪ iOS SDK next major version
      • 🟢 Async version of the Python SDK
      • 🟡 JS SDK v2, including the versioned script loader
      • 🟡 Port the new ingestion endpoint across SDKs using the Rust SDK as an example
        • 🟡 Rust SDK v1 GA
      • 🟢 Triage and fix real and stale issues across SDKs during Support Hero rotation
    • 🟡 Goal 4: Tracing support (@turnipdabeets)
      • 🟢 Define the SDK tracing approach for first-class JS and Python support
      • 🟡 Add tracing support to the JS and Python SDKs
      • ⚪ Align tracing behavior with PostHog ingestion and analysis workflows
      • ⚪ Document how customers should configure and use tracing from PostHog SDKs
    • 🟡 Goal 5: SDK observability research (@ioannisj)
      • 🟡 Whether we can safely instrument SDK behavior affecting reliability and customer experience
      • ⚪ Visibility into SDK errors, delivery failures, and performance issues
      • 🟡 How SDK observability could improve support and debugging workflows
      • 🟡 How feasible learnings feed back into SDK quality, release, and support processes

    Retro

    Details

    High priority

    • 🟡 Add tracing support to the JS SDKs @turnipdabeets
      • 🟡posthog-node MVP: spans, W3C trace context propagation, OTLP export
    • 🟢 @posthog/browser mvp @dustinbyrne
      • Add a bounded analytics queue and batching
      • Make flush() drain queued and in-flight events.
      • Cover queue limits, retries, consent, and disposal.
      • Maintain small bundle size: split transport / compression / persistence
    • 🟢 async version of the python sdk @marandaneto
      • address comments, review and release
    • 🟡 Rust SDK v1 @marandaneto
      • refactor code + capture v1 + capture ai GA
    • 🟢 Review, fix and release all pending PRs from the community + bots (posthog bot etc) @marandaneto
      • the list keeps growing and there are way too many now
    • 🟢 iOS masking drift on fast scrolling @ioannisj
    • 🟢 React Native Expo Router touch events @ioannisj
    • 🟡 Can we safely instrument SDK internals? @ioannisj

    Low priority / side quests

    • 🟡 modernize JS monorepo stack @marandaneto
      • 🟢 oxfmt
      • 🟢 oxlint
      • 🟢 lightning css
      • 🟡 vitest
      • 🟢 prek
    • 🟡 feature flags local eval comparison/fixes @marandaneto
      • done but waiting for feat flags approval
    • 🟢 feature flag local eval elixir @marandaneto
    • 🟢 spo dupe removal and refactoring for supported languages @marandaneto
      • ~6 languages
    • 🟢 enabled gzip for feature flags requests @marandaneto
    • 🟢 Flutter platform view mask bounds not clipping out of bounds @turnipdabeets

    Plan

    High priority

    • 🟢 expand SDK harness implementations to missing SDKs @dustinbyrne
    • 🟢 experiment with expanding SDK harness to include sdk-specs acceptance tests @dustinbyrne
    • SDK observability @marandaneto @ioannisj
      • review/approve and merge RFC
      • get a draft SDK PR with PoC
      • check with ingestion/billing about those events
    • Add tracing support to the JS SDKs @turnipdabeets
      • posthog-node manual tracing
      • posthog-python manual tracing
    • iOS SDK next major version @ioannisj
    • Adding $recording_status to all sdks that have session replay @ioannisj

    Low priority / side quests

    • 🟢 @posthog/browser core bundle byte size elimination @dustinbyrne
    • 🔴 @posthog/browser runs shared extensions @dustinbyrne
      • flags
      • logs
      • surveys
      • autocapture
    • modernize JS monorepo stack @marandaneto
      • CI is slow, lots of jobs, we need faster tooling and improve CI time
    • $push_notification_opened Flutter sent on code and warm starts @turnipdabeets
      • iOS (missing cold)
      • Android (missing cold and warm)

    Are any other teams impacted by this plan? If so, tag them here

    🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started

  4. tomasfarias commented on Sep 2, 2026

    @tomasfarias
    Contributor

    Team Batch Exports

    Support hero: @tomasfarias / @rossgray

    Quarter goals

    • Objective 1: Make HogQL-backed data exportable
    • Objective 2: Agent-driven batch exports
    • Objective 3: The pipeline must grow

    Retro

    Details

    High priority

    ✅ HogQL batch exports release
    ✅ Documentation / Changelog entry for closed beta announcement
    ✅ Where would docs live? Under a new "File download" section in Destinations
    ✅ Agent skill (maybe current skill already works)
    ✅ Query size estimation
    - Start off with a naive count() endpoint (With execution duration and potentially query size limits).
    - When limits exceeded, just report "Warning: TOO MANY ROWS"
    - Eventually, monitor load, and try to cache results of count

    🟡 Wrap up integration work
    ✅ Redshift integration
    ✅ Backend PRs are (almost) ready
    ✅ Frontend DONE
    - Redshift now needs cleanup/migration
    🟡 PostgreSQL/S3 integration
    - PostgreSQL migration done, clean up pending
    - S3 migration done, clean up in progress
    🟡 Snowflake integration
    🟡 Data migration
    - Clean up

    ✅=finished 🟡=in progress 🔴=won't finish ⚪=not started

    High priority

    • HogQL batch exports

      • Internal testing required: Let's run a bunch of these.
        • Roughly in the millions of rows.
      • Load testing: Can we hook into any existing exports?
        • Power SQL editor downloads with batch exports.
      • Support for query placeholders.
        • Main blocker: Version key, merge key, data interval.
      • HogQL modifiers
    • Deprecation of $set/$set_once

      • Do a quick test on dev to make sure everything works (it should!)!
    • Integration clean up

      • Redshift: migrate and clean up.
      • PostgreSQL: clean up.
      • Snowflake: clean up.
      • S3: clean up.

    Low priority

    • Improve SLA alerts

      • Too noisy when continuous runs keep going over
    • UX/UI for hogql batch exports

      • We can work on this during the closed beta, so moved to low-priority
      • File download batch exports in the Exports view
      • Combine file download export and SQL editor download (check with team-data-tools)
        • File download batch exports are billed differently from SQL editor downloads
        • This may be a surprise for users, we need to think how to communicate.
      • Scheduled batch exports link to SQL editor for query (or saved mat view)
    • Make integrations easier to use for agents

      • Redirect to integration page when creating a batch export with an agent.
    • Resource based allocator + auto-scaler for batch export workers

  5. langesven commented on Sep 2, 2026

    @langesven
    Contributor

    Team Cloud Platform

    Quarter Goals

    Retro

    Details

    High Prio

    • ✅ Deployments - onboarding skills for new services @Z3r0Sum
    • ✅ Deployments - CI check parity on charts with what we have today @Z3r0Sum
    • 🟡 Deployments - Prepare OCI artifacts of various services, so we just migrate away @Z3r0Sum
    • 🟡 Burrow @k33lan
      • ✅ UDP or TS Peer Relay functionally working in dev (the fast route)
      • 🟡 Better tests (more scenarios, throughput, latency...)
      • ⚪ Isolated dev infra
    • 🟡 Incident.io Investigations trail prep @k33lan
      • ✅ Spin up EU/US connectors
      • ✅ Connect data sources (PostHog MCP, Grafana, Argo, K8s?)
      • ✅ Draft PoC plan + call
      • 🟡 Generate Incidentio skills to support investigations
    • ✅ Sherlock - MCP supports k8s + dedicated PostHog auth route
    • ✅ HostHog - successfully build+deploy+run a Docker build end2end @langesven
    • ✅ HostHog - add some metrics/observability into it @langesven

    Low Prio / Side Quests

    • ⚪ Deployments - explore analysis templates more and test with our synthetic hello-kargo service @Z3r0Sum
    • ✅ Deployments - Deployment Events Milestone 1 complete - slack notifications through PostHog @Z3r0Sum
    • ⚪ Refactor Q3 ‘Agentify’ issue tracker @k33lan
    • 🟡 capture-logs 100% via posthog-app @langesven
    • 🟡 Migrate more Postgres users away from rds_superuser permissions @langesven (aurora_user_management v3 rollout)
    • 🟡 Deployments - OSS contributions upstream: @Z3r0Sum -> issue deliberation around implementation details for the UI changes. I through up both a backend/frontend set of PRs that contained the prototype.
    • ⚪ Rollout docker terraform provider for docker hub admin @k33lan
    • ⚪ Rollout docker hub OIDC for image pushes instead of tokens @k33lan

    ✅=finished 🟡=in progress 🔴=won't finish ⚪=not started

    Plan

    High Prio

    • Burrow PoC - Dedicated dev infra @k33lan
    • Investigations Trial - Support/Optimise/Document @k33lan
    • Deployments - explore analysis templates more and test with our synthetic service @Z3r0Sum
    • Deployments - migrations to our new system @Z3r0Sum
    • HostHog - get postgres db integration working @langesven
    • HostHog - establish proper path for agentic access to e.g. hosted APIs/MCPs @langesven

    Low Prio

    • Run Vmgather to get diagnostics for VM support @k33lan
    • Refactor Q3 ‘Agentify’ issue tracker @k33lan
    • Deployments - Deployment Events Milestone 2 - incident io integration @Z3r0Sum
    • Get more out of pganalyze, easier setup, feed it more data, etc @langesven

    side quest

    • Rollout docker terraform provider for docker hub admin @k33lan
    • Rollout docker hub OIDC for image pushes instead of tokens @k33lan
    • Deployments - OSS contributions upstream: @Z3r0Sum -> issue deliberation around implementation details for the UI changes. I through up both a backend/frontend set of PRs that contained the prototype.
    • Upgrade Argo CD and Kargo @Z3r0Sum
    • Downgrade more DB users @langesven
  6. Daesgar commented on Sep 2, 2026

    @Daesgar
    Contributor

    Team Cloud Foundations

    Quarter Goals

    Retro

    Details

    High Prio

    • 🟡 Vendor negotations @MichaelKutsch-ph @sinthetix
    • networking:
    • ✅ NLB + EIP PoC in dev @MichaelKutsch-ph - this needs some dedicated time to plan properly and to take a deep look at side-effects like header-forwarding, timeout settings, DNS setup and general feasibility.
    • 🟡 vendors in PostHog data warehouse @sinthetix
    • 🟡 cost granularity improvements @sinthetix

    Low Prio

    side quest

    • ⚪ trying a local AWS proxy based on aws-sigv4-proxy as defense in depth version for letting local agents call aws commands @MichaelKutsch-ph

    side quest

    ✅=finished 🟡=in progress 🔴=won't finish ⚪=not started

    Plan

    High Prio

    Low Prio

    side quest

    • upgrade EKS to 1.36 on dev and then take it to prod @danielxnj
  7. rafaeelaudibert commented on Sep 2, 2026

    @rafaeelaudibert
    Member

    Team Growth

    Support hero: @MattBro
    Off during the sprint:

    • @minekansu in SF 7th-11th onboarding RevOps team member
    • @fercgomes/@MattBro off in the 7th

    Quarter goals

    1. Redesign authentication and onboarding flows 🟠 (@fercgomes)
    2. Measure success of the AI positioning at the company level 🟡 (@rafaeelaudibert, @minekansu)
    3. Streamlined data layer for the RevOps flow 🟡 (@MattBro)
    Details ⚪ = Not Started 🟡 = In Progress and On-Track 🟤 = In Progress and Off-Track 🟠 = Completed in essence, going the extra mile 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned

    Plan

    High priority

    • Figuring out how we make people actually pay for self-driving after the 3 free PRs @rafaeelaudibert
    • Monitor the new sidebar campaigns @rafaeelaudibert
    • Improvements for AI-pilled calculation
    • Agree on interface to feed lead gateway @MattBro
    • Evaluate whether startup/YC plans are worth it @minekansu
    • Handoff SalesOps things over to Erika @minekansu
    • Ship interactive cloud runs for the wizard @fercgomes

    Low Priority / side quests

    • Add PostHog Desktop/Slack/Self-Driving to the sidebar ads rotation @rafaeelaudibert
    • Consider building the embedding layer for AI chats/event properties @rafaeelaudibert
    • POC on how we could cross-sell based on wizard data @MattBro
    • Keep building prinbox.dev multianalytics hydra @fercgomes

    Retro

    Details

    Low priority / side quests

    What else did we do?

  8. mariusandra commented on Sep 2, 2026

    @mariusandra
    Collaborator

    Team Data Fools

    Off during the sprint:

    Quarter goals

    1. Make notebooks the default way to analyze data (Sinan)
      🟡 Python notebooks for customers
      🟢 Polished markdown-first notebook UX
      🟢 Better integration with HogQL, DuckDB, external DBs, and visualizations
      🟢 AI agents can create/edit notebooks directly (great MCP support)
      ⚪ Publicly shareable notebooks

    2. Define and level up HogQL as a query engine (George)
      ⚪ HogQL roadmap with owners and milestones (rust wen?)
      🟡 Typed pre-execution errors
      🟡 Dry-run and cost estimation for agents
      🟢 First optimization passes using the improved type system
      🟡 Improved HogQL / query observability

    3. Make BI, SQL, and visualizations feel mature and reusable (Marius)
      🟡 Improved charting / visualization UX
      🟡 Work with Desktop to standardize PostHog visualization components
      🟢 Support more databases as first-class citizens (MySQL, Snowflake, BigQuery, etc)
      ⚪ Row drilldown from query results (AI-powered "next steps"?)
      🟡 SQL editor papercut cleanup
      🟡 Variables: multiselect, query-backed, and time-based variables

    Retro

    • solid sprint. performance optimizations, including for database.py @georgemunyoro
    • Notebooks are ready to be released. Polish, variables, pricing done. Working through an actual release @sinan-ku
    • Got notebook widgets ready and (almost?) launched internally. Loads of new charting/viz options now. @mariusandra
    • mostly out, one PR about MCP + python @annaszell

    Tasks

    Plan

    High priority

    Low priority / side quests

    • can we move things off hogql and do them before the database @georgemunyoro

    Are any other teams impacted by this plan? If so, tag them here

  9. meikelmosby commented on Sep 2, 2026

    @meikelmosby
    Collaborator

    Team Workflows

    Time Off

    Support Hero

    Quarter goals - Q3 2026 objectives

    Details
    • 🟡 Become a 2030 Workflows Product (@mayteio)
      • 🟡 Fully AI native & agentic workflow product
        • ✅ Chat interface for rapid iteration
        • ⚪ Move to read-only UI for workflows / email templates / messaging
      • ⚪ Removal of hefty existing UI if new experience & user testing is superior
      • ✅ Revisions
      • 🟡 Reshape APIs to be agentic-friendly for rapid turnaround
    • 🟡 Fit into self-driving products (@dmarchuk)
      • 🟡 Get our data right so 'self-driving' can first suggest changes
      • 🟡 Integrate with 'self-driving' to propose the change (using revisions and APIs)
      • ⚪ Test revisions of actions against each other for improvements (still human in the loop)
      • ⚪ Self-driving applying the outcomes of the A/B tests
    • 🟡 Reliability & Trust (@meikelmosby)
      • ✅ Harden our systems to never drop data
      • ✅ Finalise the re-run system so we can replay failed invocations
      • ✅ Full visibility into every messaging channel
    • 🟡 Nail Messaging (@dmarchuk and @meikelmosby)
      • 🟡 Behavioural cohorts (no backfilling)
      • 🟡 Push notifications
      • ⚪ A/B testing
      • ✅ Email events
      • ✅ Messaging metrics
      • ✅ Email with multiple links / more detailed metrics

    ✅=finished, 🟡=in progress, 🔴=won't finish, ⚪=not started

    Retro

    Details

    @dmarchuk

    • fix conversation calculation
    • Finalized the refactor of internal events
    • ISP reputation visibility
    • Custom SMTP (RFC) --> start building on it (?)
    • build a self improving loop (v0)

    @mayteio

    • Slack trigger to AI task if carry-over for team 2
    • Loops integration in posthog desktop for team 2
    • Image management system for email templates (mcp first)
    • Send test emails from workflows

    Stretch

    • Attempt to isolate the workflows product to improve the CI story
    • Email sender config UX improvements
    • Experiment for PHAI being the default view when creating a new workflow or email template
    • reusable action templates / canonical settings

    @meikelmosby

    high prio:

    • workflow email tiers for domain warm-up & to protect SES reputation

      • implement tier calculation and backfill for all teams
      • collect metrics about throttling & caps
      • notifications after rollout for demotion and promotion of tiers
      • send email about this change to all customers
      • verify collected metrics & roll-out to everyone
    • automatic shutdown of harmful email steps within workflows

      • hourly calculation of harmful workflows against bounce & complaint rates
      • shutdown of workflows
      • notifications at warning level with grace period & then automatic shutdown of harmful workflows
      • rollout to everyone
    • DLQ for cdp & workflows

    • Smokescreen canary for cdp & workflows

    • realtime supported cohorts

      • trigger type
      • wait until
      • for all actions
      • batch workflows
    • lifting broadcasts to 1M for team2 rest 500k

    low prio:

    • separate transactional and marketing email queues
    • add filter types for workflows (trigger type, automation/messaging, etc)
    • update sparkline to include started workflows
    • Alerting per Workflow / destination (in-app notif, email, slack)
    • A/B Testing for self driving (RFC, MVP)

    @abheek9

    • Finding and recruiting first push users
    • Send August workflows email update
    • Docs refresh, add a few email guides, follow up from customer calls last week

    This Sprint

    @dmarchuk

    • build a self improving loop (v0)
    • create channel for push-feedback to get traction
    • experiment for growth: separate out broadcasts as its own thing, ai first & great ux

    @mayteio

    • rollout of AI stuff to GA or have a plan for it

      • park a workflow until a AI task is completed (wait until)
      • similar to destinations being triggered the last 7d something like that for workflows
      • Grafana
      • docs
      • alerts
      • FLIP THE FLAG
    • Experiment for PHAI being the default view when creating a new workflow or email template

    • Attempt to isolate the workflows product to improve the CI story

    AI tasks improvements

    • Cannot blast-radius from slack or GitHub triggers
    • Service user owner of tasks to prevent personal billing

    Lower priority

    • Email sender config UX improvements
    • reusable action templates / canonical settings (RFC)

    @meikelmosby

    • roll out email tier for everyone

    • roll out automatic shutdown of harmful email steps in workflows to everyone

    • move all legacy plugin transforms to hog

    • find sustainable solution for blast radius query constantly OOMing

    • realtime supported cohorts

      • trigger type
      • wait until
      • for all actions
      • batch workflows
    • managed IP pools for email tiers

    • growth work

    @abheek9

    • growth growth growth with sales
    • growth growth growth with onboarding
    • docs & stuff
  10. frankh commented on Sep 2, 2026

    @frankh
    Contributor

    Team APM (formerly Team Logs)

    Support hero:

    Quarter goals (ends September 30th)

    Details APM in GA - Ship Metrics + Tracing and have paying customers - All 3 should feel like complete products, not obvious missing basic features that competitors have Product autonomy - Headless usage is a (or the?) typical way to use the product (e.g. a significant number of customers use MCP more than UI) - Work on MCP visibility so we can track headless usage - Build a (proactive?) Agent SRE - Expand signals - Anomalies - Spikes - Rate limits - Error logs ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned

    Retro

    Details

    High priority

    Low priority / side quests

    Plan

    High priority

    Low priority / side quests

    • more chart customization / grafana parity @frankh
    • optimise metrics queries @frankh
      • why overview page lags
      • much faster attribute filtering
    Details ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned
  11. orian commented on Sep 2, 2026

    @orian
    Contributor

    Team ClickHouse

    AKA Team Read Fewer Bytes Please

    Quarter Goals

    🧬 Cell-based architecture @rorylshanks
    📦 JSON datatype in the app @rorylshanks
    🔐 ClickHouse is up to date and secure @tpgilmore
    🚚 ClickHouse migration system @orian
    🗑️ Data lifecycle management @orian
    🤖 Self-driving operations @bciaraldi

    Retro

    Details
    • Backfill team 2 data, setup ingestion on test cluster for new schema @rorylshanks 🟡
    • support events_json in squash and deletes @orian 🟢
    • Migrations integration @orian 🟡
    • Event deletion in the app @orian 🟡
    • CH Short Lived Auth @tpgilmore 🟡
    • Clean up secrets @tpgilmore 🟡
    • Reconcile Dev <> Prod drift @bciaraldi 🟢
    • Table moves to aux @bciaraldi 🟡

    High priority

    Low priority / side quests]

    🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started

  12. vdekrijger commented on Sep 3, 2026

    @vdekrijger
    Contributor

    Team Analytics Platform

    Support hero: @andyzzhao
    Off during the sprint:

    Legend

    ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned 🟣 = Ongoing

    Quarter goals

    Improve how AI writes HogQL — Andy Zhao

    • 🟡 Measure how performant and correct AI queries are
    • ⚪ Improve the AI context when writing HogQL

    Monitor query regressions across internal teams — Andy Zhao, Vasco de Krijger

    • ⚪ Set up automation that monitors PRs into the PostHog repo, flagging any suboptimal queries
    • ⚪ Set up automatic auto research

    Improve the DevEx of making HogQL changes — Sandy Spicer

    • PR gate on having an experiment log on the test cluster
    • Think about how we can be more confident in HogQL transformations

    Protect against small customers using a significant % of our ClickHouse compute — Mike Warren, Andy Zhao

    • ⚪ What should the limits be? Part of packages? (Mike Warren)
    • ⚪ Rate limiting based on cost of queries rather than number of queries, scaled for bigger customers (Andy Zhao)

    Make PostHog proactive for analytics users — Vasco de Krijger

    • 🟡 Help users figure out what is relevant to them at a glance / what to best build next
    • 🟡 Forecast alerts
    • 🟣 Further enhance prompt subscriptions
    • ⚪ Allow pre-prompted code agents / tasks to fire as a result of an alert trigger
    • ⚪ Further build out the brainstormed ideas from the product analytics team regarding proactive scouts

    Cross product integration — Matt Pua

    • ⚪ Auto-create a dashboard with relevant metrics about your feature when developing with PHCode (or sell as a GH action using the MCP under the hood with widgets?)
    • 🟣 Increase number of widgets available to cover most product areas
    • 🟣 Help increase number of products activated per org

    Signal + PHC integration: first class citizens | subs + alerts — Matt Pua

    • ⚪ Integrate alerts + subscriptions as signal sources

    Shared team objective: support team ClickHouse in their endeavours

    • Delete the legacy ClickHouse non-HogQL endpoints, or redirect to HogQL (Sandy Spicer)
    • Help ship the JSON column (Sandy Spicer)

    Retro

    Retro notes here: https://posthog.slack.com/docs/TSS5W8YQZ/F0B741LSUVA?focus_section_id=temp:C:Ace8f4220fa108e4789928fc6056

    ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned 🟣 = Ongoing

    Tasks

    @andyzzhao

    • 🟣 query rate limiting
    • 🔵 move query cache to s3 (sandy took over)
    • 🟣 support data retention

    @aspicer

    • Delete the legacy ClickHouse non-HogQL endpoints, or redirect to HogQL
    • Support Rory on the JSON column

    @MattPua

    • 🟣 more inbox work, trying to trim the list
    • ⚪ spruce up alerts in slack so they look better/more usable
    • 🟣 other dashboard improvements
    • 🟢 dashboard list saved views
    • 🟣 revamp of filters UX on dashboards

    @vdekrijger

    • 🟢 Continue with the remaining support hero work (e.g. adding new apis for the log alerts so that we can add a new TF resource, and adding teams support to subscriptions)
    • 🟣 Continue with the forecast alerts
    • 🟢 Add charts to the pulse subscriptions
    • 🟣 Continue with pulse if there is time left

    @mjwarren3

    • Finish data retention rollout
    • Events pricing updates (confirm on plan)
    • Sales deal analytics margin calculator

    Plan

    High priority

    @andyzzhao

    • query rate limiting
    • support data retention
    • query rewriting wizard skill

    @aspicer

    • Work on guardrails for HogQL queries to prevent bad performance

    @MattPua

    • saved filter sets for dashboards
    • continue inbox trimming
    • continued experiments to increase subscription adoption

    @vdekrijger

    • Integrate the new fanciness of PHAI v2 for our owned components
    • Continue adding "context" to our prompt subscriptions
    • Continue improving prompt subscriptions (paving the way for the upcoming changes / engine integration for pulse)

    @mjwarren3

    Low priority / side quests

    Are any other teams impacted by this plan? If so, tag them here

  13. jurajmajerik commented on Sep 4, 2026

    @jurajmajerik
    Contributor

    Team Experiments 🧪

    Retro

    Sprint #18, from Aug 24, 2026 to Sep 4, 2026

    Anders

    • PTO
    • Catch-up and updating everything, stack, etc.
    • Enabled dedicated exposure event for all teams. Experiments with start_date > 1th of sept. will use the new event in queries. Exact time for when we will stop storing $feature_flag_called in events table not set yet

    Juraj

    • Precompute & query performance
      • Added a daily job that finds teams with slow experiment queries who would benefit from precompute, as a first step toward enrolling them automatically (#88455). Fixed canary false alarms: tiny event gaps in low-volume metrics no longer page as divergences (#87880), and a missing query tag no longer fails ~52 canary runs a week in EU (#90719). When a user writes invalid HogQL in a metric, they now get a clear error instead of us retrying it and logging it as a platform failure (#90715).
    • API robustness & MCP
      • The API accepted misplaced keys in exposure criteria, and experiments saved with them failed every results query. Now rejected on write (#86938) and cleaned up from stored experiments (#88225). Users denied access to a specific experiment could still summarize it through Max; now blocked (#87802). Exposed flag cleanup in the MCP tools (#86946) and removed dead paths from the AI summary tool (#87799). Open: claude.ai hides tools whose schema is too long, and ours was 5 characters under the limit; it now shrinks itself to stay under (#88949).
    • Experiment history
      • Rebuilt the History tab on the experiment activity endpoint (#87906), added linked flag changes to it (#88220), and logged pause/resume actions (#88226). Also record who toggled precomputation for a team (#89176).
    • Experiments UI
      • Completed experiments no longer warn that results are stale or silently re-run their queries (#88219). Metric actions shown on hover (#87952). Explainer tooltips for p-value and interval (#90712). Aligned results wording with docs (#88216). Smaller fixes: a variant with no data no longer shows a red dash as if it were losing (#90721), interaction polish (#88275), code tab styling (#88266), dead code removal (#90714).

    Marcel

    • PTO
    • Catching up on everything
    • Evaluating recordings tab and what-to-watch over PTO period for follow-up tasks
    • Done:
      • #87310 - fix(experiments): change scan-skill to use server-derived exposure targeting
      • #84598 - fix(experiments): Gate Replay Vision on AI-consent and show its price
      • #91281 - fix(experiments): repair dead qualitative-feedback links in experiment skills

    Rodrigo

    • Metrics recalculation
      • Reused existing metric results when a metric configuration changes, so a config edit no longer forces a full recalculation (#90484).
      • Making recalculation react correctly to edits: fold stats_config into the recalculation fingerprint so a stats change invalidates cached results (#92541), and queue a rerun for edits made while a recalculation is already running (#93414).
    • Breakdown attribution
      • Shipped the metric breakdown attribution UI so experiment breakdowns attribute the value from the exposure event: added the UI (#84861) and its schema changes (#84867). Persisted the user's choices across sessions: the breakdown limit (#85122) and the attribution mode (#86544).
    • Running time
      • Added an endpoint for running-time estimates (#92590) and showed the live remaining time on the experiments list (#92868).
    • Product folder migration
      • Moved the experiments scene and its view logic into the product frontend folder: main scene (#87249), legacy experiment view (#87319), view logic (#88856).
      • Migrated the smaller scene pieces: status tag (#90507), velocity stats (#90508), experiment status (#90511), experiment actions (#90512), and shared constants (#90513).
      • Continuing with the modals: copy (#90509), duplicate (#90510), cuped (#92586), stats method (#92587), running time config (#92588), details (#92589), timeseries (#92591), select existing feature flag (#92593), experiment metric (#92594), metric source (#92595), shared metric (#92597), and shared metric details (#92598).

    Sprint Goals

    Sprint #19, from Sep 7, 2026 to Sep 18, 2026

    Anders

    • Get “the spec” for the end state of “the RFC” related work in a good enough state to be shared and started to implement some parts already
    • Plan / figure out how to deprecate “custom exposure criteria” with activation event

    Juraj

    • Precomputation
      • Pick the next target for precomputation - probably breakdowns
      • Monitor auto-enrollment in prod
    • Write a blog post about solving query performance

    Marcel

    • Recordings tab: Allow recordings to be filtered by sessions containing the exposure
    • Recordings tab: Analyse 44% empty list cases
    • Rollout what-to-watch to a small number of real users for more usage and feedback to decide if worth pursuing more

    Rodrigo

    • PTO from Sep 7, 2026 to Sep 11, 2026
    • Global on-call + Support Hero from Sep 14, 2026 to Sep 18, 2026
    • Metric Recalculation
      • At this point the only thing left are small fixes and monitoring of the workflow. Will prepare cleanup of the frontend experiment logic.
    • Breakdown Attribution
      • Continue reviewing and merging small PRs.
    • Product Folder migration
      • Mostly mechanical and agent driven, so we can expect a couple more stacks of changes.
  14. Radu-Raicea commented on Sep 4, 2026

    @Radu-Raicea
    Member

    Team AI Observability

    Retro

    Details

    Plan (W37, W38)

  15. hpouillot commented on Sep 4, 2026

    @hpouillot
    Contributor

    Team Error Tracking

    Previous sprint: #84504 (comment)

    Retro 🟢 🔴 🟡 🚫

    @ablaszkiewicz finish with releases 🟢 banner as follow-up to warn cli / sdk mismatch
    @ablaszkiewicz stretch: onboarding 🟡 hardcore tests with wizard

    @cat-ph - alerting poc / design session 🟢
    @cat-ph - alerting implementation 🟡 Stack in merging progress
    @cat-ph - stretch/discuss with client lib: logback plugin for java autocapture (similar to Elixir logger.error capture) 🟢

    @hpouillot - Finish issue severity filtering and display 🟢 Backfill to be done
    @hpouillot - Error tracking loop templates 🚫 Triage automatically 🟡
    @hpouillot - Fingerprints visualization 🟡 Merge managing fp with similar issue into a modal
    @hpouillot - Logs integration 🚫

    @fivestarspicy - investigate effect of price changes (free tier changes)
    @fivestarspicy - another look at our cost (after cost tagging)
    @fivestarspicy - come up with user research questions

    Objectives for the quarter

    Onboarding
    Alerting
    Fingerprint
    Release Management
    Integration

    Team PRs

    @ablaszkiewicz

    @cat-ph

    @hpouillot

    @fivestarspicy

    High priority

    @hpouillot - Finish fingerprints modal
    @hpouillot - AI Triage

    @ablaszkiewicz - Finish with new wizard + empty state screen
    @ablaszkiewicz - Stretch: review global onboarding screen

    @cat-ph - alerting all the way

  16. fasyy612 commented on Sep 7, 2026

    @fasyy612
    Contributor

    Team Session Replay

    Support hero:

    @fasyy612

    OKRs

    🚀 Goal 1: Make Replay Vision the fastest growing PostHog product by revenue
    💰 Goal 2: Solve cost and pricing
    🛠️ Goal 3: Build out Replay Vision
    👥 Goal 4: Build group summaries
    🧠 Goal 5: Contribute AI improvements back into Session Replay

    Retro ✅ 🔴 🟡 🚫

    ✅ @fasyy612 Touch up observation tab
    ✅ @fasyy612 Semantic search MVP

    @ksvat Revamped goal-based creation flow

    @TueHaulund Analytics-based alerts
    @TueHaulund Ship scout-based digests (including big DB migration)

    @fivestarspicy User research

    @TueHaulund Another round on the cost estimation UI

    High priority

    @fasyy612 'Read' state on observations list
    @fasyy612 Semantic search UI improvements

    @arnohillen Improve LLM testing for Replay Vision
    @arnohillen Setup more experiments for the calibration tab and nudge users to try it out

    Side quest

  17. lucasheriques commented on Sep 8, 2026

    @lucasheriques
    Contributor

    Team MCP Analytics

    Support hero - @lucasheriques

    OKRs

    Details
    • 🤖 Goal 1: Self-Driving MCP
    • ✨ Goal 2: Magical Onboarding
    • 🚀 Goal 3: Launch & GA
    • 💫 Goal 4: Skills & CLI Analytics (stretch)

    See all goals in detail here

    This team and product is very new, so it's likely those will change throughout the quarter

    Retro

    Details ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned 🟣 = Ongoing

    High priority

    @gesh

    • 🟢 Close the parity gap between Python and TS SDKs
    • 🟢 Polish any issues after the updates
    • 🟢 Reach out to more leads
    • 🟢 Proper PII masking in tool call intents

    @lucasheriques

    • ⚪ See how to handle multiple mcp servers in project
    • 🟢 Make session context richer (model, skills, metadata)
    • 🔵 Fix intent clustering disabled for now
    • 🟢 PostHog Shipaton in Belo Horizonte

    High priority

    @gesh

    • Scout to monitor our MCP server and suggest new MCP analytics features
    • Missing capabilities capturing in our MCP server via TS SDK
    • Feed missing capabilities into self-driving
    • Support capturing agents' feedback

    @lucasheriques

    • Harness, intent clusters and failure logs showing as "unknown"/blank
    • conversation-level quality insight, not summaries: was the user happy, if not why and how to fix it, trended and clustered by topic
    • See how to handle multiple mcp servers in project
  18. thmsobrmlr commented on Sep 8, 2026

    @thmsobrmlr
    Collaborator

    Team Product Analytics

    Support hero: @thmsobrmlr
    Off during the sprint:

    Quarter goals

    Details
    1. MCP/Wizard improvements and Slack bot
      1. How it's displayed across harnesses and agents
      2. Make product analytics easier and more useful to access from Claude Code, Slack, etc.
      3. AI knows when to use a runner rather than one-shotting SQL every time
    2. Improvements and features for core product analytics (Prioritized list in GitHub, Papercuts, Tech debt)
      1. Sam
        1. Make creating insights and dashboards via MCP faster and better quality (Reports that users will need #1)
        2. Make charts great everywhere
        3. ✅ More options and flexibility with date queries (Mapping xpaths to our product #2)
      2. Thomas
        1. 🔁 Dogfood MCP analytics so working with insights and dashboards doesn't feel sluggish (Reports that users will need #1)
        2. ✅ Dashboard filter overrides and chart color enhancements (Mapping xpaths to our product #2)
        3. 🔁 Paths V2 (Mapping xpaths to our product #2)
        4. 🔁 Remove legacy filters and legacy insights, and move code to the "product analytics" product (Mapping xpaths to our product #2)

    Retro

    Details

    High priority

    Low priority / side quests

    • 🔁 Work on legacy removal and separating product analytics things into our folder @thmsobrmlr
    • 🔁 Property usage in insights/dashboards/etc. @thmsobrmlr
    • 🔁 Roll out regex fix for actions @thmsobrmlr
    • ⏳ Explore gen-ui charts and canvas's @sampennington

    Plan

    High priority

    Low priority / side quests

    • Run some experiments around insight/chart type discovery @sampennington
    • Work on legacy removal and separating product analytics things into our folder @thmsobrmlr
    • Property usage in insights/dashboards/etc. @thmsobrmlr

    Are any other teams impacted by this plan? If so, tag them here

  19. sakce commented on Sep 8, 2026

    @sakce
    Contributor

    Team Modeling Sausages

    Quarter goals

    🟢 Objective 1: Semantic layer (owner: Thiago)
    🟡 Objective 2: Integration with Managed warehouse (owner: Jovan)
    🟡 Objective 3: Version control (owner: Jovan)
    🟡 Objective 4: Testing (owner: Thiago)
    🟢 Side quest 1: Templated models (owner: Anna)

    Retro

    Details @thiagosalvatore - 🟡 finish the testing framework - 🟢 release the semantic layer to beta - 🟢 anything that comes up with the semantic layer once we release it to beta

    @sakce

    • 🗑️ duck work
    • 🟢 modeling UX work!!
      • v1 deprecated!
      • concept of DAG removed

    @annaszell

    • ⚪ continue semantic layer dogfooding

    Plan

    High priority

    @thiagosalvatore

    • finish the data quality / test framework and release it internally
    • analyze the semantic layer scout reports + merge the new metric list, metric describe tools and compare to see if the numbers are improving
    • explore how we can analyze query patterns from our clients to start proposing metrics proactively
    • see if there are metrics that could be created on the semantic layer for EVERY new org that joins posthog

    @sakce

    • 🟡 heavy customer modeling usage optimization
    • 🟢 retire v1 modeling workflow
    • 🟡 start blocking CH data modeling usage after "free" tier (decide the free tier first)
    • incremental views (on trino; how do dependencies work? where's it sit with the version control system)
    • UX of modeling together with the managed warehouse

    @annaszell

    • hogfood the semantic layer
    • UX ideas for the data catalog product
  20. haacked commented on Sep 9, 2026

    @haacked
    Contributor

    Team Feature Flags

    Support hero:

    Off during the sprint: haacked, gustavohstrassburger

    Quarter goals

    Link to goals

    1. Real-time cohorts 🟡
    2. AI Native 🟡
    3. Dedicated Persons Store 🟡
    4. Improved Customer Visibility 🟡
    5. Standardize on Infrastructure 🟡
    6. Improved Experiments 🟡
    Details ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned

    Retro

    Most of the sprint went into the flag_evaluations pipeline, cohort infrastructure, and flag reliability fixes. Haacked shadow-routed $feature_flag_called into flag_evaluations, added observability and cost controls around it, and kept working on removing $feature_flag_called from taxonomy and autocomplete surfaces.

    Gustavo made major progress decommissioning warpstream-calculated-events and pushed the realtime cohorts effort forward, then started migrating the flags-cache infrastructure to the posthog-app golden chart.

    Patricio shipped flag filter validation and rollout-percentage fixes, closed out several cohort correctness bugs, and built the scoped-JWT work that unblocks the PSAK migration's cross-app access investigation.

    James continued the HyperCache Rust port, adding shadow-mismatch tracking and cache-builder dashboards, and separately shipped flag lifecycle endpoints as MCP tools.

    Matheus advanced both the cohort_membership_changed cutover and the streaming cohort backfill with a large batch of merged PRs.

    Details

    @haacked

    Flag evaluations pipeline:

    Taxonomy cleanup:

    Replay:

    HyperCache observability:

    Ingestion:

    PostHog Code desktop:

    Docs:

    Side quests:

    @gustavohstrassburger

    Warpstream decommission:

    Realtime cohorts:

    Cohort fixes:

    Golden-chart migration:

    Docs:

    @JamesPatrickGill

    HyperCache Rust port:

    Cache builder dashboards:

    Flag lifecycle and tooling:

    Devex:

    @matheus-vb

    Realtime cohort membership cutover:

    Streaming cohort backfill:

    Cohort write correctness:

    HogVM fix:

    @patricio-posthog

    Flag filter validation:

    Rollout percentage and filter validation follow-ups:

    Cross-app access investigation:

    Other fixes:

    Plan

    Project Board

    High priority

    @haacked

    @gustavohstrassburger

    @JamesPatrickGill

    @matheus-vb

    @patricio-posthog

    Side quests

    • None identified yet; check back during the sprint.
  21. lricoy commented on Sep 10, 2026

    @lricoy
    Member

    Team Web Analytics

    Legend
    ⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete

    Support hero

    @jordanm-posthog

    Retro:

    Details

    High priority

    🟢 @jabahamondes global on-call
    🟢 @jabahamondes retention analysis on marketing analytics
    🟡 @jabahamondes improve the performance of Mike's new attribution explorer
    🟢 @jabahamondes submit Meta's scopes and reviews
    ⚪ @jabahamondes OOO next week

    🟡 @arthurdedeus unalive vitally
    🟢 @arthurdedeus track account rules
    🟢 @arthurdedeus wrapped up gmail sync issues
    🟡 @arthurdedeus backfill whatever data we still have on vitally
    🟢 @arthurdedeus fixing papercuts
    🟢 @arthurdedeus level up observability of the whole system, especially schedulers
    ⚪ @arthurdedeus certification for restricted scopes on Google APIs

    @jordanm-posthog @lricoy getting aeo on early access alpha
    @jordanm-posthog user interviews on aeo/seo
    stretch: @jordanm-posthog implement a demo on our aeo/seo improvements

    @lricoy getting the docs really, really ready
    @lricoy release the self-driving scouts (csp, web vitals, generic web analytics) for everyone
    @lricoy shipaton event

    @mjwarren3 events pricing update / group analytics changes
    @mjwarren3 work with arthur to get query and storage data on CA for us

    High priority

    @arthurdedeus unalive vitally
    @arthurdedeus backfill whatever data we still have on vitally
    @arthurdedeus migrate all automations from onboarding team to customer analytics
    @arthurdedeus rollout new account details UI

    @jabahamondes merge attribution explorer precomputation PRs
    @jabahamondes add revenue, acquisition and engagement metrics to the new marketing dashboard
    @jabahamondes integrate retention, conversion into the new dashboard (already existing)
    @jabahamondes track dashboard and Setup usage, goal changes and source connections by entry point, and update the usage dashboard
    @jabahamondes unalive onboarding in the new dashboard and show useful data immediately
    @jabahamondes stretch -> include new-customer conversion goals in Acquisition
    @jabahamondes stretch -> show suggested sources and conversion goals in the dashboard ideally cg would be automatically created

    TBD - we're doing planning async and will fill this in ourserlves

  22. richardsolomou commented on Sep 14, 2026

    @richardsolomou
    Member

    Team AI Gateway

    Support hero: N/A
    Off during the sprint: Nobody!

    Quarter goals

    The published goals still describe the productization plan and are stale after the 4 August re-focus onto self-driving.

    • 🟡 Goal 1: Reduce LLM ops complexity for internal products: every internal caller on one gateway, the Python gateway retired
    • 🟡 Goal 2: Make LLM usage attributable and observable: auth, attribution, budgets, and AIO on the same trace
    • 🟡 Goal 3: Build cost-saving levers: provider routing and failover, openweight model serving, pricing that follows whoever served the request

    Retro

    Details

    @richardsolomou

    • 🟡 Shipped provider fallback onto Bedrock's Mantle service for GPT models plus new failover telemetry, which then caused a real incident — Codex sent tool shapes the new validation logic didn't recognize, so it got reverted and is back up for review with the fix (#439)
    • 🟡 Making provider traffic splits configurable instead of a hardcoded 50/50, with percentage sliders in the admin (PostHog/ai-gateway#448)
    • 🟢 Reworked the provider-routing admin page to show where a model's traffic is actually going instead of a rule list (PostHog/ai-gateway#417), and fixed it mislabeling active traffic splits as fallback chains
    • 🟢 Fixed two correctness bugs: a poisoned catalog feed could silently delete stored provider rows, and gateway analytics could misattribute one team's traffic to an unrelated person when IDs collided
    • 🟢 Closed out a string of provider compatibility bugs: rejecting empty tool lists, Codex's namespace tools and metadata fields, malformed non-streaming Bedrock responses, and generation metadata drifting across providers
    • 🟢 Added GLM-5.3 and wired Azure OpenAI as a real routing option across all three environments
    • Side quests:
      • 🟢 Built a mirror so EU generation events reach US dashboards again, with alerting and a new panel — closes the reporting gap the Signals cutover opened
      • 🟡 Quieted the pager for provider overload instead of treating it like a real error, with a new warning-only alert
      • 🔴 Decided against Cloudflare Workers AI dispatch — GLM's Baseten/Modal serving already covers it

    @brandonleung

    • 🟡 Merged the wizard cutover's mint infrastructure end to end — scoped tokens per run, environment wired in both regions, client IDs set, a routing fix, mint logging (posthog#87269, wizard#1130, charts#14567, charts#14841) — still gated behind a feature flag matching no organizations yet, so no wizard traffic has actually moved
    • 🟡 Billing attribution — stamping which requests are billable and resolving which team to bill — is up for review (PostHog/ai-gateway#414)
    • 🟡 Drafted the RFC for what the gateway looks like after the migration: one budget per run, tier-based model selection, and a real-time billing handoff (#1260), decision targeted for the October AI teams meeting
    • Side quests:
      • 🟢 Got the gateway attribution and auth RFC over the line
      • 🟢 Extended the Signals cutover to inbox, chat, suggestion runs, and eval-report summaries
      • 🟡 Landed the StampHog review-digest cutover in production; the reviewer leg is staged behind a model-pin flag
      • 🟡 Shipped a flag-driven wizard abuse blocklist for spend farming — self-flagged as a stopgap until a proper admin ban list exists
      • 🟢 Caught and fixed his own pricing bug before it shipped wrong (an OpenRouter promotion fix had overcorrected onto directly-priced models too)
      • 🟢 Fixed a reliability bug that was killing about 9% of self-driving runs mid-task from oversized safety margins on spend holds, plus a related billing bug on aborted requests that delivered nothing
      • 🟢 Closed out the auth-stack design issues
      • 🟢 Led a team-wide API key rotation, cleaning up stale credentials from departed employees

    🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started

    Plan

    High priority

    @richardsolomou

    • Land the re-landed Bedrock Mantle fallback (#439)
    • Land configurable provider traffic splits (#448)
    • Land the quieter provider-overload alert (charts#15198)
    • Look into adding support for Gemini for Replay Vision
    • Implement configuration over provider traffic split (start with aio or something)
    • Investigate how to do AIO online evals which can use any model
    • Pseudonymize EU metadata mirroring

    @brandonleung

    • Wizard abuse
    • Land the billing attribution stack: which requests bill, and to which team (#414, #443, charts#14717)
    • Land the StampHog reviewer cutover, including scoped-token model pinning (posthog#93847, charts#15088, #435)
    • Land the data warehouse semantic enrichment cutover, pending its AWS secret setup (charts#15162, posthog#94494)- Report which OpenAI fields the Anthropic translation silently drops (#445)

    Low priority / side quests

    • Housekeeping: close PostHog/ai-gateway#432 (resolved by the merged EU mirror), PostHog/ai-gateway#442 (resolved once PostHog/ai-gateway#443 merges), and PostHog/ai-gateway#248 pending its last child issue PostHog/ai-gateway#247
    • Name every unpopulated event field in one emitter test run instead of one per cycle (#454)
    • The durability gap: rebuild spend counters after a dropped Redis write (PostHog/ai-gateway#320), record which minted token spent each ledger entry (PostHog/ai-gateway#374), rebuild pending balance from the ledger when Redis recovers (PostHog/ai-gateway#204)
    • Refill a team's rate-limit buckets from the admin (PostHog/ai-gateway#385)

    Are any other teams impacted by this plan? If so, tag them here

    • @PostHog/team-billing — the billing RFC and the billed-team attribution work both feed into how gateway spend reaches a customer's bill
    • @PostHog/team-self-driving — signals scout runs still hit an EU rate ceiling with no owner yet (PostHog/ai-gateway#409)
    • @PostHog/team-ai-observability — the data warehouse enrichment cutover and dropped-params reporting change what shows up in AIO-facing traces
  23. pl commented on Sep 14, 2026

    @pl
    Contributor

    Team Ingestion

    Retro

    Details

    High priority

    🟢/🟡/🔴

    • PersonHog
      • 🟢 Integrate the merge service into ingestion
      • 🟢 Set up shadowing in dev
      • 🟡 Implement the janitor delete jobs
      • 🔴 Do a load test on merge traffic
      • 🟢 Plan how to verify PersonHog correctness
      • 🟢 Make a decision about the union find algorithm
    • Ingestion consumer
      • 🟢 Implement and verify the commit ledger
      • 🟢 Implement the "one request per key" scheduler
      • 🔴 Pack messages into optimally sized batches
      • 🔴 Support timeouts and partial response in the consumer
    • Capture fallback
      • 🔴 Implement selective Kafka config in capture
      • 🔴 Verify Kafka topic existence on startup
    • Capture V1
      • 🟡 Refactor the backend SDKs with v1-only capture
      • 🟡 Add the ai v0/v1 endpoints
      • 🟡 Upgrade ai SDKs to use v1 ai endpoints
      • 🔴 Update docs, specs and runbooks

    Incident follow-up

    • 🟢 Temporarily lift the P/2 partition limit in EU
    • 🟢 Normalize the partition locality on overflow across all envs

    Support follow-up

    Side quests

    • Read path improvements for the taxonomy queries
    • Cache population changes in the backend
    • Stop waiting on Kafka produce in person merges
    • Use side effects for producing in the error tracking pipeline
    • Improve the WS autoscaling in replay

    OKRs

    • 🟢 Scale PersonHog for person property updates
    • 🟢 Harden the persons Postgres database
    • 🔴 Faster, more reliable CI/CD
    • 🟡 Add redundancy and fallback to capture
    • 🟢 Help users self-troubleshoot ingestion issues

    Projects

    High priority

    • PersonHog
      • Implement the janitor delete jobs
      • Investigate performance issues in identity
      • Do a load test on merge traffic
      • Run high traffic benchmarks through ingestion
      • Run team 2 shadow
      • Move over the personhog replica delete to soft-delete mode
    • Ingestion consumer
      • Pack messages into optimally sized batches
      • Support timeouts and partial response in the consumer
    • Capture fallback
      • Implement selective Kafka config in capture
      • Verify Kafka topic existence on startup
    • Capture V1
      • Refactor the backend SDKs with v1-only capture
      • Add the ai v0/v1 endpoints
      • Upgrade ai SDKs to use v1 ai endpoints
      • Update docs, specs and runbooks
      • Decide what to do with the capture options object

    Incident follow-up

    • Restructure WarpStream deployments to isolate capture, ingestion and other services
    • Investigate replay duplicates in WarpStream due to timeout misconfiguration

    Support follow-up

  24. unpinned this issue on Sep 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    sprintSprint planning

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions