-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Removes env var control on session replay #2081
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @jonkafton, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
Summary of Changes
This pull request removes the environment variable-based control for Posthog session replay. The original approach required changes to the infrastructure and a full release to toggle session replay, and it was an all-or-nothing setting. The new approach uses a feature flag within the Posthog dashboard for more granular control. This PR removes the POSTHOG_ENABLE_SESSION_RECORDING
environment variable from the production and release candidate workflows, the Dockerfile, and the ConfiguredPostHogProvider
component.
Highlights
- Session Replay Control: The pull request shifts control of Posthog session replay from an environment variable to a feature flag within the Posthog dashboard.
- Workflow Updates: The
POSTHOG_ENABLE_SESSION_RECORDING
environment variable is removed from the production and release candidate workflows. - Dockerfile Modification: The Dockerfile is updated to remove the
NEXT_PUBLIC_POSTHOG_ENABLE_SESSION_RECORDING
environment variable. - Component Update: The
ConfiguredPostHogProvider
component is updated to remove the logic that disables session recording based on thePOSTHOG_ENABLE_SESSION_RECORDING
environment variable.
Changelog
Click here to see the changelog
- .github/workflows/production.yml
- Removed
POSTHOG_ENABLE_SESSION_RECORDING
from the environment variables passed to the job (line 55). - Removed
NEXT_PUBLIC_POSTHOG_ENABLE_SESSION_RECORDING
from the environment variables set for the next build (line 79).
- Removed
- .github/workflows/release-candidate.yml
- Removed
POSTHOG_ENABLE_SESSION_RECORDING
from the environment variables passed to the job (line 55). - Removed
NEXT_PUBLIC_POSTHOG_ENABLE_SESSION_RECORDING
from the environment variables set for the next build (line 79).
- Removed
- frontends/main/Dockerfile.web
- Removed the
NEXT_PUBLIC_POSTHOG_ENABLE_SESSION_RECORDING
argument and environment variable (lines 127-128).
- Removed the
- frontends/main/src/page-components/ConfiguredPostHogProvider/ConfiguredPostHogProvider.tsx
- Removed the
POSTHOG_ENABLE_SESSION_RECORDING
constant (lines 9-10). - Removed the logic that disables session recording based on the
POSTHOG_ENABLE_SESSION_RECORDING
environment variable (lines 18-19).
- Removed the
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command>
or @gemini-code-assist <command>
. Below is a summary of the supported commands.
Feature | Command | Description |
---|---|---|
Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/
folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Did you know?
Feature flags are also known as feature toggles, feature switches, and conditional features.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request removes the environment variable control for PostHog session replay, which is a good move towards managing it via feature flags in the PostHog dashboard. The changes look straightforward and address the intended goal.
Summary of Findings
Merge Readiness
The changes are straightforward and address the intended goal of removing environment variable control for PostHog session replay. I am unable to directly approve the pull request, and recommend that others review and approve this code before merging. The pull request appears ready for merging.
What are the relevant tickets?
Relates to mitodl/ol-infrastructure#2978
Description (What does it do?)
Controlling Posthog session replay by env var is restrictive as it needs a change on ol-infrastructure and subsequent Learn release, plus is all-or-nothing per environment. On discussion, we'll control it by linked feature flag in the Posthog dashboard.
This PR removes the disabling by default, which is expected to not be overridable.
Plus the original PR to add these in had an error.