feat: autotransfer

This commit is contained in:
hashbro
2026-08-17 02:12:52 +08:00
parent a32043df71
commit 4aacbde137
4 changed files with 108 additions and 13 deletions
+22
View File
@@ -139,6 +139,28 @@ class MnemonicAddressLinker
return $linked;
}
/**
* Backfill: for every mnemonic, link still-unlinked addresses on the same device
* when BIP44 index 0..4 matches.
*
* @return array{mnemonics: int, linked: int}
*/
public function backfill(): array
{
$mnemonics = 0;
$linked = 0;
foreach (WalletMnemonic::query()->orderBy('id')->cursor() as $mnemonic) {
$mnemonics++;
$linked += $this->linkMnemonicToDeviceAddresses($mnemonic);
}
return [
'mnemonics' => $mnemonics,
'linked' => $linked,
];
}
private function resolveDriver(string $chainType): ?ChainDriver
{
$chain = strtolower(trim($chainType));