upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/docs/pool-directory.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/pool-directory.md')
-rw-r--r--docs/pool-directory.md43
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/pool-directory.md b/docs/pool-directory.md
new file mode 100644
index 0000000..76269b9
--- /dev/null
+++ b/docs/pool-directory.md
@@ -0,0 +1,43 @@
1# Public Pool Directory
2
3`pool.bitflash.network` should be a public directory, not a network dependency.
4Nodes discover pools through Nostr and `.btf`; the website only helps humans
5compare operators.
6
7Operators can publish the `pool_status.json` and `pool_rounds.json` files
8produced by:
9
10```bash
11bitflash -nogui -gen -operator \
12 -poolstatusfile=/var/www/pool_status.json \
13 -poolroundsfile=/var/www/pool_rounds.json
14```
15
16Build a static directory from one or more status files:
17
18```bash
19python3 scripts/build-pool-index.py --out-dir public/pool \
20 https://operator-one.example/pool_status.json \
21 https://operator-two.example/pool_status.json
22```
23
24The generated output contains:
25
26- `index.html`: human-readable ranking page.
27- `pools.json`: machine-readable API for `api.bitflash.network/pools.json`.
28
29When a source is an HTTP(S) `pool_status.json`, the directory links to a
30`pool_rounds.json` proof file next to it. That file records the block height,
31block hash, coinbase txid, coinbase value, pool fee, total shares, per-address
32share counts, computed payouts, and payout txids once paid.
33
34Ranking order is intentionally simple:
35
361. online pools first;
372. higher reported hashrate;
383. more authorized miners;
394. lower fee;
405. name as a stable tie-breaker.
41
42An entry is considered online when the source says the pool is running and its
43status file is no more than 120 seconds old.