You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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
-
Deployments - streamline the migration process a little more so we can multiplex / focus on migrating more services @Z3r0Sum
Deployments - setup alerting / o11y for Kargo itself so our users aren't the first to report problems (maybe a hogstation dashboard for the platform team around deployment health too?) -> requires Kargo 1.12.0 upgrade @Z3r0Sum
Deployments/Hogstation - nice onboarding experience to Kargo rather than just pointing at docs @Z3r0Sum
Low Prio
evaluate write-access feature in Metabase @langesven
can we do some sort of just-in-time/approval access?
⚪ Vendor negotations @MichaelKutsch-ph@sinthetix - focusing on cost reduction first, negotiations on hold rn
🟡 make managed proxy HIPAA compliant @MichaelKutsch-ph - trickier than we thought. currently working on cost allocation for the current proxy, then taking it from there
✅ support ai-research with ML infra topics @MichaelKutsch-ph progress here, this will become an actual topic in q1, don't expect any major work rn
⚪ smokescreen-sidecar canary w/ CDP @MichaelKutsch-ph - paused in favor of finops topics
🧬 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 all data, setup ingestion on test cluster for new schema @rorylshanks 🟢
🟡 Goal 1: Improve SDK observability and diagnostics (@marandaneto)
⚪ Benchmark SDK performance
⚪ Build dashboards to monitor SDK health and performance
⚪ Capture diagnostic events to investigate SDK issues
🟡 Add remote configuration support for SDK diagnostics
🟡 Enable or disable diagnostics globally, per organization, or per project
🟡 Goal 2: Expand SDK coverage and automate development with shared specifications (@dustinbyrne)
⚪ Define canonical SDKs for frontend, backend, and mobile
⚪ Run agentic loops for bi-directional sync of SDKs and specs, verified by a shared acceptance-test harness
🟡 Expand first-class SDKs and integrations:
🟡 Release @posthog/browser v2 GA
⚪ Release @posthog/next v1 GA
⚪ Release posthog-kmp v1
⚪ Release posthog-android-surveys-compose v1
🟡 Release the iOS SDK v4
⚪ Add Laravel support
⚪ Add Electron support
⚪ Add Angular support
🟡 Add Flutter desktop support through a confirmed community donation
🟡 Review the donated implementation
⚪ Test Flutter desktop support
⚪ Release Flutter desktop support
🟡 Goal 3: Bring mobile session replay to feature parity with web (@ioannisj)
⚪ Decide whether to deprecate wireframe mode for mobile session replay, and proceed if agreed
🟡 Add v2 session replay triggers to mobile SDKs
⚪ Remote masking config
⚪ Goal 4: Research how to capture product usage across agent-driven interactions (@turnipdabeets)
⚪ Interview customers building agents, bots, MCP servers, and edge applications to understand what they need to measure, how they capture events today, and where our SDKs fall short
⚪ Evaluate capture options, including deriving analytics events from tool calls, capturing agent-driven interactions through WebMCP, and offering lightweight SDKs for edge runtimes and unsupported ecosystems
⚪ Share findings with the MCP and web teams, and recommend opportunities to test with customers
⚪ Pair with the Product Analytics team to explore their ideas and test them together where client libraries support is needed
Retro
Details
High priority
🟢 Have a productive team offsite @PostHog/team-client-libraries
Flag pages: v2 flags now show read-only in the flag list and detail pages instead of breaking them (#106774). Behind feature-flag-rules-v2-editor, boolean v2 flags can be created and edited in the UI, with ordered targeted-release and percentage-rollout rules (#107734).
Write errors: v2 write errors return the field path in attr and the bare message in detail (#109452). The editor shows each error under its field, and API and MCP clients no longer parse the message.
Raw readers: A repo test counts code that reads the flag filters document directly, and the semgrep rule catches more shapes (#109448). 75 sites remain, and the list can only shrink.
Refactors, fixes, etc.
Fingerprints: One calculation config builds the metric fingerprint at all 12 call sites (#109371). Experiments that count only matured users now launch with fingerprints that their daily results match.
Result store: All metric result reads (#109403) and writes (#109451) go through one store. A daily write no longer fails when a recalculation already stored a result for the same window. The "experiment completed" event and the concluded notification use one rule for the current result of the first primary metric (#109498).
Shared metrics: The API returns each shared metric with the experiment's overrides already applied, so the page and MCP no longer apply them on their own (#109357). The four breakdown edits share one save path and skip saves that change nothing (#113756).
Failed saves: A failed experiment save no longer shows success toasts, triggers a recalculation or captures date-change events (#113762). The CUPED, statistics and date dialogs stay open with the user's edit and show the server's value after a conflict (#113853).
Exposures: Experiments started before the 2026-09-01 cutoff read both $feature_flag_called and $experiment_exposure. They keep counting exposures after their organization moves to flag_evaluations (#114399).
Timeseries text for agents: The MCP timeseries text labels the real baseline instead of always control (#115227). It renders from a typed view, and the formatter moved into the experiments product (#115262).
Charts: Quill charts keep their last frame when their container collapses. This fixes the flaky multi-step funnel story in visual review (#113847).
Juraj
Experiment query performance
Extended precompute to ratio metrics (#115871) and widened the auto-enrollment criteria so more experiments get it (#113405).
Tagged each precomputed read with a skip reason so we can see why a read fell back to the raw query (#113706).
Split the query runner into smaller pieces: moved out the precompute policy (#114688), the actors query (#115250), and the metric-events precompute (#116755).
Experiment fixes
Fixed the top errors from the weekly triage: scheduled recalcs crashed when the creator left the org (#116083), cohort filters pointed at deleted cohorts (#116790), and cloning an experiment failed on a taken flag key without saying which key (#117782).
Made filters like status >= 200 work on string properties (#111714) and let the API accept metric breakdowns (#113698).
Dropped the legacy recalculation time column now that two daily times are live (#115395).
Fixed the onboarding snippet for server frameworks (#112332) and unified text sizes in the experiment meta bar (#117674).
Audited the experiments docs: corrected wrong claims (#20721, #20778), refreshed stale copy (#20722), and added a Rails page (#20970).
Warehouse-native experiments
Added direct querying for BigQuery, no sync needed (#113994).
Added a warehouse source node and exposure config for experiments (#114634).
Wrote an RFC on whether warehouse metrics should be inline SQL or reusable metric sources (#1322).
Playground
Added tool messages: a tool role with structured tool calls (#112333), Gemini function call mapping in the proxy (#111709), and import of tool calls from traces (#113398).
Added move up and down controls for messages (#113963).
Fixed a provider name mismatch that broke completions (#113040).
Prompts
Made the SDKs share one request when many calls fetch the same prompt at once: JS (#5266) and Python (#1059).
Added viewing and unarchiving of archived prompts (#114048) and stopped the preview from showing stale results (#114040).
Removed the prompt partials flag (#111708) and wrote a guide for using prompts in Temporal workflows (#21180).
Marcel
Diagnosis skill
#112315 - feat(experiments): refresh the experiment diagnosis skill and its evals
#112477 - feat(experiments): rename diagnosing-experiment-health skill to cover broader scope
Health layer scaffolding, beginning of migration & UI
#112916 - feat(experiments): add the experiment health layer scaffolding
#113150 - feat(experiments): port the flag-state and no-metric health checks to the backend
#113190 - feat(experiments): return health check findings on the experiment API
#113353 - feat(experiments): show the flag-state warning from the experiment's health findings
#110279 - feat(experiments): track health findings and every launch path
#113732 - feat(experiments): show health findings in one panel
#114109 - feat(experiments): run the exposure health checks on the server
#114297 - chore(experiments): tracking for health-check parity and launch findings
#114458 - feat(experiments): flag release conditions that force a variant
#114739 - refactor(experiments): one home for the health checks' flag rules
#115624 - feat(experiments): report a deleted flag on a running experiment
#115457 - feat(experiments): return health findings to every experiment reader (API only, no UI change)
#115784 - feat(experiments): report broken flag variants + time the health request
Other
Customer support
Replay vision team coordination for experiment scanner and desired features
#113739 - feat(experiments): search experiments by feature flag key
#111758 - feat(experiments): raise the freeze cap to 200k and show its duration
Rodrigo
Metrics recalculation
Finished the switch off the timeseries publish pass: required a recent data window before skipping a scheduled run (#111679) and removed the publish pass itself (#111422).
Hardened recalculation under load: jittered the capacity retry delay (#113036), capped retries on capacity and timeout errors (#115794), kept precompute work inside the attempt budget (#115823), and killed precompute inserts when an attempt is cancelled (#115822).
Added a five-minute cooldown on manual reloads: block reloads after the latest run (#112207), return that latest run inside the window (#112205), and gate the rate limit behind a flag (#113949).
Made recalculation the single source of results: switched the notebook component to recalculation results (#114248) and removed the non-recalculations code path (#114305).
Tightened self-healing: heal the latest run only when a metric is missing (#115684) and skip known failed metrics on stopped experiments (#115796).
Sharpened the schedule-to-start metric buckets (#113613).
Loading-state fixes
Cleared metric loading indicators on network error (#112895) and skip latest-recalculation updates after unmount (#116340).
Experiments health
Built the experiments health category and its table (#115842, #115843), used the category table on the generic detail page (#115841), and added the job owners (#115835).
Added the health checks: flag state (#115837), forced variant (#115838), and no-metric (#115839), and mapped the findings to health issues (#115836).
Experiment header
Added a collapsible content slot to the scene title (#113645) and collapsed the experiment header behind the title toggle (#113646).
Product folder migration
Migrated the scene components to the product folder (#110387) and declared the frontend dependencies of the product package (#112194).
Ruby
Wrote the Health Engine Needs research doc (research/2026-10-07-Health-Engine-Needs.md)
Roast changes to New Experiment UX: variant screenshots (#108053), Replay Vision card (#108107), step tracking (#108105), code as last step (#108106), auth-persistence question (#108082), wizard guide + Ask AI (#108052)
MCP Error reduction efforts: call-shape/alias telemetry (#101133), scalar constraints in exec info (#101164), redirect for removed experiment-get-all tool (#103254), collapse long prompt snippets (#102656).
ETag 304 billing impact sized (+$37k ≈ +11% US flag MRR); realtime-cohorts cost-tagging (charts #15897); Email comms to those impacted
Website investigation for product pages + use of scanner
Comparison of revenue attribution methods.
Supporting meetings on experiment health checks / mutually exclusive experiments architecture; ElevenLabs call on experiment isolation and multi-test interference.
Local end to end testing of flags v2 with SDK, local evaluation, etc
Spec proposal for API design for v2 changes ready for review
Remove the legacy query runners
Juraj
Warehouse-native for single source MVP done end to end
Marcel
Ongoing health layer work
Rodrigo
Implement more complex, non-deterministic checks on the health workflow.
Improve performance of the daily scheduled recalculation to prevent capacity issues.
Some more tuning of the recalculation workflow.
Frontend refactor on the experiment metric logic to remove some redundancies.
Automate product migration.
Ruby
Finish health engine research doc, and give feedback to team.
Write an RFC on no-code, incl. marketing ICP distribution across PH, and current experiment users. Incl. what companies are doing today, existing bugs raised, and whether our current approach is what we should be doing, until more investment.
Write up initial product page investigation into RFC concerning product pages for exp and feature flags on website, and improvements needed for website.
Consolidate how we validate products that we want to build - aka. eng delve in and how we can double check.
Investigate how we can build auto-flags cleanup
Make progress on cleaning up or tables
Warehouse-native needs: identifying users to share MVP with
🟡 Proactively improve customer experiences — Vasco. Customer-facing observability and resilience work is progressing (query latency phases #115652, dashboard correlation #115279); a measured end-to-end customer journey and proactive regression detection are not shipped yet.
Make query-performance experiments easy to run and trust — Andy.
Safely bring the JSON Events Table into production — Sandy.
Turn HogQL into an extensible optimizing compiler — George.
Query optimisations / CH resiliency and headroom creation
🟢 Customer impact — fixed expensive Web Analytics conversion scans: Found that high-volume customers were repeatedly running and failing large conversion-achievement scans. reported ~$2.5k/week in avoided ClickHouse compute on those queries, alongside restoring the feature for the customer.
🟢 Optimized person/group lookups and memory usage:Initial measurements showed memory use falling from ~1.18 TB to ~0.54 TB (~54% lower) for the investigated person-related queries
🟢 HogQL/ClickHouse optimization for expensive customer SQL: Traced repeated CPU-heavy feature-flag auditing queries to a handwritten SHA-1 implementation, and shipped native HogQL sha1() support #116004.
🟡 Investigated S3/Parquet-heavy customer query slowness:Traced slow warehouse/customer queries where high S3 GET / Parquet metadata overhead was more significant than CPU time. Reproduced metadata-cache admission starvation on ClickHouse 26.6, migrating to the latest version (26.9) should contain a fix for this.
🔴 Offline evals and source reliability: Finish reusable environments for long-running agent evals; continue pipeline/source fixes. @sortafreel
🔴 Personal inbox: Dogfood and land the shared selection/order across web, Desktop, and MCP; define success measures before rollout (#110438). @dmarticus
🟢 Report volume and activation: Test dismissal, bulk cleanup, and initial defaults (#110439); run the default scout-creation experiment (#110440); continue interviews and finish outreach setup. @dmarticus
🟢 Ranking and autoresearch: Evaluate model-based inbox ordering; dogfood autoresearch and improve background/rolling scoring (#110079, #110125). @andrewm4894
🟢 Scouts: Start a limited general-scout rollout with cost and quality monitoring; continue model comparisons. @andrewm4894
🟡 Close the loop: 🟢 Finish report monitoring and inconclusive outcomes, then dogfood the complete measurement → implementation → 🟢 monitoring → verified-result flow. @mikaylathompson@andrewm4894
🔴 Continue Jev evaluations before deciding on rollout. @mikaylathompson
🟢 Desktop/mobile: Finish the remaining feedback and usability PRs. @dmarticus
Low priority / side quests
🔴 First round of scout improvements and additional interviews, if capacity permits. @sortafreel
🟡 Explore per-scout MCP tool grants (#108530) and write about skills. @andrewm4894
Plan
High priority
[Mobile] Launch PostHog mobile. Start with internal dogfooding. Get it into both app stores and either get it launched into the public app stores or, at minimum, get a publicly accessible beta version. @cvolzer3
[Mobile] Get with Alex V and launch V1 of support in PostHog mobile @cvolzer3
[Mobile] Do customer interviews on the mobile use cases in self-driving and agent-mediated workflows @cvolzer3
[Mobile] Work on alerts (configurable notifications for the mobile app) and tie that back into the alerts platform @cvolzer3
[Platform] Iterate on the MCP tooling necessary for external agents to interact with reports @cvolzer3
[General] Iterate on the core reports experience from a mobile & agent-mediated perspective @cvolzer3
Inbox ranking: kick off the default-sort experiment (control vs open, 4 weeks), check the first prod nn training run, then project vectors and after that user vectors for more personalization @andrewm4894
get project vectors and user vectors flowing and get NN serving working
scale and improve the model a bit - ml stuff
Report checks make sure operationally working well and help see how can fit or be part of monitoring work if useful. @andrewm4894
Scouts pre-checks: confirm the error tracking, replay and replay vision pre-checks actually run #115934, #115933, #115935, then logs, apm, insight alerts and the data ones @andrewm4894
Scouts: retire the revenue analytics scout by Oct 22 #117599, auto-pause silent configs, tool access enforcement and settings UI @andrewm4894
Datadog inbox source: land #113615, sync with the author on Oct 23 @andrewm4894
Keep doogfooding on personal scout stuff - once pricing lands want to be able to scaffold or help users set up personal scouts if they want. @andrewm4894
might be a few small features needed for this
Ship billing side integration (and some fixes), so we can turn on new billing with a feature flag (70% of the way there, got an agent noodling on some details) @oliverb123
Triage our security tickets - this slipped, needs to be done, will probably need to pull folks in depending on areas @oliverb123
Start working on pipeline the thirdening @oliverb123
Set up the onboarding folks so they're good to go with the customer account audit stuff (need to provision some credentials) @oliverb123
Need to merge monolith PR to use that CH user - open, stamped and green, but a bit of a risky PR, so will wait till monday morning @oliverb123
Work with agent-infra & billing teams on overall AI pricing topics (doc in progress, deal with feedback next week) @annikaschmid
check customers on new pricing & set up some calls @annikaschmid
Ship the experiment with the new onboarding (GitHub-first version and UI-first version). @skoob13
Send an email notification when the org gets a first report. @skoob13
Determine the right time for Self-Driving adoption (don't enforce it in regular onboarding). @skoob13
Figure out the platform APIs and schedule more interviews with product teams (there is a thread in #dev). @skoob13
pretty short sprint from me, as I was ill for half of it
add improvements for repo selection in Slack bot (use memory) @sortafreel
do the first round of "what scouts could be mighty useful for your product" to at least 5 product teams, discuss, merge fixes, create scheduled scouts @sortafreel
clean up the scout orchestration/self-improvement toolkit (weird bugs here and there) @sortafreel
look into improving scout suggestions (too narrow) @sortafreel
Low priority / side quests
Inbox ranking in EU, get serving going @andrewm4894
🔬 Goal 1: Refine the core of Replay Vision
🌍 Goal 2: Replay Vision everywhere, but better
🔗 Goal 3: Vastly improve the integration between Session Replay and Replay Vision
🤝 Goal 4: Stay close to our customers
❤️ Goal 5: Show Session Replay some love
Retro ✅ 🔴 🟡 🚫
✅ @ksvat Finalize, release and test experiment-scanners
✅ @fasyy612 Build and test what-to-watch prototype for Session Replay
✅ @fasyy612 Kill unused Session Replay features
🟡 @fivestarspicy Cost-tagging crypto shredding
🟡 @fivestarspicy Follow up w/ event team wrt customer-meeting @ small team offsite in SF
✅ @fivestarspicy Set up scout to look for interesting or novel scanners
✅ @ksvat Follow up on Jev ranking the what-to-watch tab experiment
🟡 @TueHaulund Follow up on labelled-data test suite once v3 recordings are labelled
✅ @TueHaulund Update scanner creation flow and rerun experiment
High priority
@ksvat Get started on funnel scanners @ksvat Figure out how to kill old experiment targetting
@fasyy612 Generate examples for Session Replay UI rework to iterate on (dev mode vs simple mode) @fasyy612 Continuously follow up on W2W tab results and iterate on empty state
🟢 @jabahamondes integrate the search table with posthog conversion goals
🟢 @jabahamondes onboarding update -> suggest paid ads sources that are already being user in events
🟡 @jabahamondes suggest better conversions goals based on events
@charlesvien: ship TaskProfile implementation, keeping this focused on the initial contract rather than migrating every product
@charlesvien: move task status onto Task and migrate existing products
@charlesvien: get agent-server run callbacks reviewed and shipped
@charlesvien: assist with routing migration to MAP program (cutover schedule ~Nov 9th)
@jonathanlab: Simplify code ownership in agent package, simplify/harden agent server
@jonathanlab: Figure out biggest wins for agent boot times, get smaller improvements w.r.t. boot time
@brandonleung: Migrate replay vision and desktop over
@brandonleung: Billing concept for gateway and tasks; carve out org-based limits, caps, ceilings, and wallets while supporting team-based (subset of org)
@tatoalo: hogference scaling due to maintain replay vision traffic
@tatoalo: agent egress proxy work (this depends on RFC approval tho, external, decision deadline is Oct. 23rd)
Support hero (+ team): triage incoming issues and drain the remaining review queue
Low priority / side quests
@jonathanlab: ensure everything is off the legacy gateway, rip out the fallbacks to the legacy gateway in favor of retries to the new gateway, some products are using the legacy gateway as a fallback (phai, workflows, etc)
@jonathanlab: try out smaller agent runtime where we just run in a worker, relying on pi's codemode (if task is only meant for data analysis)
@charlesvien: Extract shared-ai alerts that we own into alerts-agent-infra, talk to other teams about them doing the same for their stuff. This large AI group is a bad pattern.
@charlesvien: the agent streaming proxy is a orphaned part of our sandbox architecture. It was a quick solution that never got maintained, many clients are still using Django SSE streams.
@charlesvien: bring command center back to the new web UI for fun/experiment?
@tatoalo: side quests, change sandbox provider, experiment, fun (?)
@brandonleung: Clean up our openweight model handling
Launch realtime cohorts and make behavioral targeting the reason to choose PostHog flags 🟡
Plan for scale and reduce the cost of operating Feature Flags 🟡
Realtime flag definitions ⚪
"Auto" rollback and rollout 🟡
Make flags the default way developers ship end-to-end ⚪
Make flag evaluation correct and consistent with cohorts and Product Analytics 🟡
Details
⚪ = Not Started
🟡 = In Progress
🟢 = Completed
🔴 = Won't complete
🔵 = Abandoned
Retro
Phil continued moving flag calls to flag_evaluations. Every ingestion lane now forks flag calls into the table, every flag view reads from it in mode 1, and insights can chart flag calls from it. The table also stores person columns and properties, collapses duplicate calls, resolves test account filters and the {filters} placeholder, and deletes person properties on request. Flag calls reach destinations in flag_evaluations_mode 2. New action steps and cohort criteria can no longer use $feature_flag_called, and SQL that reads it from events shows a warning. Flags whose dependency failed now fail, and persons DB work in flag evaluation runs under a request deadline. Patricio backfilled legacy secret tokens into project secret API keys, added a kill switch and a shadow check, and turned off legacy team secret token auth. Matheus made cohort processor restarts lossless and gave each pod its own checkpoints, the first steps toward running the processor as multiple pods. Matheus also added 10 teams to the realtime cohort pipeline. Gustavo fixed four flags UI issues, including a warning about a taken flag key while typing, and four cohort bugs. The rollback suggestions RFC is in review. James merged the stale flag health check gate, a variant naming fix, and a rollout timeline fix before leaving the team.
Activity
langesven commentedon Oct 14, 2026
Team Cloud Platform
Quarter Goals
Retro
Details
High Prio
aurora_user_management/v3work, pgbouncer hubs (compute), cross-az reduction (traffic) @langesvenLow Prio
Side Quests
✅=finished 🟡=in progress 🔴=won't finish ⚪=not started
Plan
High Prio
PreferClosewas introducedLow Prio
hogstation/? @k33lanSide Quests
MichaelKutsch-ph commentedon Oct 14, 2026
Team Cloud Foundations
Quarter Goals
Mega issue: https://github.com/PostHog/posthog-cloud-infra/issues/10708
Retro
Details
High Prio
Low Prio
page_in_dev@adickinson72eks-posthogmodule replacing upstream v19; moves-only switch proven in playgroundside quest
✅=finished 🟡=in progress 🔴=won't finish ⚪=not started
Plan
High Prio
Low Prio
side quest
tomasfarias commentedon Oct 14, 2026
Team Batch Exports
Support hero: @tomasfarias / @rossgray
Quarter goals
Retro
Details
✅ Resource based allocator
🟡 Auto-scaler for batch export workers
🟡 HogQL batch exports
🟡 Support for different modes (only for warehouse destinations):
🟡 APPEND
🔴 FULL_REFRESH
🟡 MERGE (requires both key fields)
🔴 Deprecation of $set/$set_once
✅=finished 🟡=in progress 🔴=won't finish ⚪=not started
High priority
HTTP batch export migrations
HogQL batch exports
Memory auto-scaler for batch export workers
Low priority
Product isolation
Cost management
Batch exports powers SQL editor
Batch exports powers insights exports
Improve SLA alerts
Integration clean up
meikelmosby commentedon Oct 14, 2026
Team Workflows
Time Off
Quarter goals - Q4 2026 objectives
Details
✅=finished, 🟡=in progress, 🔴=won't finish, ⚪=not started
Retro
Details
@dmarchuk
Low priority:
@mayteio
@meikelmosby
This Sprint
@dmarchuk
@mayteio
@meikelmosby
@abheek9
rorylshanks commentedon Oct 14, 2026
Team ClickHouse
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
High priority
Low priority / side quests]
🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started
dustinbyrne commentedon Oct 14, 2026
Team Client Libraries
Support hero: @turnipdabeets then @dustinbyrne
Next sprint planning @marandaneto
OOO: 1 day @marandaneto, @ioannisj, @turnipdabeets
Quarter goals
Q4 2026 objectives
@posthog/browserv2 GA@posthog/nextv1 GAposthog-kmpv1posthog-android-surveys-composev1Retro
Details
High priority
@_spiclose()flushes queued events before stopping (every other SDK already does; Android fixed in RuntimeWarning: DateTimeField Event.timestamp received a naive datetime #709)onFeatureFlagslistener (645 fix adding dashboarditem with set dates #647)compliance/posththog-ios.md@posthog/browserSDK extension changes @dustinbyrne@posthog/browserclean up, deduplication @dustinbyrneLow priority / side quests
Plan
High priority
@posthog/browserdocumentation and pre-release rollout @dustinbyrne-
@posthog/browsersnippet installation @dustinbyrneLow priority / side quests
Are any other teams impacted by this plan? If so, tag them here
🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started
jurajmajerik commentedon Oct 15, 2026
Team Experiments 🧪
Retro
Sprint #19, from Oct 5, 2026 to Oct 16, 2026
Anders
Flags V2
feature-flag-rules-v2-editor, boolean v2 flags can be created and edited in the UI, with ordered targeted-release and percentage-rollout rules (#107734).attrand the bare message indetail(#109452). The editor shows each error under its field, and API and MCP clients no longer parse the message.Refactors, fixes, etc.
$feature_flag_calledand$experiment_exposure. They keep counting exposures after their organization moves toflag_evaluations(#114399).control(#115227). It renders from a typed view, and the formatter moved into the experiments product (#115262).Juraj
Experiment query performance
Experiment fixes
status >= 200work on string properties (#111714) and let the API accept metric breakdowns (#113698).Warehouse-native experiments
Playground
Prompts
Marcel
Diagnosis skill
Health layer scaffolding, beginning of migration & UI
Other
Rodrigo
Metrics recalculation
Loading-state fixes
Experiments health
Experiment header
Product folder migration
Ruby
Wrote the Health Engine Needs research doc (
research/2026-10-07-Health-Engine-Needs.md)Roast changes to New Experiment UX: variant screenshots (#108053), Replay Vision card (#108107), step tracking (#108105), code as last step (#108106), auth-persistence question (#108082), wizard guide + Ask AI (#108052)
MCP Error reduction efforts: call-shape/alias telemetry (#101133), scalar constraints in exec info (#101164), redirect for removed experiment-get-all tool (#103254), collapse long prompt snippets (#102656).
Pricing/billing: grandfathered-plans RFC (#1240) updated
Prompts NPS launched Oct 1
NPS-to-Slack publishing bug in #team-workflows (still broken Oct 14).
PR #116867 - Papercuts: cohort add-users CTA reported in #papercuts; draft
ETag 304 billing impact sized (+$37k ≈ +11% US flag MRR); realtime-cohorts cost-tagging (charts #15897); Email comms to those impacted
Website investigation for product pages + use of scanner
Comparison of revenue attribution methods.
Supporting meetings on experiment health checks / mutually exclusive experiments architecture; ElevenLabs call on experiment isolation and multi-test interference.
Wrote up OST on new UX
Sprint Goals
Sprint #20, from Oct 19, 2026 to Oct 30, 2026
Anders
Local end to end testing of flags v2 with SDK, local evaluation, etc
Spec proposal for API design for v2 changes ready for review
Remove the legacy query runners
Juraj
Marcel
Rodrigo
Implement more complex, non-deterministic checks on the health workflow.
Improve performance of the daily scheduled recalculation to prevent capacity issues.
Some more tuning of the recalculation workflow.
Frontend refactor on the experiment metric logic to remove some redundancies.
Automate product migration.
Ruby
Finish health engine research doc, and give feedback to team.
Write an RFC on no-code, incl. marketing ICP distribution across PH, and current experiment users. Incl. what companies are doing today, existing bugs raised, and whether our current approach is what we should be doing, until more investment.
Write up initial product page investigation into RFC concerning product pages for exp and feature flags on website, and improvements needed for website.
Consolidate how we validate products that we want to build - aka. eng delve in and how we can double check.
Investigate how we can build auto-flags cleanup
Make progress on cleaning up or tables
Warehouse-native needs: identifying users to share MVP with
vdekrijger commentedon Oct 15, 2026
Team Query Performance
Support hero: @georgemunyoro
⚪ = Not Started · 🟡 = In Progress · 🟢 = Completed · 🔴 = Won't complete · 🔵 = Abandoned · 🟣 = Ongoing
Quarter goals
The Q4 goals and George's additional compiler objective are still open. These are the current proposals;
Retro
Notes: https://posthog.slack.com/docs/TSS5W8YQZ/F0B741LSUVA
Tasks
Andy
Sandy
Vasco
sha1()support #116004.George
Mike
Plan
High priority
Sandy
George
Andy
Mike
Vasco
Low priority / side quests
Are any other teams impacted by this plan? If so, tag them here
lucasheriques commentedon Oct 16, 2026
Team MCP Analytics
Support hero: @gesh (week 1), @lucasheriques (week 2)
Off during the sprint: @lucasheriques (week 1), @gesh (week 2, Mon–Wed)
OKRs
Details
See all goals in detail here
Retro
Details
⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = Abandoned 🟣 = Ongoing@lucasheriques
@gesh
@mjwarren3
Plan
@lucasheriques
@gesh
@mjwarren3
Generated by Claude Code
skoob13 commentedon Oct 16, 2026
Team Self-Driving
Support hero: @andrewm4894 @mikaylathompson
Off during the sprint:
Quarter goals
Team objectives. Quarter-level status to confirm; this update covers the sprint commitments and their progress.
Retro
Tasks
High priority
Low priority / side quests
Plan
High priority
[Mobile] Launch PostHog mobile. Start with internal dogfooding. Get it into both app stores and either get it launched into the public app stores or, at minimum, get a publicly accessible beta version. @cvolzer3
[Mobile] Get with Alex V and launch V1 of support in PostHog mobile @cvolzer3
[Mobile] Do customer interviews on the mobile use cases in self-driving and agent-mediated workflows @cvolzer3
[Mobile] Work on alerts (configurable notifications for the mobile app) and tie that back into the alerts platform @cvolzer3
[Platform] Iterate on the MCP tooling necessary for external agents to interact with reports @cvolzer3
[General] Iterate on the core reports experience from a mobile & agent-mediated perspective @cvolzer3
Inbox ranking: kick off the default-sort experiment (control vs open, 4 weeks), check the first prod nn training run, then project vectors and after that user vectors for more personalization @andrewm4894
Report checks make sure operationally working well and help see how can fit or be part of monitoring work if useful. @andrewm4894
Scouts pre-checks: confirm the error tracking, replay and replay vision pre-checks actually run #115934, #115933, #115935, then logs, apm, insight alerts and the data ones @andrewm4894
Scouts: retire the revenue analytics scout by Oct 22 #117599, auto-pause silent configs, tool access enforcement and settings UI @andrewm4894
Datadog inbox source: land #113615, sync with the author on Oct 23 @andrewm4894
Inbox scopes step 1 #117496, unblocks user-authored reports @andrewm4894
Get dogfooding scout trials etc @andrewm4894
Keep doogfooding on personal scout stuff - once pricing lands want to be able to scaffold or help users set up personal scouts if they want. @andrewm4894
Ship billing side integration (and some fixes), so we can turn on new billing with a feature flag (70% of the way there, got an agent noodling on some details) @oliverb123
Triage our security tickets - this slipped, needs to be done, will probably need to pull folks in depending on areas @oliverb123
Start working on pipeline the thirdening @oliverb123
Set up the onboarding folks so they're good to go with the customer account audit stuff (need to provision some credentials) @oliverb123
Need to merge monolith PR to use that CH user - open, stamped and green, but a bit of a risky PR, so will wait till monday morning @oliverb123
Work with agent-infra & billing teams on overall AI pricing topics (doc in progress, deal with feedback next week) @annikaschmid
check customers on new pricing & set up some calls @annikaschmid
growth review @annikaschmid
Close the loop @mikaylathompson
report assignment + report surfaces @dmarticus
Interview customers about the Inbox experience + start scheduling calls for user interviews @dmarticus
Ship the updated free tier. @skoob13
Check other places where we need to change billing info (website, Joe's list, web app). @skoob13
Check from the legal perspective whether we need to notify people about changing the free tier. @skoob13
Ship the UI-first onboarding. @skoob13
Ship the experiment with the new onboarding (GitHub-first version and UI-first version). @skoob13
Send an email notification when the org gets a first report. @skoob13
Determine the right time for Self-Driving adoption (don't enforce it in regular onboarding). @skoob13
Figure out the platform APIs and schedule more interviews with product teams (there is a thread in #dev). @skoob13
Low priority / side quests
Are any other teams impacted by this plan? If so, tag them here
🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started
hpouillot commentedon Oct 19, 2026
Team Error Tracking
Retro 🟢 🔴 🟡 🚫
@ablaszkiewicz - cymbal path resolution service 🚫 Incident took precedence
@ablaszkiewicz - error tracking kill switch 🟢 in draft mode
@ablaszkiewicz - wizard changes for ET setup (faster, more reliable) 🟢
@fivestarspicy - user interviews 🟢
@fivestarspicy - pricing / subs analysis 🟡 in progress
@hpouillot - alerting follow-ups 🟡
@hpouillot @JamesPatrickGill - Jev based grouping 🟢
Objectives for the quarter
High priority
@hpouillot - finish alerting changelog
@hpouillot - fingerprint table index
@hpouillot - rollout posthog-js fetch changes
@hpouillot - rollout severity inference and grouping
@ablaszkiewicz - cymbal path resolution service
@JamesPatrickGill - Issue summary
@JamesPatrickGill - side quest: Issue tracker improvement / fix
@JamesPatrickGill - side quest: Cymbal latency
@JamesPatrickGill - side quest: APM discussion
@fivestarspicy - pricing RFC improvements
thmsobrmlr commentedon Oct 19, 2026
Team Product Analytics
Support hero: @MattPua
Off during the sprint:
Retro
Details
High priority
Low priority / side quests
Plan
High priority
Low priority / side quests
Are any other teams impacted by this plan? If so, tag them here
richardsolomou commentedon Oct 19, 2026
Team Context & MCP
Support hero: @richardsolomou
Off during the sprint: @JakeRuth all sprint; @richardsolomou October 28; @adboio October 30.
Quarter goals
Goals
Retro
Details
@richardsolomou
@adboio
@JakeRuth
🟢 =finished 🟡=in progress 🔴=won't finish ⚪=not started
Plan
High priority
@richardsolomou
@adboio
@JakeRuth — off throughout.
Low priority / side quests
Are any other teams impacted by this plan? If so, tag them here
Radu-Raicea commentedon Oct 19, 2026
Team AI Observability
Retro
Details
Last sprint was half in the mixed team offsite, then 1 day off for the engineers.
Plan (W43, W44)
TueHaulund commentedon Oct 19, 2026
Team Session Replay
Support hero:
@ksvat
OKRs
🔬 Goal 1: Refine the core of Replay Vision
🌍 Goal 2: Replay Vision everywhere, but better
🔗 Goal 3: Vastly improve the integration between Session Replay and Replay Vision
🤝 Goal 4: Stay close to our customers
❤️ Goal 5: Show Session Replay some love
Retro ✅ 🔴 🟡 🚫
✅ @ksvat Finalize, release and test experiment-scanners
✅ @fasyy612 Build and test what-to-watch prototype for Session Replay
✅ @fasyy612 Kill unused Session Replay features
🟡 @fivestarspicy Cost-tagging crypto shredding
🟡 @fivestarspicy Follow up w/ event team wrt customer-meeting @ small team offsite in SF
✅ @fivestarspicy Set up scout to look for interesting or novel scanners
✅ @TueHaulund Implement programmatically triggered observations
✅ @ksvat Follow up on Jev ranking the what-to-watch tab experiment
🟡 @TueHaulund Follow up on labelled-data test suite once v3 recordings are labelled
✅ @TueHaulund Update scanner creation flow and rerun experiment
High priority
@ksvat Get started on funnel scanners
@ksvat Figure out how to kill old experiment targetting
@fasyy612 Generate examples for Session Replay UI rework to iterate on (dev mode vs simple mode)
@fasyy612 Continuously follow up on W2W tab results and iterate on empty state
@fivestarspicy Update cost-tagging
@fivestarspicy MCP usage dashboard
@fivestarspicy Follow up w/ event team wrt customer-meeting @ small team offsite in SF
@TueHaulund Meet with Google sales team and get us started on the path to a GCMA and ZDR
Side quest
@TueHaulund Prep for RV promo event in CPH
@ksvat Prep for RV promo event in LA
@TueHaulund Prep for small team offsite in SF
@fivestarspicy PMF survey for Session Replay and Replay Vision
@fivestarspicy Brainstorm potential new scanner types after funnel scanner
lricoy commentedon Oct 19, 2026
Team Web Analytics
Legend
⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete
Support hero
@jordanm-posthog
OOO 26-6th Nov
OOO Arthur travelling back
Retro:
Details
High priority
🟢 @arthurdedeus unalive vitally
🟡 @arthurdedeus person group membership
🟢 @arthurdedeus account details pages' new widgets
🟢 @arthurdedeus tackle issues from the onboarding team
🟢 @jordanm-posthog historical heatmaps variants
🟡 @jordanm-posthog launch AEO (alpha tag)
🟢 @jordanm-posthog cost observability for services
🟢 @jabahamondes integrate the search table with posthog conversion goals
🟢 @jabahamondes onboarding update -> suggest paid ads sources that are already being user in events
🟡 @jabahamondes suggest better conversions goals based on events
🟢 @mjwarren3 marketing analytics pricing RFC
🟡 @lricoy launch AEO (alpha tag)
🟡 @lricoy support work for breached escalated tickets
🟢 @lricoy move very large EU customer
High priority
@jordanm-posthog and @lricoy launch AEO (alpha tag)
@lricoy backfill sessions v3
@lricoy run our eval list of prompts against wizard pages
@arthurdedeus work on reliability of CA
@arthurdedeus nail email matching logics after last sync
@arthurdedeus person-group membership
@jabahamondes get recommendations for google Ads + Search console data
@jabahamondes business recommendations mcp for google ads
@mjwarren3 finalize Marketing Analytics pricing RFC
@mjwarren3 do-alive customer analytics end user product
charlesvien commentedon Oct 20, 2026
Team Agent Infrastructure
Support hero: Alessandro first week. Charles covering Brandon’s rotation while he’s away in second week.
Off during the sprint:
Quarterly goals
https://posthog.com/teams/agent-infrastructure
Plan
High priority
Low priority / side quests
Are any other teams impacted by this plan? If so, tag them here
haacked commentedon Oct 20, 2026
Team Feature Flags
Support hero:
Off during the sprint: @haacked: 10/23 and 10/26
Quarter goals
Link to goals
Details
⚪ = Not Started 🟡 = In Progress 🟢 = Completed 🔴 = Won't complete 🔵 = AbandonedRetro
Phil continued moving flag calls to
flag_evaluations. Every ingestion lane now forks flag calls into the table, every flag view reads from it in mode 1, and insights can chart flag calls from it. The table also stores person columns and properties, collapses duplicate calls, resolves test account filters and the{filters}placeholder, and deletes person properties on request. Flag calls reach destinations inflag_evaluations_mode2. New action steps and cohort criteria can no longer use$feature_flag_called, and SQL that reads it from events shows a warning. Flags whose dependency failed now fail, and persons DB work in flag evaluation runs under a request deadline. Patricio backfilled legacy secret tokens into project secret API keys, added a kill switch and a shadow check, and turned off legacy team secret token auth. Matheus made cohort processor restarts lossless and gave each pod its own checkpoints, the first steps toward running the processor as multiple pods. Matheus also added 10 teams to the realtime cohort pipeline. Gustavo fixed four flags UI issues, including a warning about a taken flag key while typing, and four cohort bugs. The rollback suggestions RFC is in review. James merged the stale flag health check gate, a variant naming fix, and a rollout timeline fix before leaving the team.Details
@haacked
flag_evaluations migration:
Stop advertising
$feature_flag_called:Personhog client and flags DB timeouts:
Flag dependency failures:
HogQL filter fixes:
Variant key validation:
Cohorts:
Replay and remote config:
Other:
@gustavohstrassburger
Flags UI fixes:
Cohorts fixes:
In progress:
@JamesPatrickGill
Flags fixes:
Infrastructure:
@matheus-vb
Multi-pod cohort processor:
Realtime cohort rollout:
Other:
@patricio-posthog
Secret API key migration:
Other:
Plan
Project Board
High priority
@haacked
flag_evaluationsphase 1 and turn it on for new orgs on 10/27flag_evaluationsrouting@gustavohstrassburger
@matheus-vb
@patricio-posthog
groupsSide quests
completed an event for the first timeis missing