Skip to content

Commit 344362a

Browse files
committed
dummy commit
1 parent ec7bf92 commit 344362a

File tree

6 files changed

+43
-21
lines changed

6 files changed

+43
-21
lines changed

src/bin/taker.rs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use coinswap::{
88
};
99
use log::LevelFilter;
1010
use serde_json::{json, to_string_pretty};
11-
use std::{path::PathBuf, str::FromStr};
11+
use std::{path::PathBuf, str::FromStr, thread, time::Duration};
1212

1313
#[cfg(feature = "integration-test")]
1414
use coinswap::taker::TakerBehavior;
@@ -35,7 +35,7 @@ struct Cli {
3535
name = "ADDRESS:PORT",
3636
long,
3737
short = 'r',
38-
default_value = "127.0.0.1:38332"
38+
default_value = "172.81.178.3:48332"
3939
)]
4040
pub rpc: String,
4141

@@ -44,7 +44,7 @@ struct Cli {
4444
name = "ZMQ",
4545
long,
4646
short = 'z',
47-
default_value = "tcp://127.0.0.1:28332"
47+
default_value = "tcp://172.81.178.3:58332"
4848
)]
4949
pub zmq: String,
5050

@@ -178,7 +178,7 @@ fn main() -> Result<(), TakerError> {
178178
let rpc_config = RPCConfig {
179179
url: args.rpc,
180180
auth: Auth::UserPass(args.auth.0, args.auth.1),
181-
wallet_name: "random".to_string(), // we can put anything here as it will get updated in the init.
181+
wallet_name: "random_1".to_string(), // we can put anything here as it will get updated in the init.
182182
};
183183

184184
match &args.command {
@@ -332,7 +332,10 @@ fn main() -> Result<(), TakerError> {
332332

333333
taker.get_wallet_mut().sync_and_save()?;
334334
}
335-
Commands::FetchOffers => {
335+
Commands::FetchOffers => loop {
336+
// println!("I am here");
337+
// let makers= taker.watch_service.request_maker_address();
338+
// println!("{makers:#?}");
336339
let all_offers = {
337340
let offerbook = taker.fetch_offers()?;
338341
offerbook
@@ -343,15 +346,15 @@ fn main() -> Result<(), TakerError> {
343346
.collect::<Vec<_>>()
344347
};
345348
if all_offers.is_empty() {
346-
println!("NO LIVE OFFERS FOUND!! You should run a maker!!");
347-
return Ok(());
349+
// println!("NO LIVE OFFERS FOUND!! You should run a maker!!");
350+
thread::sleep(Duration::from_secs(5));
348351
} else {
349352
all_offers.iter().try_for_each(|offer| {
350353
println!("{}", taker.display_offer(offer)?);
351354
Ok::<_, TakerError>(())
352355
})?;
353356
}
354-
}
357+
},
355358
Commands::Coinswap { makers, amount } => {
356359
// Note: taproot coinswap is handled at the top level to avoid
357360
// double Taker initialization. Regular ECDSA coinswap goes here.

src/taker/api.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@ pub struct Taker {
171171
ongoing_swap_state: OngoingSwapState,
172172
#[cfg(feature = "integration-test")]
173173
behavior: TakerBehavior,
174-
watch_service: WatchService,
174+
/// iyiib
175+
pub watch_service: WatchService,
175176
offer_sync_handle: OfferSyncHandle,
176177
}
177178

@@ -274,7 +275,7 @@ impl Taker {
274275
)
275276
.start_legacy();
276277

277-
wallet.sync_and_save()?;
278+
// wallet.sync_and_save()?;
278279

279280
Ok(Self {
280281
wallet,

src/taker/offers.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ use crate::{
4646
use super::error::TakerError;
4747

4848
#[cfg(not(feature = "integration-test"))]
49-
const OFFER_SYNC_INTERVAL: Duration = Duration::from_secs(30 * 60);
49+
const OFFER_SYNC_INTERVAL: Duration = Duration::from_secs(10 * 60);
5050

5151
#[cfg(feature = "integration-test")]
5252
const OFFER_SYNC_INTERVAL: Duration = Duration::from_secs(2);
@@ -255,10 +255,9 @@ impl OfferSyncService {
255255
where
256256
F: FnOnce(Vec<MakerAddress>, u16) -> Result<Vec<OfferAndAddress>, TakerError>,
257257
{
258-
self.watch_service.request_maker_address();
259-
258+
260259
let Some(WatcherEvent::MakerAddresses { maker_addresses }) =
261-
self.watch_service.wait_for_event()
260+
self.watch_service.request_maker_address()
262261
else {
263262
return Ok(());
264263
};

src/watch_tower/rpc_backend.rs

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//! Watchtower RPC backend: querying bitcoind, scanning mempool, and running discovery.
22
33
use std::{
4-
sync::{Arc, Mutex},
4+
sync::{Arc, Mutex, atomic::{AtomicU64, Ordering}},
55
thread,
66
time::Duration,
77
};
@@ -90,6 +90,7 @@ impl BitcoinRpc {
9090
/// Discovers maker fidelity bonds by scanning historical blocks.
9191
pub fn run_discovery(self, registry: FileRegistry) -> Result<(), WatcherError> {
9292
log::info!("Starting with market discovery");
93+
let scanned_blocks = Arc::new(AtomicU64::new(0));
9394

9495
let blockchain_info = self.get_blockchain_info()?;
9596
let block_hash = blockchain_info.best_block_hash;
@@ -117,6 +118,7 @@ impl BitcoinRpc {
117118
let mut handles = Vec::with_capacity(threads);
118119

119120
for thread_id in 0..threads {
121+
let scanned_blocks = Arc::clone(&scanned_blocks);
120122
let registry = Arc::clone(&registry);
121123
let this = Arc::clone(&this);
122124

@@ -147,13 +149,25 @@ impl BitcoinRpc {
147149
}
148150
};
149151

152+
let prev = scanned_blocks.fetch_add(1, Ordering::Relaxed) + 1;
153+
154+
if prev % 100 == 0 {
155+
log::info!(
156+
"Market discovery progress: scanned {} blocks (tip={}, cutoff_height~{})",
157+
prev,
158+
tip_height,
159+
lowest_scanned,
160+
);
161+
}
162+
150163
if block.header.time < cutoff_time as u32 {
151164
break;
152165
}
153166

154167
for tx in block.txdata {
155168
if let Some(fidelity_announcement) = process_fidelity(&tx) {
156169
local_found += 1;
170+
log::info!("Fidelity found: {fidelity_announcement:#?}");
157171
registry
158172
.lock()
159173
.unwrap()
@@ -186,11 +200,15 @@ impl BitcoinRpc {
186200
});
187201
}
188202

203+
let total_scanned = scanned_blocks.load(Ordering::Relaxed);
204+
189205
log::info!(
190-
"Market discovery completed: scanned shards up to cutoff, found {} makers",
206+
"Market discovery completed: scanned {} blocks, found {} makers",
207+
total_scanned,
191208
makers_found
192209
);
193210

211+
194212
Ok(())
195213
}
196214
}

src/watch_tower/service.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,9 @@ impl WatchService {
5252
}
5353

5454
/// Requests the list of maker addresses.
55-
pub fn request_maker_address(&self) {
55+
pub fn request_maker_address(&self) -> Option<WatcherEvent> {
5656
_ = self.tx.send(WatcherCommand::MakerAddress);
57+
self.rx.lock().ok()?.recv().ok()
5758
}
5859

5960
/// Signals the watcher to shut down gracefully.

src/watch_tower/watcher.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -193,10 +193,10 @@ impl<R: Role> Watcher<R> {
193193
}
194194
BackendEvent::BlockConnected(b) => {
195195
if let Ok(block) = deserialize::<Block>(&b.hash) {
196-
self.registry.save_checkpoint(Checkpoint {
197-
height: block.bip34_block_height().unwrap(),
198-
hash: block.block_hash(),
199-
});
196+
// self.registry.save_checkpoint(Checkpoint {
197+
// height: block.bip34_block_height().unwrap(),
198+
// hash: block.block_hash(),
199+
// });
200200
process_block(block, &mut self.registry);
201201
}
202202
}

0 commit comments

Comments
 (0)