-
Notifications
You must be signed in to change notification settings - Fork 4
Fix/group chat fix #300
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
Fix/group chat fix #300
Conversation
Caution Review failedThe pull request is closed. WalkthroughAdds system-message support and group context across multiple platforms; introduces EVault client/adapter, mapping DB, and health checks; refactors chat type to be derived by participants; adds cron-based deadline checks and Cerberus interval monitoring; extends APIs/entities/migrations for groups/messages; updates GraphQL server to access runtime w3id; adds hidden retry flow in wallet settings. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant Wallet as Wallet Settings
participant VC as VaultController
User->>Wallet: Tap "Version" (x10 within 3s windows)
Wallet->>Wallet: Count taps, show feedback
Wallet->>VC: retryProfileCreation()
VC-->>Wallet: resolve (success/error)
Wallet->>User: Show success/error message
sequenceDiagram
participant EV as eVault Webhook
participant Adapter as Web3Adapter
participant MapDB as MappingDatabase
participant Svc as Domain Service (User/Group/Message)
EV->>Adapter: Incoming envelope (schemaId, data, w3id)
Adapter->>Adapter: Resolve mapping by schemaId
Adapter->>MapDB: getLocalId(globalId)
Adapter-->>EV: Locked? skip else continue
Adapter->>Adapter: fromGlobal(...)
Adapter->>Svc: Upsert entity (users/groups/messages)
Svc-->>Adapter: Entity updated/created
Adapter->>MapDB: storeMapping(localId, globalId)
Adapter-->>EV: 200 OK
sequenceDiagram
participant Cron as CronManager
participant DLS as DeadlineCheckService
participant Polls as DB: Polls
participant Msg as MessageService
Cron->>DLS: checkExpiredPolls()
DLS->>Polls: Find expired polls (deadlineMessageSent=false)
Polls-->>DLS: List of polls
loop each poll with groupId
DLS->>Msg: createVoteDeadlineMessage(groupId, title, id, creator, deadline)
Msg-->>DLS: System message persisted
DLS->>Polls: Mark deadlineMessageSent=true
end
Estimated code review effort🎯 5 (Critical) | ⏱️ ~150 minutes Possibly related PRs
Poem
Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. ✨ Finishing Touches
🧪 Generate unit tests
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
f01bc65
to
e5318d8
Compare
Description of change
Issue Number
Type of change
How the change has been tested
Change checklist
Summary by CodeRabbit