filterAndSortTransactions (used by both mock-db.ts.queryTransactions and directly by hooks) filters then sorts the full in-memory array on every call — no indexing by common filter dimensions (date range, asset, direction). At the current fixture scale this is invisible; it won't be once mock-db.ts is replaced by a real datastore (see the encrypted_private_key/auth issues above), because whatever real DB read pattern replaces this needs to know what indexes to build.
Definition of done:
- Complexity characterized (Big-O) and documented for the current filter+sort implementation
- If/when backed by a real DB, filter fields translated to indexed WHERE clauses rather than in-memory scan — this issue's DoD is producing that translation spec, since the DB migration itself is tracked separately
Before opening a PR for this issue, read CONTRIBUTING.md.
This is not a starter-issue. The Definition of done above is the full
acceptance criteria, not a subset to sample from — a PR that addresses part
of it is an unfinished issue, not a smaller one. Your PR must include, in
the PR description itself:
PRs missing these will be sent back before review, not reviewed and rejected — please do this up front.
filterAndSortTransactions(used by bothmock-db.ts.queryTransactionsand directly by hooks) filters then sorts the full in-memory array on every call — no indexing by common filter dimensions (date range, asset, direction). At the current fixture scale this is invisible; it won't be once mock-db.ts is replaced by a real datastore (see the encrypted_private_key/auth issues above), because whatever real DB read pattern replaces this needs to know what indexes to build.Definition of done:
Before opening a PR for this issue, read CONTRIBUTING.md.
This is not a starter-issue. The Definition of done above is the full
acceptance criteria, not a subset to sample from — a PR that addresses part
of it is an unfinished issue, not a smaller one. Your PR must include, in
the PR description itself:
PRs missing these will be sent back before review, not reviewed and rejected — please do this up front.