commit bc932d35b13d15440dc046bc2cd67bfa8a2bcdcd
parent b6d7b9bec3e43903891b2572c2f1e9015586072b
Author: Iván Ávalos <avalos@disroot.org>
Date: Fri, 13 Feb 2026 17:13:05 +0100
update wallet-core API docs
Diffstat:
| M | wallet/wallet-core.md | | | 224 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- |
1 file changed, 222 insertions(+), 2 deletions(-)
diff --git a/wallet/wallet-core.md b/wallet/wallet-core.md
@@ -144,6 +144,7 @@ This file is auto-generated from the [taler-typescript-core](https://git.taler.n
* [WithdrawTestkudosOp](#withdrawtestkudosop)
* [TestPayOp](#testpayop)
* [GetActiveTasksOp](#getactivetasksop)
+* [GetPerformanceStatsOp](#getperformancestatsop)
* [DumpCoinsOp](#dumpcoinsop)
* [TestingSetTimetravelOp](#testingsettimetravelop)
* [TestingWaitTransactionsFinalOp](#testingwaittransactionsfinalop)
@@ -156,6 +157,7 @@ This file is auto-generated from the [taler-typescript-core](https://git.taler.n
* [TestingResetAllRetriesOp](#testingresetallretriesop)
* [TestingGetDenomStatsOp](#testinggetdenomstatsop)
* [TestingRunFixupOp](#testingrunfixupop)
+* [TestingGetDiagnosticsOp](#testinggetdiagnosticsop)
* [SetCoinSuspendedOp](#setcoinsuspendedop)
* [ForceRefreshOp](#forcerefreshop)
## Operation Reference
@@ -4015,6 +4017,199 @@ export interface ActiveTask {
```
+### GetPerformanceStatsOp
+```typescript
+/**
+ * Get a list of performance stats for diagnostics.
+ *
+ * Requires observability events to be enabled. Performance tables for the
+ * current running wallet instance are generated from observability events and
+ * stored in memory.
+ *
+ * Under each table, only the highest duration for each operation
+ * (e.g. `getBalances` wallet request) is included.
+ */
+export type GetPerformanceStatsOp = {
+ op: WalletApiOperation.TestingGetPerformanceStats;
+ request: GetPerformanceStatsRequest;
+ response: GetPerformanceStatsResponse;
+};
+// TestingGetPerformanceStats = "testingGetPerformanceStats"
+
+```
+```typescript
+export interface GetPerformanceStatsRequest {
+ /**
+ * Limit to N largest performance stats of each table.
+ *
+ * When undefined, all performance stats will be returned.
+ */
+ limit?: number;
+}
+
+```
+```typescript
+export interface GetPerformanceStatsResponse {
+ stats: PerformanceTable;
+}
+
+```
+```typescript
+export type PerformanceTable = {
+ [key in PerformanceStatType]?: PerformanceStat[];
+};
+
+```
+```typescript
+export declare enum PerformanceStatType {
+ HttpFetch = "http-fetch",
+ DbQuery = "db-query",
+ Crypto = "crypto",
+ WalletRequest = "wallet-request",
+ WalletTask = "wallet-task",
+}
+
+```
+```typescript
+export type PerformanceStat =
+ | {
+ type: PerformanceStatType.HttpFetch;
+ url: string;
+ maxDurationMs: number;
+ count: number;
+ }
+ | {
+ type: PerformanceStatType.DbQuery;
+ name: string;
+ location: string;
+ maxDurationMs: number;
+ count: number;
+ }
+ | {
+ type: PerformanceStatType.Crypto;
+ operation: string;
+ maxDurationMs: number;
+ count: number;
+ }
+ | {
+ type: PerformanceStatType.WalletRequest;
+ operation: string;
+ maxDurationMs: number;
+ count: number;
+ }
+ | {
+ type: PerformanceStatType.WalletTask;
+ taskId: string;
+ maxDurationMs: number;
+ count: number;
+ };
+
+```
+```typescript
+export type ObservabilityEvent =
+ | {
+ id: string;
+ when: AbsoluteTime;
+ type: ObservabilityEventType.HttpFetchStart;
+ url: string;
+ }
+ | {
+ id: string;
+ when: AbsoluteTime;
+ type: ObservabilityEventType.HttpFetchFinishSuccess;
+ url: string;
+ status: number;
+ durationMs: number;
+ }
+ | {
+ id: string;
+ when: AbsoluteTime;
+ type: ObservabilityEventType.HttpFetchFinishError;
+ url: string;
+ error: TalerErrorDetail;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.DbQueryStart;
+ name: string;
+ location: string;
+ }
+ | {
+ type: ObservabilityEventType.DbQueryFinishSuccess;
+ name: string;
+ location: string;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.DbQueryFinishError;
+ name: string;
+ location: string;
+ error: TalerErrorDetail;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.RequestStart;
+ name: string;
+ }
+ | {
+ type: ObservabilityEventType.RequestFinishSuccess;
+ operation: string;
+ requestId: string;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.RequestFinishError;
+ operation: string;
+ requestId: string;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.TaskStart;
+ taskId: string;
+ }
+ | {
+ type: ObservabilityEventType.TaskStop;
+ taskId: string;
+ }
+ | {
+ type: ObservabilityEventType.TaskReset;
+ taskId: string;
+ }
+ | {
+ type: ObservabilityEventType.DeclareTaskDependency;
+ taskId: string;
+ }
+ | {
+ type: ObservabilityEventType.CryptoStart;
+ operation: string;
+ }
+ | {
+ type: ObservabilityEventType.CryptoFinishSuccess;
+ operation: string;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.CryptoFinishError;
+ operation: string;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.ShepherdTaskResult;
+ taskId: string;
+ resultType: string;
+ durationMs: number;
+ }
+ | {
+ type: ObservabilityEventType.Message;
+ contents: string;
+ }
+ | {
+ type: ObservabilityEventType.DeclareConcernsTransaction;
+ transactionId: TransactionIdStr;
+ };
+
+```
+
### DumpCoinsOp
```typescript
/**
@@ -4416,6 +4611,29 @@ export interface RunFixupRequest {
```
+### TestingGetDiagnosticsOp
+```typescript
+export type TestingGetDiagnosticsOp = {
+ op: WalletApiOperation.TestingGetDiagnostics;
+ request: EmptyObject;
+ response: TestingGetDiagnosticsResponse;
+};
+// TestingGetDiagnostics = "testingGetDiagnostics"
+
+```
+```typescript
+export interface TestingGetDiagnosticsResponse {
+ version: 0;
+ exchangeEntries: {
+ exchangeBaseUrl: string;
+ numDenoms: number;
+ numWithdrawableDenoms: number;
+ numCandidateWithdrawableDenoms: number;
+ }[];
+}
+
+```
+
### SetCoinSuspendedOp
```typescript
/**
@@ -5352,7 +5570,7 @@ interface MerchantContractTermsCommon {
delivery_date?: TalerProtocolTimestamp;
delivery_location?: Location;
exchanges: Exchange[];
- products?: Product[];
+ products?: ProductSold[];
refund_deadline: TalerProtocolTimestamp;
wire_transfer_deadline: TalerProtocolTimestamp;
timestamp: TalerProtocolTimestamp;
@@ -5363,10 +5581,11 @@ interface MerchantContractTermsCommon {
fulfillment_message_i18n?: InternationalizedString;
extra?: any;
minimum_age?: Integer;
+ default_money_pot?: Integer;
}
```
```typescript
-export interface Product {
+export interface ProductSold {
product_id?: string;
product_name?: string;
description: string;
@@ -5379,6 +5598,7 @@ export interface Product {
image?: ImageDataUrl;
taxes?: Tax[];
delivery_date?: Timestamp;
+ product_money_pot?: Integer;
}
```
```typescript