Bump version to 0.2.7 to add upstream share card features
This commit is contained in:
28 files changed
+255
-254
No files matched your search
+13
-13
@@ -63,7 +63,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
// bitcoind's RPC + ZMQ endpoints over the LXC bridge (see bitcoindBridge in
|
||||
// utils.ts). Each resolves null while bitcoind is absent; the .const()
|
||||
// watches heal main with a restart when bitcoind appears, disappears, or
|
||||
// changes ports — and never on a routine bitcoind update.
|
||||
// changes ports, and never on a routine bitcoind update.
|
||||
const bitcoind = await bitcoindBridge(effects)
|
||||
|
||||
// Clearnet domains attached to the Stratum (TLS, Public Domain) interface.
|
||||
@@ -71,7 +71,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
// interface UI, and attaching or removing one restarts main through the same
|
||||
// reactive mechanism as everything else above.
|
||||
//
|
||||
// Used only to label the connection in the dashboard — the certificates
|
||||
// Used only to label the connection in the dashboard, the certificates
|
||||
// themselves are the OS's concern now, so this never gates anything starting.
|
||||
const tlsDomains = await publicDomains(
|
||||
effects,
|
||||
@@ -181,7 +181,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
// we're never blind to a tip change (every second of stale work in solo
|
||||
// mode is hashrate burned on a dead block):
|
||||
// 1. Blockpoll thread: polls getbestblockhash every `blockpoll` ms. Only
|
||||
// runs when notify=false — so keep notify=false.
|
||||
// runs when notify=false, so keep notify=false.
|
||||
// 2. ZMQ hashblock subscriber: instant push from bitcoind. Point it at
|
||||
// the real bridge endpoint; fall back to ckpool's (dead, harmless)
|
||||
// loopback default while bitcoind's ZMQ interface is unavailable.
|
||||
@@ -229,7 +229,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
ckpoolConfTemplate,
|
||||
)
|
||||
|
||||
// Public-domain TLS is StartOS's job, not ours — see the stratum-tls-public
|
||||
// Public-domain TLS is StartOS's job, not ours, see the stratum-tls-public
|
||||
// interface in interfaces.ts. The OS terminates ACME-backed TLS and forwards
|
||||
// plaintext into ckpool's third bind, so nothing here fetches, writes or
|
||||
// serves a certificate for a public domain.
|
||||
@@ -251,7 +251,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
//
|
||||
// Certificate selection is by SNI, and it degrades in exactly the direction
|
||||
// we need. The primary service's certificate is what a client gets when it
|
||||
// sends no SNI or an unrecognised one — which is precisely the miner that
|
||||
// sends no SNI or an unrecognised one, which is precisely the miner that
|
||||
// connected to a bare LAN IP and therefore cannot use a public certificate
|
||||
// anyway. A miner that connected by domain name sends SNI, matches a
|
||||
// secondary service, and gets the CA-issued certificate for that name.
|
||||
@@ -282,7 +282,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
`accept = 0.0.0.0:${stratumTlsInternalPort}`,
|
||||
`connect = 127.0.0.1:${ckpoolTlsLoopbackPort}`,
|
||||
`cert = ${tlsDir}/stratum.pem`,
|
||||
// No client-cert auth — stratum over TLS is opportunistic encryption;
|
||||
// No client-cert auth, stratum over TLS is opportunistic encryption;
|
||||
// the stratum protocol layer handles miner auth via username.
|
||||
'verify = 0',
|
||||
'',
|
||||
@@ -359,7 +359,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
// network-correct self-test address, renders the final ckpool.conf,
|
||||
// then execs ckpool. When kamado-api kills ckpool on bitcoind
|
||||
// failure (so miners can fail over), StartOS restarts the daemon and
|
||||
// the script blocks again until bitcoind recovers — the 0.3.x
|
||||
// the script blocks again until bitcoind recovers, the 0.3.x
|
||||
// supervised-restart loop, expressed as a daemon.
|
||||
command: ['kamado-ckpool-run.sh'],
|
||||
env: {
|
||||
@@ -390,7 +390,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
if (!h)
|
||||
return {
|
||||
result: 'failure',
|
||||
message: i18n('Kamado API is unreachable — service may be down'),
|
||||
message: i18n('Kamado API is unreachable, service may be down'),
|
||||
}
|
||||
if (h.bitcoin)
|
||||
return {
|
||||
@@ -415,7 +415,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
if (!h)
|
||||
return {
|
||||
result: 'failure',
|
||||
message: i18n('Kamado API is unreachable — service may be down'),
|
||||
message: i18n('Kamado API is unreachable, service may be down'),
|
||||
}
|
||||
const gap = h.submit_gap ?? 0
|
||||
if (gap === 0)
|
||||
@@ -426,7 +426,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
return {
|
||||
result: 'failure',
|
||||
message: `${gap} ${i18n(
|
||||
'block(s) submitted to bitcoind but not confirmed — check Bitcoin Core logs',
|
||||
'block(s) submitted to bitcoind but not confirmed, check Bitcoin Core logs',
|
||||
)}`,
|
||||
}
|
||||
},
|
||||
@@ -444,14 +444,14 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
return {
|
||||
result: 'failure',
|
||||
message: i18n(
|
||||
'Kamado API is unreachable — service may be down',
|
||||
'Kamado API is unreachable, service may be down',
|
||||
),
|
||||
}
|
||||
if (h.zmq_stale)
|
||||
return {
|
||||
result: 'failure',
|
||||
message: i18n(
|
||||
'ZMQ block feed is stale — block notifications are falling back to RPC polling',
|
||||
'ZMQ block feed is stale, block notifications are falling back to RPC polling',
|
||||
),
|
||||
}
|
||||
return {
|
||||
@@ -504,7 +504,7 @@ export const main = sdk.setupMain(async ({ effects }) => {
|
||||
),
|
||||
},
|
||||
// stunnel now runs only when local TLS is on, and that is exactly
|
||||
// when the self-signed certificate it serves is generated — so the
|
||||
// when the self-signed certificate it serves is generated, so the
|
||||
// oneshot is always the dependency.
|
||||
requires: ['tls-cert'],
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user