refactor!: support RUB only (WealthLedger/main#55)
Backend verify / commits (pull_request) Successful in 1m38s
Backend verify / security (pull_request) Successful in 1m28s
Backend verify / verify (pull_request) Successful in 8m40s

Filter non-RUB data at ingest and collapse per-currency collections
into a single RUB Money. Drop currency from TbankPortfolioValuePoint,
remove NON_RUB_ACTIVITY and the screener currency filter.

BREAKING CHANGE: per-currency API fields replaced with single RUB Money.
This commit is contained in:
2026-11-11 09:40:25 +03:00
parent 85d65f8997
commit 83df5f0be6
61 changed files with 617 additions and 735 deletions
+5 -5
View File
@@ -114,7 +114,7 @@ describe('T-Bank persisted read budget', () => {
(item) =>
item.instrumentKind === 'INSTRUMENT_TYPE_SHARE' &&
item.ticker.includes(query),
),
).map((item) => ({ uid: item.uid, ticker: item.ticker, name: item.name, isin: item.isin, instrumentKind: item.instrumentKind, classCode: item.classCode, apiTradeAvailableFlag: item.apiTradeAvailableFlag })),
),
findBonds: (_token: string, query: string) =>
counted(
@@ -123,7 +123,7 @@ describe('T-Bank persisted read budget', () => {
(item) =>
item.instrumentKind === 'INSTRUMENT_TYPE_BOND' &&
item.ticker.includes(query),
),
).map((item) => ({ uid: item.uid, ticker: item.ticker, name: item.name, isin: item.isin, instrumentKind: item.instrumentKind, classCode: item.classCode, apiTradeAvailableFlag: item.apiTradeAvailableFlag })),
),
getShare: (_token: string, uid: string) =>
counted(
@@ -279,9 +279,9 @@ describe('T-Bank persisted read budget', () => {
currentPrice: { currency: 'rub', units: '1000' },
averagePositionPrice: { currency: 'rub', units: '900' },
}],
totalsByCurrency: [{ currency: 'RUB', value: '1100' }],
cashBalances: [{ currency: 'RUB', value: '100' }],
structure: { currencies: [], unvaluedCategories: [] },
totals: { currency: 'RUB', value: '1100' },
cash: { currency: 'RUB', value: '100' },
structure: { totalValue: '1100', hasNegativeValues: false, categories: [], unvaluedCategories: [] },
},
fetchedAt: now,
},