a73e44de9a
- settle.ts: серверный планировщик (startScheduler, тик SMART_SETTLE_INTERVAL_MS) находит просроченные открытые ставки, берёт цену из истории на expire_time, сам зовёт close_bet; рассылает bet_closed - gateway.ts: ручка POST /close удалена (404); проверка 'одна открытая ставка на адрес' под withBetLock -> 409 с openBetId; bet_open по WS при создании; lastState прокидывается в settleOnce (без него лог спамил каждый тик) - settle.ts: пакетный getProgramAccounts вместо поштучного перебора по id (замер: 3 мс против 28 мс, 9.3x, 1 запрос вместо 15); фильтр не-Bet аккаунтов по BET_ACCOUNT_SIZE (Global исключён из unmapped) - check.ts: +38 проверок (decodeBet, openBetOf, dueForSettle, события, границы)
45 lines
879 B
YAML
45 lines
879 B
YAML
replicaCount: 1
|
|
|
|
image:
|
|
name: 'images.binom.pw/smart/updown-relayer'
|
|
pullPolicy: IfNotPresent
|
|
tag: ''
|
|
|
|
imagePullSecrets:
|
|
- name: regcred
|
|
|
|
port: 8895
|
|
|
|
ingress:
|
|
host: ''
|
|
enabled: false
|
|
|
|
smart:
|
|
rpcUrl: 'http://192.168.76.181:8899'
|
|
programId: '9ALsnxXNzDBv3mokngCHbruRTWUZiWR7pf7vswS1fCpf'
|
|
tokenMint: '8dpXNUgWN4m8ohhi6dkVqw4XezbDF7oKDSgnbf2VKjQJ'
|
|
adminKeypair: '/app/secrets/admin-keypair.json'
|
|
mode: test
|
|
allowAirdrop: true
|
|
minAmount: 100000000
|
|
maxAmount: 10000000000
|
|
multiplierBps: 13000
|
|
expirySeconds: 15
|
|
startBalance: 10000000000
|
|
priceHistory: '/app/data/price-history.db'
|
|
priceRetentionHours: 24
|
|
settleIntervalMs: 2000
|
|
|
|
nats:
|
|
url: 'nats://192.168.88.93:4222'
|
|
priceSubject: 'market.price.solusdt'
|
|
|
|
keystorePath: '/app/data/.gateway-bettors.json'
|
|
|
|
persistence:
|
|
enabled: true
|
|
size: 1Gi
|
|
storageClassName: local-path
|
|
|
|
resources: {}
|