-
Notifications
You must be signed in to change notification settings - Fork 31
macOS: Integrate with C-S-S to clear chat history #2203
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
base: rachel/chat-history-burn-logic
Are you sure you want to change the base?
macOS: Integrate with C-S-S to clear chat history #2203
Conversation
Privacy Review task: https://app.asana.com/0/69071770703008/1211637712296201 |
c9a5040
to
9171209
Compare
Rename feature flag to match remote flag
8c0d513
to
379c319
Compare
case openFireWindowByDefault | ||
case behaviorMetrics | ||
case dataImport | ||
case duckAiDataClearing |
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.
The code uses "AI Chat" to refer to duck.ai, since duck.ai is the marketing name (and it did change in the past), it's better to keep using AI Chat to be consistent in the codebase.
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.
Makes sense. duckAiDataClearing
is the C-S-S feature name (already in C-S-S and privacy config). I updated the local feature flag to match it, but I could keep using AI Chat in the local feature flag and only use Duck.ai to refer to the flag already in the privacy config.
|
||
/// https://app.asana.com/1/137249556945/project/72649045549333/task/1211185922947392?focus=true | ||
case clearAIChatHistory | ||
case duckAiDataClearing |
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.
Same as mentioned before. Duck.ai -> AI Chat
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.
Works as described. Small nit related to a naming convention. Nice work!
Task/Issue URL: https://app.asana.com/1/137249556945/project/72649045549333/task/1211370814674973?focus=true
Tech Design URL: https://app.asana.com/1/137249556945/project/481882893211075/task/1211397300866537
CC: @diegoreymendez
Description
This is the final PR to add support for clearing chat history from the fire button or delete history dialog.
It adds the integration with the new C-S-S script, launching a headless web view and triggering the script to clear chat history from local storage and indexedDB. It also adds pixels for the feature.
Testing Steps
savedAIChats
key and in Indexed Databases thesavedAIChatData
DB >chat-images
store is empty.Impact and Risks
Medium: Could disrupt specific features or user flows
What could go wrong?
Quality Considerations
Notes to Reviewer
Internal references:
Definition of Done | Engineering Expectations | Tech Design Template
Note
Adds a headless C‑S‑S user script flow to clear Duck.ai chat history with async Fire integration, introduces
duckAiDataClearing
flag, and records new pixels for setting, request, success, and failure.AIChatDataClearingUserScript
subfeature and headlessWKWebView
flow inAIChatHistoryCleaner
to clear Duck.ai data viaContentScopeUserScript
(with timeout, teardown, and error pixeling).AIChatHistoryCleaner.cleanAIChatHistory
made async; shows option based on new flag and AI Chat usage; fires success/failure pixels.FireProtocol
/Fire
now awaitburnChatHistory
; calls updated in Fire dialog/popover, main menu, and history delete paths; pixel fired when delete is requested.clearAIChatHistory
withduckAiDataClearing
across app and privacy config; map to remote development; category updated.AIChatPixel
events: auto‑clear toggled, delete requested/successful/failed; fire from Data Clearing preferences and delete flows; pixel definitions updated.privacyConfig
intoAIChatHistoryCleaner
; add new source files to Xcode project.duckAiDataClearing
and new initializer; adjust integration mock signatures.Written by Cursor Bugbot for commit cb05fde. This will update automatically on new commits. Configure here.