Skip to content

RFC: Chat Extension v2 — extendable chat system #487

Description

@filvecchiato

Source PR: #13 · docs/rfcs/0002-chat-extension-v2.md · @valentin-parity

Description

The Product supplies messages, participants, metadata and actions; the Host renders the chat shell and delegates every data operation to handlers the Product registered. A Product that registers nothing still gets a working default chat.

Motivation

v1's host-owned message store locked out on-chain, P2P and external sources, offered no customization beyond a fixed room model, and had no path to large rooms.

Requirements

  • handle_* handlers, with a documented Host default for every aspect left unregistered.
  • The Host computes room_id from the product id, and delays rendering until product init finishes.
  • Messages and participants are always paginated; the Host cache is never authoritative.
  • Participants cover Person, LitePerson, Contact, Product and Custom.

Tasks

  • RFC document body
  • Implementation — rust-core
  • Implementation — hosts
    • dotli
    • Desktop
    • iOS
    • Android
    • host-cli

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions