Skip to content

x/fraud — Fraud module

The x/fraud module stores marketplace fraud reports, routes them for moderator review, and records report status and resolution. The current on-chain submission path accepts registered provider reporters; it does not provide a consumer report transaction. It is distinct from settlement and account-state controls, and a recorded report resolution does not by itself suspend or terminate an account.

The current report record includes public chain fields such as reporter and reported-party addresses, category, description, order references, status, and moderator notes. Evidence attachments are encrypted for their listed recipients. Do not put identity documents or sensitive personal information in plaintext report fields.

  • Reports are recorded on-chain. The provider report transaction files an allegation with supporting evidence. Public report fields are visible to network observers; attachments use the encrypted-evidence structure (FraudReport, FraudReports).
  • Adjudication is rule-bound. Cases escalate (MsgEscalateFraudReport), moderators get assigned (MsgAssignModerator, ModeratorQueue), and each report is resolved or rejected with its status tracked (MsgResolveFraudReport, MsgRejectFraudReport, MsgUpdateReportStatus) — leaving an auditable trail (AuditLog).
  • Financial cases remain separate. Where a report links to an active canonical financial case, settlement owns the financial outcome. A report resolution is not itself a payment instruction or account-state change.

The module provides an auditable report and moderator-status record. Its current role checks and report fields have important limits: on-chain reports are not private, consumers cannot submit through this transaction, and report resolution does not provide an appeal process or automatically enact a global sanction. These limits should not be represented as broader protections than the current implementation supplies.

ConceptDefinition
Fraud reportAn on-chain allegation of misconduct with supporting evidence, subject to adjudication.
Encrypted evidenceAn attachment encrypted for listed reviewer recipients; other report fields remain public chain data.
  1. Allege — A provider files a report. The current on-chain route checks that the reporter is a registered provider.
  2. Review — A moderator handles the report. Status changes are role-gated and recorded in the audit trail.
  3. Resolve — A decision is recorded. Resolution text and notes are stored on-chain; related financial cases are handled through settlement.
MessagePurpose
MsgSubmitFraudReportFiles a fraud report with supporting evidence.
MsgEscalateFraudReportEscalates a filed report for deeper adjudication.
MsgResolveFraudReportResolves a report with a finding.
MsgRejectFraudReportRejects a report that does not stand up.
MsgAssignModeratorAssigns a moderator to work a report.
MsgUpdateReportStatusUpdates the status of a report under review.
MsgUpdateParamsGovernance-only update of module parameters.
QueryPurpose
FraudReport / FraudReportsA single report and the full report list.
FraudReportsByReporter / FraudReportsByReportedPartyReports filtered by who filed them or who they name.
ModeratorQueueReports awaiting moderator attention.
AuditLogThe module’s auditable record of adjudication activity.
ParamsCurrent module parameters.
ModuleHow they interact
x/veidVEID status is separate from a fraud report; the report does not itself lock an identity.
x/marketReports may reference marketplace orders; a report does not itself apply a universal market gate.
x/settlementActive canonical financial cases control financial resolution.
x/supportSupport is a separate service channel; the current fraud transaction itself is provider-only.

Falsified usage, identity abuse, malicious workloads — conduct enforced at the marketplace layer rather than the consensus layer.

Slashing punishes validator protocol violations like double-signing. The fraud module records marketplace allegations and moderator decisions. A fraud report resolution is not itself a settlement instruction or account-state change. See Slashing.

Does a fraud report automatically stop payment or lock an account?

Section titled “Does a fraud report automatically stop payment or lock an account?”

No. A report is an allegation and its status or resolution is recorded separately. Financial cases and escrow outcomes use the settlement module; account-wide role-state changes are a separate administrative operation. See the x/settlement module and x/roles.