What's built
Every capability below exists because a spec was written for it first, implemented against that spec, and archived once done — the concrete result of the spec-driven approach. Each entry links to its current spec in the repository, the precise, testable statement of what that capability does today.
| Capability | What it does |
|---|---|
| Core ledger | The foundational double-entry ledger: recording transactions without picking debit/credit sides, immutable posted entries (corrections via reversal, never edits), a running register, and an income/expense summary. |
| Multi-account ledger | Multiple asset and liability accounts, account groups, transfers between accounts, per-account balances and registers, and opening balances. |
| Account currencies | Each account group has its own currency; net worth is tracked per currency, with no forced conversion. |
| Home overview | The landing screen: every account (active and archived) with its balance, grouped, plus an overall net position. |
| Foreign-currency settlement | Cross-currency transfers and foreign-currency transactions, posted at a known rate or provisionally and settled later. |
| Reference exchange-rate lookup | An optional, off-by-default lookup showing a comparison exchange rate on cross-currency transfers — never used to fill in or validate an amount. |
| Ledger integrity & signing | The device signing identity, hash-chained signed entries, startup integrity verification, and recovery or migration after a lost key. |
| OFX statement import | Importing bank/credit-card history from OFX/QFX files, with duplicate detection and categorization before posting. |
| CSV statement import | Importing statement history from CSV files via an explicit, never-inferred column mapping, with reusable saved profiles. |
| Import category rules | Saved keyword-to-category rules and bulk categorization on the import preview screen, so a category assigned once keeps applying. |
| Shared UI components | A small set of reusable widgets — destructive-action confirmation, money entry, entity pickers, status banners — used consistently everywhere that shape of UI appears. |
| User guide | An accurate, end-user guide covering every shipped screen and flow, never describing planned-but-unbuilt functionality. |
| Contributor guide | The root-level entry point explaining how to propose and submit a contribution. |
This list reflects the specs under openspec/specs/ as of when this
page was last updated by hand — see the
repository
for the current, authoritative list.