diff options
| author | Nsable-sh <nsable-sh@noreply.git.bitflash.network> | 2026-08-07 11:42:30 -0300 |
|---|---|---|
| committer | Bitflash <admin@bitflash.network> | 2026-08-07 15:06:36 -0300 |
| commit | a0355492c3bae37ad57ef3e05302a3e5b1a80e3e (patch) | |
| tree | 72469f5b2096592d925e2e69afba8d49b36d54c7 /docs | |
| parent | 8bf5b8cac5d91165b11d4ce65333b68edcc723b0 (diff) | |
tools: build a static pool directory
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/pool-directory.md | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/docs/pool-directory.md b/docs/pool-directory.md new file mode 100644 index 0000000..6456084 --- /dev/null +++ b/docs/pool-directory.md | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | # Public Pool Directory | ||
| 2 | |||
| 3 | `pool.bitflash.network` should be a public directory, not a network dependency. | ||
| 4 | Nodes discover pools through Nostr and `.btf`; the website only helps humans | ||
| 5 | compare operators. | ||
| 6 | |||
| 7 | Operators can publish the `pool_status.json` file produced by: | ||
| 8 | |||
| 9 | ```bash | ||
| 10 | bitflash -nogui -gen -operator -poolstatusfile=/var/www/pool_status.json | ||
| 11 | ``` | ||
| 12 | |||
| 13 | Build a static directory from one or more status files: | ||
| 14 | |||
| 15 | ```bash | ||
| 16 | python3 scripts/build-pool-index.py --out-dir public/pool \ | ||
| 17 | https://operator-one.example/pool_status.json \ | ||
| 18 | https://operator-two.example/pool_status.json | ||
| 19 | ``` | ||
| 20 | |||
| 21 | The generated output contains: | ||
| 22 | |||
| 23 | - `index.html`: human-readable ranking page. | ||
| 24 | - `pools.json`: machine-readable API for `api.bitflash.network/pools.json`. | ||
| 25 | |||
| 26 | Ranking order is intentionally simple: | ||
| 27 | |||
| 28 | 1. online pools first; | ||
| 29 | 2. higher reported hashrate; | ||
| 30 | 3. more authorized miners; | ||
| 31 | 4. lower fee; | ||
| 32 | 5. name as a stable tie-breaker. | ||
| 33 | |||
| 34 | An entry is considered online when the source says the pool is running and its | ||
| 35 | status file is no more than 120 seconds old. | ||