Core
abuse report
A signed, per-reporter hash-chained accusation citing existing evidence by hash. Proves an accountable accusation was made; never adjudicates it. Reference implementation:
sm-abuse-report.report
The eleven-field signed JSON object:
protocol, reporter_id, accused_id, accused_role, category, evidence_refs, narrative, prev_hash, issued_at, sig, pubkey. See What is an Abuse Report.accused_role
Which side stands accused:
agent or principal. The field that makes the schema bidirectional without needing two report types.category
A closed, versioned vocabulary naming the kind of harm, or
other — where narrative carries the substantive claim. See the taxonomy on What is an Abuse Report.evidence_refs
A non-empty array of
{type, hash} pointers to existing sm-arp receipts or sm-aae envelopes — never a bundled copy of the artifact. A report may cite more than one.narrative
The reporter's required free-text account. Load-bearing when
category is other.prev_hash
The hex SHA-256 of this reporter's previous report, or
null for its first report. What chains one accusation to the next.report hash
The lowercase-hex SHA-256 of the full signed report (including
sig) — the value a successor's prev_hash points at.chain
A reporter's reports linked genesis-first by
prev_hash. Reconstructed by order_chain, which returns the ordering or rejects a set that isn't exactly one intact chain.canonicalization
The deterministic serialization the signature covers: sorted-key, compact-separator JSON over the report with
sig removed, UTF-8 encoded. Identical inputs always produce byte-identical canonical bytes.gap / fork / foreign-chain splice
The three chain defects
order_chain rejects: a missing interior report, two reports claiming the same predecessor, and a prev_hash that reaches into another reporter's chain, respectively.confirmed / hash_mismatch / type_mismatch / not_party
The four possible results of
verify_evidence_citation, run by a verifier who holds the cited artifact: the citation checks out, the hash doesn't match, the declared type doesn't match, or the reporter isn't actually a party to the artifact.unconfirmed
The state of a citation nobody has checked because the verifier doesn't hold the cited artifact — distinct from both
confirmed and any failure result. Not a bug; an honest reflection of what wasn't checkable.Stack acronyms
Canonical expansions used across the Stellarminds agent-evidence stack.
ARP
Agency Receipt Protocol — the signed receipt envelope: what an agent did. See Primitives.
AAE
Attested Action Envelope — the signed, per-agent-chained record of a pre-action authorization verdict.
DAT
Delegated Authority Token — the principal-signed grant defining what an agent was allowed to do.
REP
Portable Reputation Credential — portable reputation computed over an agent's ARP receipt history (package
sm-rep). A named, not-yet-wired future direction for abuse reports.