ores.inbox

Table of Contents

1. Summary

ores.inbox holds what waits on a person and what a person is told. Its approval requests are one record and one queue for anything in the system that needs a decision: a member asking for a role, a trade awaiting operational authorisation, a change awaiting a second authoriser. Its notifications are raised by any component, about any activity, to named people or to everyone who holds a permission. The two are designed in Approval requests and Notification requirements.

2. Inputs

  • Approval requests raised by any component, and the decisions people make on them.
  • Notifications raised by any component.

3. Outputs

  • The approval queue and each person's own requests, over NATS.
  • Each person's notifications, their unread count and their read state.
  • Change events on every entity, which the owning component of an approval kind listens to in order to apply an approval.

4. Entry points

  • api/ — domain types, JSON I/O and the NATS protocol.
  • core/ — repositories, services and NATS handlers.
  • service/ — the NATS service entry point.

5. Dependencies

  • ores.iam — accounts and permissions, which requests and notifications name.
  • ores.service — the NATS service host.
  • ores.database — persistence.

6. See also

Emacs 29.3 (Org mode 9.6.15)