Skip to content

Features

Jacob Chwastek edited this page Apr 27, 2026 · 2 revisions

Features

Purpose

Feature pages describe what the service does from a product and domain-behavior perspective.

Use this section when the reader needs to understand a business capability, its command/event flow, or the behavior exposed to Portal and other consumers.

Pages

  • Funding Accounts - feature hub for funding account lifecycle, aggregate behavior, command/event flow, and projections.
  • Category And Expense Flows - feature hub for category config persistence and expense projection/read behavior.

Feature page structure

Feature pages should act as hubs. Keep the hub readable, then link to focused detail pages:

  • Overview - what the capability does and where it fits.
  • Sequence diagrams - user/API/worker/database interactions.
  • Command/event diagrams - accepted commands, emitted events, failure messages, and projection events.
  • Aggregate or data-owner design - aggregate boundaries for event-sourced features, or the direct persistence owner for non-aggregate features.
  • Projection/read model details - read-side state, replay behavior, and API query surfaces.
  • Source map - implementation files and tests that prove the documented behavior.

Placement rules

  • Put domain capabilities and feature lifecycle notes here.
  • Link to work items or external product documents when a feature needs historical context.
  • Keep implementation architecture in Designs unless it is needed to explain feature behavior.
  • Keep runbooks and local execution steps in Guides.

Clone this wiki locally