wallet-core: use/allow txids as tombstone

This commit is contained in:
Florian Dold 2023-05-24 15:07:29 +02:00
parent 7eef3f57d2
commit 126e9e7457
No known key found for this signature in database
GPG Key ID: D2E4F00F29D02A4B
2 changed files with 5 additions and 21 deletions

View File

@ -364,7 +364,7 @@ export enum TombstoneTag {
/**
* Create an event ID from the type and the primary key for the event.
*
*
* @deprecated use constructTombstone instead
*/
export function makeTombstoneId(type: TombstoneTag, ...args: string[]): string {
@ -465,7 +465,7 @@ export type ParsedTombstone =
tag: TombstoneTag.DeleteWithdrawalGroup;
withdrawalGroupId: string;
}
| { tag: TombstoneTag.DeleteRefund; refundGroupId: string };
| { tag: TombstoneTag.DeleteRefund; refundGroupId: string }
export function constructTombstone(p: ParsedTombstone): TombstoneIdStr {
switch (p.tag) {

View File

@ -24,7 +24,6 @@ import {
Logger,
NotificationType,
OrderShortInfo,
PaymentStatus,
PeerContractTerms,
RefundInfoShort,
RefundPaymentInfo,
@ -54,7 +53,6 @@ import {
WithdrawalGroupRecord,
WithdrawalRecordType,
WalletContractData,
PeerPushPaymentInitiationStatus,
PeerPullPaymentIncomingStatus,
DepositElementStatus,
WithdrawalGroupStatus,
@ -71,8 +69,6 @@ import { assertUnreachable } from "../util/assertUnreachable.js";
import { checkDbInvariant, checkLogicInvariant } from "../util/invariants.js";
import { constructTaskIdentifier, TaskIdentifiers } from "../util/retries.js";
import {
constructTombstone,
makeTombstoneId,
resetOperationTimeout,
runOperationWithErrorReporting,
TombstoneTag,
@ -1625,12 +1621,7 @@ export async function deleteTransaction(
return;
}
await tx.refundGroups.delete(refundGroupId);
await tx.tombstones.put({
id: constructTombstone({
tag: TombstoneTag.DeleteRefund,
refundGroupId,
}),
});
await tx.tombstones.put({ id: transactionId });
});
return;
}
@ -1645,12 +1636,7 @@ export async function deleteTransaction(
);
if (debit) {
await tx.peerPullPaymentIncoming.delete(peerPullPaymentIncomingId);
await tx.tombstones.put({
id: makeTombstoneId(
TombstoneTag.DeletePeerPullDebit,
peerPullPaymentIncomingId,
),
});
await tx.tombstones.put({ id: transactionId });
}
});
@ -1665,9 +1651,7 @@ export async function deleteTransaction(
const debit = await tx.peerPushPaymentInitiations.get(pursePub);
if (debit) {
await tx.peerPushPaymentInitiations.delete(pursePub);
await tx.tombstones.put({
id: makeTombstoneId(TombstoneTag.DeletePeerPushDebit, pursePub),
});
await tx.tombstones.put({ id: transactionId });
}
});
return;