Skip to content

Expose solver permission level (read / read-write) in the Add Solver UI #55

@mostronatorcoder

Description

@mostronatorcoder

Summary

When an operator adds a solver via Mostrix, the UI should let them choose the permission level (read-only or read-write) before submitting.

Context

Mostro node (PR #708 — merged) added two solver permission levels:

  • read: solver can take disputes, receive context, and communicate with parties, but cannot execute admin-settle or admin-cancel
  • read-write (default): full solver behavior including settle/cancel

The Mostro protocol spec for admin_add_solver already supports this via the payload format:

npub1...:read        -> read-only solver
npub1...:read-write  -> read-write solver (default)

The feature is live in the Mostro node. The only way to set a read-only solver today is to manually append :read to the npub in the order message payload — the Mostrix admin UI does not expose this choice.

Current UX problem

An operator using Mostrix to add a solver has no way to select the permission level through the UI. They must either:

  1. Know to append :read to the npub in the raw order message, or
  2. Default to read-write even when they only want to register a read-only solver (like Serbero)

This creates friction and risk: operators may unintentionally grant write permissions to agents (e.g. Serbero) that should never move funds.

Proposed change

In the Mostrix admin panel's Add Solver screen, add a permission level selector (radio buttons or dropdown) before the submit action:

  • Read-write (default, backwards-compatible)
  • Read-only

When the operator submits, Mostrix should construct the admin-add-solver order with the appropriate permission suffix in the payload (npub:read or npub:read-write), matching the protocol spec.

Expected behavior

Operator selects Payload sent to Mostro
Read-only {"text_message": "npub...:read"}
Read-write {"text_message": "npub...:read-write"}

Motivation

This enables clean separation:

  • AI agents (e.g. Serbero) registered as read-only solvers: they assist in dispute resolution but cannot move funds under any circumstances
  • Human solvers registered as read-write: retain full dispute resolution authority

Security is enforced at the Mostro node level, not by relying on agent behavior.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions