FluxyChat

Features

Async decision quorum

Weighted role-based approvals on special decision messages with live progress.

Async decision quorum

Post a decision message that requires quorum from specific roles (e.g. 2 of 3 approvers within 48 hours). Progress updates live in the thread.

In chat

  1. Open message menu → Create decision (or use the Decision UI component).
  2. Set question, required roles, quorum count, and expiry.
  3. Approvers tap Acknowledge. The progress bar updates server-side.
  4. When quorum is met or time expires, state transitions to approved or expired.

Console UI

The Decision component (apps/dashboard/components/ui/decision.tsx) renders quorum progress inline on decision messages.

API

POST /rooms/:roomId/decisions
POST /rooms/:roomId/decisions/:messageId/ack
GET  /rooms/:roomId/decisions/:messageId

SDK

await client.createDecision(roomId, {
  question: "Ship v2 Friday?",
  requiredRoles: ["owner", "admin"],
  quorum: 2,
  expiresInHours: 48,
});

await client.ackDecision(roomId, decisionMessageId);

Quorum is verified only on the server. Clients cannot bypass role checks.

On this page