Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
363 commits
Select commit Hold shift + click to select a range
5c7183d
Moved Assistant to Sidebar
Naveen015 Oct 22, 2025
76e3ebd
Fixed Chat route
Naveen015 Oct 23, 2025
1d90dfa
Bug Fix - chat node; Simplified prompts
Naveen015 Oct 23, 2025
3ff8b54
Merge pull request #72 from mozilla-firefox/main
AdamKershner Oct 23, 2025
668297d
Merge pull request #73 from Kahana-LLC/naveen-updates
AdamKershner Oct 23, 2025
5b05963
Fixed Graph recursion
Naveen015 Oct 24, 2025
6ac06f3
Merge upstream mozilla-firefox/main into main
AdamKershner Oct 27, 2025
244b926
Merge pull request #75 from mozilla-firefox/main
AdamKershner Oct 27, 2025
1ab0aaa
Merge pull request #76 from Kahana-LLC/naveen-updates
AdamKershner Oct 27, 2025
2a8419c
context update
Oct 27, 2025
bf3ab5f
context length and tts updates
Oct 28, 2025
366abd7
Merge pull request #77 from mozilla-firefox/main
AdamKershner Oct 28, 2025
c422abd
Merge upstream/main into main: resolve search preferences conflict by…
AdamKershner Oct 30, 2025
16ec78c
Merge ashwin_updates into main (prefer PR changes)
AdamKershner Oct 31, 2025
ac829c4
Assistant sidebar: load bootstrap in browser.xhtml and integrate with…
AdamKershner Oct 31, 2025
eae00ff
Merge pull request #83 from mozilla-firefox/main
AdamKershner Nov 3, 2025
257ed21
Merge pull request #84 from mozilla-firefox/main
AdamKershner Nov 4, 2025
9b9f2a7
Merge pull request #85 from mozilla-firefox/main
AdamKershner Nov 4, 2025
236286e
Merge pull request #86 from mozilla-firefox/main
AdamKershner Nov 7, 2025
479ea30
splitview, hubs integration with firefox bookmarks
Nov 11, 2025
1b0b069
Merge pull request #87 from mozilla-firefox/main
AdamKershner Nov 13, 2025
1907df3
Merge pull request #88 from mozilla-firefox/main
AdamKershner Nov 13, 2025
594f24a
Merge pull request #82 from Kahana-LLC/feature/assistant-sidebar-and-…
AdamKershner Nov 13, 2025
1b7b689
Merge pull request #89 from Kahana-LLC/ashwin_updates_1
AdamKershner Nov 13, 2025
97899c8
Merge pull request #90 from mozilla-firefox/main
AdamKershner Nov 14, 2025
24df2a7
DEBUG: assistant.ui.js and preview.html — still debugging, DO NOT MERGE
blackhat955 Nov 16, 2025
5e67572
Merge PR #92: merge upstream from mozilla-firefox/main (438 commits)
AdamKershner Nov 18, 2025
4058d8f
Update branding with Kahana logo and remove 'Check authentication' fr…
AdamKershner Nov 19, 2025
9b851de
Merge pull request #93 from Kahana-LLC/test-release-1.0
AdamKershner Nov 19, 2025
f080f50
Merge upstream main: resolve conflict in main.inc.xhtml
AdamKershner Nov 19, 2025
4dc5513
Merge pull request #95 from mozilla-firefox/main
AdamKershner Nov 20, 2025
2aff667
fixed AI Assistant's send, mic icons and background theme
likhithaguggilla Nov 20, 2025
ad7224f
Merge PR #96: merge upstream from mozilla-firefox:main
AdamKershner Nov 21, 2025
06f3773
Merge PR #97: Debug/assistant preview fix icons
AdamKershner Nov 21, 2025
b792597
Revert "Debug/assistant preview fix icons 2025 11 20"
AdamKershner Nov 21, 2025
62822ad
Merge pull request #98 from Kahana-LLC/revert-97-debug/assistant-prev…
AdamKershner Nov 21, 2025
22eed1f
Merge pull request #99 from mozilla-firefox/main
AdamKershner Nov 24, 2025
f2f1628
Fix login persistence, implicit any error, and missing resources
Naveen015 Nov 24, 2025
9d3d000
Fix login persistence across windows using Services.logins
Naveen015 Nov 24, 2025
882f13d
Merge pull request #101 from Kahana-LLC/fix-login-persistence
AdamKershner Nov 24, 2025
0cc21ac
Merge pull request #100 from mozilla-firefox/main
AdamKershner Nov 24, 2025
b535624
Merge pull request #102 from mozilla-firefox/main
AdamKershner Nov 25, 2025
58b742f
Merge pull request #103 from mozilla-firefox/main
AdamKershner Dec 1, 2025
f7e97d1
Merge branch 'pr-104'
AdamKershner Dec 11, 2025
181af3a
Add floating/draggable assistant overlay and remove Check Authenticat…
AdamKershner Dec 11, 2025
721a1f9
Merge pull request #105 from Kahana-LLC/feature/assistant-ui-improvem…
AdamKershner Dec 11, 2025
3e7603a
feat: replace embedding search with MiniSearch and improve hub indexing
Dec 11, 2025
357e66d
Merge pull request #106: merge upstream
AdamKershner Dec 12, 2025
96aca3c
chore: stop tracking node_modules and update build artifacts
Dec 13, 2025
c2a330a
chore: update package dependencies and build bundle
Dec 13, 2025
4d7fb03
Oasis branding changes
aj0671 Dec 13, 2025
e939dca
Merge PR #106: merge upstream
AdamKershner Dec 15, 2025
5de2a59
Merge PR #107: Oasis branding changes
AdamKershner Dec 16, 2025
55f0fb5
Merge PR #108: merge upstream
AdamKershner Dec 16, 2025
7de1e1b
Merge PR #109: Oasis Assistant MiniSearch improvements
AdamKershner Dec 16, 2025
e51cb80
Merge pull request #110 from mozilla-firefox/main
AdamKershner Dec 16, 2025
0730b7a
Redesign assistant UI with clean header and updated color scheme
Dec 18, 2025
3ba6363
Add bubble chat UI with authentication banner
Dec 18, 2025
f57d8b3
Merge pull request #111 from mozilla-firefox/main
AdamKershner Dec 18, 2025
a8897ee
added feedback button
SAIDEEP1216 Dec 19, 2025
5df1832
UI Updates: Enhanced Oasis AI Assistant interface
SAIDEEP1216 Dec 25, 2025
5ffb8cf
Merge pull request #112 from Kahana-LLC/UI_Updates_1
AdamKershner Dec 26, 2025
e9362cb
Fix jittery floating window drag
Dec 26, 2025
4c4f8f9
Add empty state with welcome image and text to assistant chat
Dec 26, 2025
b71cdfa
Merge PR #113: Upstream Firefox updates
AdamKershner Dec 28, 2025
5d2effb
Merge pull request #113 from mozilla-firefox/main
AdamKershner Dec 29, 2025
aa30cc8
Merge pull request #114 from Kahana-LLC/UI_Updates_1
AdamKershner Dec 29, 2025
45f31e8
Implement Open Hub enhancements and Remove Tab from Hub command
Naveen015 Dec 29, 2025
f7293d8
Merge branch 'main' into fix-login-persistence
Naveen015 Dec 29, 2025
ecd7557
Implement Subscription and Rate Limiting System
Naveen015 Dec 29, 2025
134ab7e
Fix subscription usage local persistence and assistant message duplic…
Naveen015 Dec 29, 2025
ebb1dcc
add mixpanel to track mic, auth, click, any more for more detail che…
blackhat955 Dec 30, 2025
ee3f9d3
Merge pull request #115 from mozilla-firefox/main
AdamKershner Dec 30, 2025
53f31cf
Merge pull request #116 from Kahana-LLC/subscription-rate-limits
AdamKershner Dec 30, 2025
740ab9e
Merge pull request #117 from mozilla-firefox/main
AdamKershner Dec 31, 2025
adbad47
Merge pull request #118 from Kahana-LLC/fix-assistant-issues
AdamKershner Dec 31, 2025
4abd7f8
Merge pull request #119 from mozilla-firefox/main
AdamKershner Jan 2, 2026
6155e01
Merge pull request #120 from mozilla-firefox/main
AdamKershner Jan 12, 2026
3bb6e4c
Add user-friendly error messages and improve AI assistant
AdamKershner Jan 15, 2026
96bff44
Merge pull request #122 from Kahana-LLC/feature/user-friendly-error-m…
AdamKershner Jan 15, 2026
a2ca0d3
Bug:Window Management, UI Updates
keurigdrip Jan 16, 2026
d49916b
double scroll bar chat ui fix
keurigdrip Jan 19, 2026
efd0ce7
fix text selection color in chat bubbles to grey
keurigdrip Jan 19, 2026
1a77805
Improve voice recording waveform: higher resolution, taller bars, slo…
SAIDEEP1216 Jan 20, 2026
7e2b085
Merge branch 'UI_Updates_1' of https://github.com/Kahana-LLC/firefox-…
SAIDEEP1216 Jan 20, 2026
ed1968b
Fix subscription limit detection and improve assistant output display
AdamKershner Jan 21, 2026
b07e257
Fix: Register empty state image and logo in jar.mn
AdamKershner Jan 21, 2026
53ccd87
Merge pull request #128 from Kahana-LLC/subscription-limit-update
AdamKershner Jan 22, 2026
0da665d
markdown formatting
keurigdrip Jan 23, 2026
02eb7a0
Add dompurify and marked to vendor libraries
keurigdrip Jan 23, 2026
54cd8c1
Merge PR #129: Subscription limit update - Add fallback logic for str…
AdamKershner Jan 23, 2026
61e8430
Merge PR #130: Subscription limit update - Add fallback logic for str…
AdamKershner Jan 23, 2026
8d913f1
Merge pull request #131 from Kahana-LLC/main2
AdamKershner Jan 23, 2026
0f184d1
assistant input fix
keurigdrip Jan 26, 2026
a021fee
Native splitview implementation
keurigdrip Jan 26, 2026
bb0fcc0
Merge pull request #132 from Kahana-LLC/UI_Updates_1
AdamKershner Jan 26, 2026
1d24c83
Initial migration to Preact UI
keurigdrip Jan 28, 2026
c5c2cd1
Fix Clear Chat History: Reset both UI and backend session state
keurigdrip Jan 28, 2026
0ad5e79
Add unified package.json for assistant build management
keurigdrip Jan 28, 2026
d9d72dd
uuid and link
keurigdrip Jan 30, 2026
697433d
stop tracking gemini files
keurigdrip Jan 30, 2026
a84fe3f
updated commands/tab groups
RushyanthN Feb 5, 2026
1484843
updated approval actions
RushyanthN Feb 5, 2026
e1df988
bug fix- optimized routing
RushyanthN Feb 5, 2026
aad5b03
added split view functionality
RushyanthN Feb 6, 2026
82c6494
added SLoth Icon
SAIDEEP1216 Feb 6, 2026
3f7def4
added webpage summarizaton funactionality
RushyanthN Feb 6, 2026
0eeeb2b
bug fix- tab creation
RushyanthN Feb 6, 2026
62524e6
bug fix- tab group
RushyanthN Feb 6, 2026
ae8d673
Merge branch 'uiupdates/dynamic' of https://github.com/Kahana-LLC/fir…
SAIDEEP1216 Feb 7, 2026
5bf8d35
UI updates (dynamic): assistant sidebar and auth changes
SAIDEEP1216 Feb 7, 2026
c5c0e66
Updated AI chat bubble when double clicked
SAIDEEP1216 Feb 9, 2026
a0e8a02
Remove minimize button and menu option from Oasis AI header
keurigdrip Feb 11, 2026
e2676f3
fix: added error message for login and forgot password feature
blackhat955 Feb 14, 2026
2741f42
Merge pull request #133 from Kahana-LLC/sprint-9
AdamKershner Feb 16, 2026
dfaad40
Explain ring-specific client plan
keurigdrip Feb 19, 2026
ba82b31
Add Supabase update MVP
keurigdrip Feb 19, 2026
326ebee
Enforce tag-based release cadence and canary-first promotion
keurigdrip Feb 20, 2026
31524b8
Prepare 1.0.0.0 release workflow and assistant bundle
keurigdrip Feb 20, 2026
6b5351c
Use vendored marked/dompurify in assistant bundle build
keurigdrip Feb 20, 2026
d34f70a
Fix CI mozconfig and assistant bundle deps
keurigdrip Feb 20, 2026
8ecb897
Fix CI objdir for canary release workflow
keurigdrip Feb 20, 2026
8ef8610
notarization retry for transient 500s
keurigdrip Feb 20, 2026
b214ae8
Stabilize Notarization outages "MAX_RETRIES: 8"
keurigdrip Feb 20, 2026
7e88ad4
Harden canary notarization release flow
keurigdrip Feb 21, 2026
8b6d85d
Fix canary signing password file and rcodesign caching
keurigdrip Feb 21, 2026
0f6f542
Harden rcodesign diagnostics and remove version pin
keurigdrip Feb 21, 2026
e559308
Pin rcodesign prebuilt with checksum verification
keurigdrip Feb 21, 2026
b13699d
Handle rcodesign entitlements flag compatibility
keurigdrip Feb 21, 2026
552dc6f
Stabilize rcodesign install for CI
keurigdrip Feb 21, 2026
e910790
Handle rcodesign runtime flag compatibility
keurigdrip Feb 21, 2026
01bdb20
Use global rcodesign runtime flag and add runtime verification gate
keurigdrip Feb 21, 2026
cb3a897
Deploy Ghost Build architecture
keurigdrip Feb 22, 2026
f0cb8e5
Add build payload and signing sandbox workflows
keurigdrip Feb 22, 2026
d408195
Harden ghost-build context checks (fail-fast)
keurigdrip Feb 22, 2026
3e96cab
Fix signing sandbox scope
keurigdrip Feb 22, 2026
1023295
Harden mach context gate JSON
keurigdrip Feb 22, 2026
13925d5
Fix mach context gate to avoid config.status dependency
keurigdrip Feb 22, 2026
f194c5a
Include config.status in ghost payload and harden mach context gate
keurigdrip Feb 22, 2026
ee49b01
Add mozinfo.json to ghost payload/context checks
keurigdrip Feb 22, 2026
c7b334e
Fix canary workflow rcodesign env and DMG keychain signing
keurigdrip Feb 23, 2026
2c8511e
Fix canary workflow rcodesign env and DMG keychain signing
keurigdrip Feb 23, 2026
cad2290
Remove ghost-build workflows; keep single-stage canary pipeline
keurigdrip Feb 23, 2026
76d4743
Stabilize rcodesign install in canary workflow
keurigdrip Feb 23, 2026
4b8450c
Relax rcodesign entitlements probe for 0.27
keurigdrip Feb 23, 2026
add40f7
1.0.0.0
keurigdrip Feb 23, 2026
d428f97
1.0.0.0
keurigdrip Feb 24, 2026
578bcb5
1.0.0.0
keurigdrip Feb 24, 2026
c5818a2
Update README
keurigdrip Feb 24, 2026
55ad2c0
Add workflows
keurigdrip Feb 24, 2026
e0d3ee5
workflows
keurigdrip Feb 24, 2026
d68348d
assistant: routing and reliability cleanup (nested command chaining, …
keurigdrip Feb 25, 2026
4a9d620
Refactor assistant and UI components; fix notarization workflow by en…
keurigdrip Feb 25, 2026
50874af
Sync package-lock.json for assistant components to fix npm ci error i…
keurigdrip Feb 25, 2026
4a81f0b
Correctly scope runtime flag for rcodesign nested bundles
keurigdrip Feb 25, 2026
249c1f1
Fix: ensure Hardened Runtime is applied to all components (remove glo…
keurigdrip Feb 25, 2026
f721aa5
Added AI Chat feature tour callout version_1
SAIDEEP1216 Feb 10, 2026
d11bab6
AI chat tour v2
SAIDEEP1216 Feb 10, 2026
7a8ee38
AI chat tour v3
SAIDEEP1216 Feb 16, 2026
b7e06a9
Implemented custom 4-page onboarding flow v1
SAIDEEP1216 Feb 17, 2026
a16e187
chore: Remove tour directory and add to .gitignore
SAIDEEP1216 Feb 17, 2026
4e1f47a
Implemented custom 4-page onboarding flow v2
SAIDEEP1216 Feb 18, 2026
477bc53
Build: default Oasis update URL and add OS-agnostic version/update ov…
keurigdrip Mar 5, 2026
a769e31
CI: update Oasis canary/release workflows
keurigdrip Mar 5, 2026
dd110d2
onboarding
keurigdrip Mar 5, 2026
7ca1251
Merge remote-tracking branch 'OTA Infrastructure and onboarding flow'
keurigdrip Mar 5, 2026
2a39586
semantic history search v1 - 13 engineering test passed
likhithaguggilla Mar 3, 2026
e36b919
added incremental index for search history
likhithaguggilla Mar 4, 2026
2cff79d
Implemented semantic search v0.2 features (page snippets, re-indexing)
likhithaguggilla Mar 9, 2026
529fb17
implemented command classification
revanth7667 Mar 18, 2026
1d603e6
Add assistant OAuth handoff plumbing
Avinash987 Mar 21, 2026
a1705e3
Sync onboarding with shared OAuth session state
Avinash987 Mar 21, 2026
c4339c1
Harden assistant auth UI flow
Avinash987 Mar 21, 2026
1097fc9
Document OAuth environment and validation flow
Avinash987 Mar 21, 2026
9cc9a8c
added code comments and rebased semantic-search-history with main
likhithaguggilla Mar 23, 2026
4b88e57
Added Documentation for oauth intergration
Avinash987 Mar 24, 2026
509d112
Stabilize Oasis onboarding and assistant auth handoff
Avinash987 Mar 26, 2026
d547053
added tts
RushyanthN Mar 29, 2026
00aa65d
Merge origin/semantic-search-history into integrate/semantic-search-h…
AdamKershner Mar 29, 2026
51e455b
docs: apply stashed BUILD_GUIDE updates
AdamKershner Mar 29, 2026
096d83d
Merge origin/fix/llm-usage-classification-metadata into integrate/sem…
AdamKershner Mar 30, 2026
9608830
Assistant: semantic history UX, routing, and empty-state handling
AdamKershner Mar 30, 2026
c31575f
Merge origin/oauth-login-integration into integrate/semantic-search-h…
AdamKershner Mar 30, 2026
bc1eac6
fix: remove duplicate oasiswelcome entry from browser/components/moz.…
AdamKershner Mar 30, 2026
f684fce
Fixed routing for semantic history search
likhithaguggilla Apr 7, 2026
927681f
Assistant: voice UX guardrails, VAD debounce, spoken chat mirror, IAM…
AdamKershner Apr 11, 2026
d74e6ac
Implemented hybrid search in semantic search history
likhithaguggilla Apr 12, 2026
8d9d55f
Merge branch 'fix/llm-usage-classification-metadata' into semantic-se…
likhithaguggilla Apr 12, 2026
62188df
merged fix/llm-usage-classification-metadata
likhithaguggilla Apr 12, 2026
8dfc02b
build: update bundle and package-lock
likhithaguggilla Apr 12, 2026
2a00bbf
fixed llm metadata classification for search history
likhithaguggilla Apr 12, 2026
b456f77
bundle
likhithaguggilla Apr 12, 2026
92cc64e
fix: eliminate search_history and search_memory routing confusion
likhithaguggilla Apr 12, 2026
6282314
improved routing rules for semantic search
likhithaguggilla Apr 13, 2026
d2ca465
fix(assistant): render sidebar UI on first open instead of blank panel
AdamKershner Apr 13, 2026
bda30f4
Integrate voice, semantic history, assistant UI, and onboarding updates
AdamKershner Apr 13, 2026
9828315
Merge remote-tracking branch 'origin/semantic-search-history'
AdamKershner Apr 13, 2026
68175a6
assistant: fix LocalMemory history Places context; improve routing me…
AdamKershner Apr 13, 2026
86ba258
Assistant busy UI, feedback payload fixes, Supabase assist chain
AdamKershner Apr 14, 2026
a32309a
- Voice Capture Backend Optimization for Deepgram API
keurigdrip Apr 14, 2026
114f68d
Transcription Auth and Usage fix
keurigdrip Apr 15, 2026
f72fb31
-Fix User Session History persistance after logout
keurigdrip Apr 15, 2026
8df65ea
Upgrade macOS version for build job
keurigdrip Apr 15, 2026
ce7c5b5
Unset MOZ_AUTOMATION before building package
keurigdrip Apr 15, 2026
7dcc95a
CI: harden Oasis release workflows
keurigdrip Apr 15, 2026
29eb546
CI: fetch macOS SDK explicitly in Oasis release workflows
keurigdrip Apr 15, 2026
a981bd6
CI: point Oasis workflows at extracted macOS SDK root
keurigdrip Apr 15, 2026
b4e606c
CI: force explicit macOS SDK path in Oasis release workflows
keurigdrip Apr 15, 2026
b6a190e
CI: macOS SDK path in Oasis release workflows toolchain fix
keurigdrip Apr 15, 2026
034033f
CI: macOS SDK Runner fetch
keurigdrip Apr 15, 2026
115b11b
Upgrade macOS version for build job
keurigdrip Apr 15, 2026
94183b8
Unset MOZ_AUTOMATION before building package
keurigdrip Apr 15, 2026
d439ad3
CI: harden Oasis release workflows
keurigdrip Apr 15, 2026
61d0e8d
CI: fetch macOS SDK explicitly in Oasis release workflows
keurigdrip Apr 15, 2026
a76723a
CI: point Oasis workflows at extracted macOS SDK root
keurigdrip Apr 15, 2026
506315f
CI: force explicit macOS SDK path in Oasis release workflows
keurigdrip Apr 15, 2026
1994d74
CI: macOS SDK path in Oasis release workflows toolchain fix
keurigdrip Apr 15, 2026
38ed040
CI: macOS SDK Runner fetch
keurigdrip Apr 15, 2026
dff895f
Unify URL bar and new-tab logo on chrome://branding/content/logo-oasi…
AdamKershner Apr 23, 2026
2c3bd1e
Assistant UI: onboarding import tile, auth accent, feedback modal, ch…
AdamKershner May 6, 2026
b2dda84
Assistant UI: training gallery, streak progress, train badge, daily b…
AdamKershner May 6, 2026
313db5a
new edge function
revanth7667 Apr 29, 2026
160f8d1
server limit enforced
revanth7667 Apr 29, 2026
23bf8a2
Assistant: feedback token grants, daily usage bar, quota UX
AdamKershner May 6, 2026
5d7b524
Assistant: daily token bar uses Supabase plan limit only
AdamKershner May 6, 2026
b9e38a0
Assistant UI: unified composer dock, sidebar tint, glow and layout po…
AdamKershner May 6, 2026
4e9353a
Assistant UI: typewriter above field, placeholder parity, Send follow…
AdamKershner May 6, 2026
f4cda87
Assistant: capabilities overview Markdown, growth copy, and bundles
AdamKershner May 6, 2026
d38bbf7
Assistant UI: training row layout, earn chip promo, hover hint
AdamKershner May 6, 2026
03265cc
Fix deploy blockers: TS, overlay postMessage, offline embeddings
AdamKershner May 7, 2026
93ac39b
Embedding: vendor ORT WASM and MiniLM for offline chrome:// loading
AdamKershner May 7, 2026
678da3f
feat(assistant): IndexedDB chat persistence and Cursor-style history …
AdamKershner May 7, 2026
5d5d90a
chore(gitignore): ignore Oasis assistant local node_modules
AdamKershner May 7, 2026
9369fbd
Embedding: vendor ORT WASM and MiniLM for offline chrome:// loading
AdamKershner May 7, 2026
9752d86
Merge remote-tracking branch 'origin/feature/beta-fixes'
AdamKershner May 7, 2026
212f63d
ci: restore oasis-canary and oasis-release from 034033f4
AdamKershner May 7, 2026
1880403
Assistant: custom agent loop, multi-turn assist, Railroad memory
AdamKershner May 8, 2026
ee568d4
supabase(oasis-assist): multi-turn routing + generation_config
AdamKershner May 8, 2026
48d917c
supabase(oasis-assist): merge prod auth, limits, record_llm_usage
AdamKershner May 8, 2026
cfd42a5
assistant: track router assist tokens (Lambda + subscription)
AdamKershner May 8, 2026
52f98b9
assistant: finish plan — agentSteps, Railroad extraction, loop eval
AdamKershner May 8, 2026
fbeb4bb
Assistant: remove account Settings stub; token usage and subscription…
AdamKershner May 12, 2026
a2c2645
Assistant: narrow header layout and fix chat history popover
AdamKershner May 12, 2026
cbfb3b6
Assistant UI: show Welcome Back auth after sign-out
AdamKershner May 12, 2026
bd99422
Assistant UI: delete past chats from history
AdamKershner May 12, 2026
51a1fa3
Assistant UI: training modal timeline, popover, chips, and polish
AdamKershner May 13, 2026
2bbcc38
Oasis: seamless docked/overlay toggle via swapDocShells
AdamKershner May 13, 2026
9730fde
Assistant: theme catalog, chat tokens, Light/Dark picker, violet dark
AdamKershner May 13, 2026
1a32bfe
Assistant: theme tokens for auth sign-in and OAuth buttons
AdamKershner May 13, 2026
8d5a25b
Style Oasis navbar pill like sidebar launcher; align with toolbar
AdamKershner May 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
736 changes: 736 additions & 0 deletions .github/workflows/oasis-canary.yml

Large diffs are not rendered by default.

706 changes: 706 additions & 0 deletions .github/workflows/oasis-release.yml

Large diffs are not rendered by default.

119 changes: 119 additions & 0 deletions .github/workflows/oasis-stable-promote.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
name: Oasis Stable Ring Promote

on:
workflow_dispatch:
inputs:
target_version:
description: Version to promote to oasis-stable (X.Y.Z.N)
required: true
type: string
build_target:
description: Build target to validate
required: false
default: Darwin_aarch64-gcc3
type: string
locale:
description: Locale to validate
required: false
default: en-US
type: string
actor:
description: Audit actor label
required: false
default: github-actions
type: string
reason:
description: Audit reason
required: false
default: manual stable promotion
type: string

permissions:
contents: read

env:
PRODUCT: Firefox

jobs:
promote-stable:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Validate version format
run: |
set -euo pipefail
VERSION="${{ inputs.target_version }}"
if ! [[ "${VERSION}" =~ ^[0-9]+(\.[0-9]+){3}$ ]]; then
echo "Version must match X.Y.Z.N (numeric dot notation)." >&2
exit 1
fi

- name: Verify canary release asset exists
id: release
env:
GH_TOKEN: ${{ github.token }}
run: |
set -euo pipefail
VERSION="${{ inputs.target_version }}"
BUILD_TARGET="${{ inputs.build_target }}"
LOCALE="${{ inputs.locale }}"
SAFE_TARGET="$(echo "${BUILD_TARGET}" | tr '/ ' '__')"
TAG="canary"
ASSET_NAME="oasis-${VERSION}-${SAFE_TARGET}-${LOCALE}.signed.complete.mar"
RELEASE_JSON="$(mktemp)"
gh release view "${TAG}" --json tagName,assets > "${RELEASE_JSON}"
if ! python3 -c 'import json, sys; payload = json.load(open(sys.argv[1], "r", encoding="utf-8")); asset_name = sys.argv[2]; sys.exit(0 if any(a.get("name") == asset_name for a in payload.get("assets", [])) else 1)' "${RELEASE_JSON}" "${ASSET_NAME}"
then
echo "Expected canary bucket asset ${ASSET_NAME} was not found under release ${TAG}." >&2
exit 1
fi
echo "tag=${TAG}" >> "${GITHUB_OUTPUT}"
echo "asset_name=${ASSET_NAME}" >> "${GITHUB_OUTPUT}"
rm -f "${RELEASE_JSON}"

- name: Verify canary currently resolves target artifact
env:
OASIS_ADMIN_TOKEN: ${{ secrets.OASIS_UPDATE_ADMIN_TOKEN }}
OASIS_UPDATE_SERVICE_URL: ${{ secrets.OASIS_UPDATE_SERVICE_URL }}
run: |
set -euo pipefail
SERVICE_BASE="${OASIS_UPDATE_SERVICE_URL%/}"
TARGET_VERSION="${{ inputs.target_version }}"
EXPECTED_MAR_URL="https://github.com/${{ github.repository }}/releases/download/${{ steps.release.outputs.tag }}/${{ steps.release.outputs.asset_name }}"

RING_JSON="$(curl -fsS -H "Authorization: Bearer ${OASIS_ADMIN_TOKEN}" "${SERVICE_BASE}/admin/rings/oasis-canary")"
CURRENT_CANARY="$(python3 -c 'import json,sys; print(json.loads(sys.stdin.read())["target_version"])' <<<"${RING_JSON}")"
if [ "${CURRENT_CANARY}" != "${TARGET_VERSION}" ]; then
echo "Canary ring points to ${CURRENT_CANARY}, expected ${TARGET_VERSION} before stable promotion." >&2
exit 1
fi

UPDATE_URL="${SERVICE_BASE}/update/6/${PRODUCT}/0.0.0.0/0/${{ inputs.build_target }}/${{ inputs.locale }}/oasis-canary/Linux/default/default/update.xml"
UPDATE_XML="$(curl -fsS "${UPDATE_URL}")"
ACTUAL_MAR_URL="$(python3 -c 'import sys,xml.etree.ElementTree as ET; root = ET.fromstring(sys.stdin.read()); patch = root.find("./update/patch"); print(patch.attrib["URL"] if patch is not None else "")' <<<"${UPDATE_XML}")"
if [ -z "${ACTUAL_MAR_URL}" ]; then
echo "Canary update XML did not contain a patch URL for ${TARGET_VERSION}/${{ inputs.build_target }}/${{ inputs.locale }}." >&2
exit 1
fi
if [ "${ACTUAL_MAR_URL}" != "${EXPECTED_MAR_URL}" ]; then
echo "Canary artifact URL mismatch." >&2
echo "Expected: ${EXPECTED_MAR_URL}" >&2
echo "Actual: ${ACTUAL_MAR_URL}" >&2
exit 1
fi

- name: Update stable ring pointer
env:
OASIS_ADMIN_TOKEN: ${{ secrets.OASIS_UPDATE_ADMIN_TOKEN }}
OASIS_UPDATE_SERVICE_URL: ${{ secrets.OASIS_UPDATE_SERVICE_URL }}
run: |
set -euo pipefail
python3 tools/oasis-update-service/publish_update.py \
--service "${OASIS_UPDATE_SERVICE_URL}" \
--admin-token "${OASIS_ADMIN_TOKEN}" \
--version "${{ inputs.target_version }}" \
--ring oasis-stable \
--actor "${{ inputs.actor }}" \
--reason "${{ inputs.reason }} (run ${GITHUB_RUN_ID}, source canary bucket)"
28 changes: 28 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,11 @@ tags
*.gcov
*.tsbuildinfo
compile_commands.json
*.env

# Local Apple signing assets (never commit)
/developer_id.p12
/p12_password.txt

# emacs backup files in any directory.
# lint-ignore-next-line: syntax-difference
Expand Down Expand Up @@ -104,6 +109,17 @@ tools/lint/stylelint/stylelint-plugin-mozilla/node_modules/
tools/terser/node_modules/
browser/components/asrouter/node_modules/
browser/components/aboutwelcome/node_modules/

# Oasis assistant: local-only npm artifacts (platform esbuild, devDependencies, Lambda deps)
browser/base/content/assistant/ui-preact/node_modules/@esbuild/darwin-*/
browser/base/content/assistant/ui-preact/node_modules/@esbuild/linux-*/
browser/base/content/assistant/ui-preact/node_modules/@esbuild/freebsd-*/
browser/base/content/assistant/ui-preact/node_modules/@esbuild/android-*/
browser/base/content/assistant/ui-preact/node_modules/typescript/
browser/base/content/assistant/ui-preact/node_modules/.bin/tsc
browser/base/content/assistant/ui-preact/node_modules/.bin/tsserver
browser/base/content/assistant/lambda/voice-runtime/node_modules/

browser/extensions/newtab/node_modules/
tools/ts/node_modules/
testing/xpcshell/moz-http2/node_modules/
Expand Down Expand Up @@ -393,10 +409,22 @@ toolkit/crashreporter/minidump-analyzer/target/
# Ignore mozperftest artifacts folder
/artifacts/

# Distribution packages (generated files)
Oasis-Browser-*.dmg
Oasis-Browser-*.zip

# Ignore personal preferences files
CLAUDE.local.md
.claude/settings.local.json

# Ignore .json.gz (typically profiles) in the root directory
# lint-ignore-next-line: git-only
/*.json.gz
\n# Gemini files\ngemini.md\n.gemini/

# Ignore tour directory
tour/

# Ignore Python profiling files
*.cProfile
*.pstats
Binary file added .lto.o/0.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/1.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/10.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/100.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/101.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/102.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/103.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/104.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/105.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/106.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/107.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/108.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/109.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/11.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/12.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/13.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/14.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/15.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/16.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/17.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/18.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/19.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/2.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/20.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/21.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/22.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/23.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/24.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/25.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/26.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/27.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/28.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/29.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/3.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/30.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/31.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/32.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/33.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/34.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/35.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/36.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/37.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/38.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/39.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/4.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/40.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/41.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/42.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/43.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/44.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/45.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/46.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/47.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/48.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/49.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/5.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/50.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/51.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/52.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/53.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/54.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/55.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/56.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/57.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/58.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/59.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/6.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/60.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/61.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/62.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/63.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/64.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/65.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/66.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/67.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/68.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/69.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/7.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/70.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/71.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/72.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/73.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/74.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/75.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/76.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/77.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/78.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/79.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/8.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/80.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/81.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/82.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/83.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/84.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/85.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/86.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/87.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/88.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/89.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/9.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/90.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/91.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/92.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/93.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/94.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/95.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/96.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/97.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/98.arm64.lto.o
Binary file not shown.
Binary file added .lto.o/99.arm64.lto.o
Binary file not shown.
Loading
Loading