Unify browser extensions#763
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (7)
📒 Files selected for processing (6)
📝 WalkthroughWalkthroughAdds unified detection and runtime adapters for multiple Hive browser extensions (Hive Keeper, Hive Keychain, Peak Vault); updates UI/login flows to show and use detected extensions; introduces async broadcast mode and threads it through SDK broadcast hooks and the web broadcast adapter. Changes
Sequence DiagramsequenceDiagram
participant User
participant LoginUI as Login Component
participant ExtUtils as Hive Extension Utils
participant BrowserExt as Browser Extension
participant Broadcast as Broadcast Layer
User->>LoginUI: Click "Sign with Extension"
LoginUI->>ExtUtils: getDetectedExtensions()
ExtUtils->>BrowserExt: inspect window.hive / hive_keychain / peakvault
BrowserExt-->>ExtUtils: available extension(s)
ExtUtils-->>LoginUI: DetectedExtension[]
LoginUI->>User: Render icons / label
User->>LoginUI: Confirm / sign
LoginUI->>ExtUtils: signBufferWithExtension(account, message)
alt Keychain-compatible (Hive Keeper / Hive Keychain)
ExtUtils->>BrowserExt: requestSignBuffer(buffer) (Keychain API)
BrowserExt-->>ExtUtils: Promise<signature>
else Peak Vault
ExtUtils->>BrowserExt: requestSignBuffer(message) (PeakVault API)
BrowserExt-->>ExtUtils: Promise<TxResponse>
end
ExtUtils-->>LoginUI: Signature / TxResponse
LoginUI->>Broadcast: broadcastWithExtension(account, ops, keyType)
Broadcast-->>User: Confirmation / success
Estimated code review effort🎯 4 (Complex) | ⏱️ ~50 minutes Possibly related PRsSuggested labelspatch Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary by CodeRabbit
New Features
Improvements
Documentation