From 018ef3c60ac42851741bc2ef5d9948ed9b9f56f0 Mon Sep 17 00:00:00 2001 From: Patrick Mulligan Date: Mon, 30 Mar 2026 11:24:45 -0400 Subject: [PATCH] fix: use actual machine model in availability broadcast The Kind 30078 availability event was using 'atm' as the model placeholder. Now reads the actual model from runtime config (batm3, douro, sintra, etc.) so monitoring dashboards can distinguish between different ATM types. Co-Authored-By: Claude Opus 4.6 (1M context) --- apps/machine/src/stores/atm.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/machine/src/stores/atm.ts b/apps/machine/src/stores/atm.ts index 1dc58ce..a8e1319 100644 --- a/apps/machine/src/stores/atm.ts +++ b/apps/machine/src/stores/atm.ts @@ -260,6 +260,7 @@ export const useAtmStore = defineStore('atm', () => { const allowMockFallback = ref(true) // default true for browser dev const initError = ref(null) // fatal error → maintenance screen const fiatCode = ref('USD') + const machineModel = ref('atm') const useLiveServices = ref(false) const connectionStatus = ref<'disconnected' | 'connecting' | 'connected' | 'error'>( 'disconnected' @@ -564,7 +565,7 @@ export const useAtmStore = defineStore('atm', () => { initialize(servicesWithInventory) // Start broadcasting availability (Kind 30078) with 5-minute heartbeat - startAvailabilityBroadcast(services.nostrClient, services.identity, 'atm') + startAvailabilityBroadcast(services.nostrClient, services.identity, machineModel.value) } catch (error) { console.error('[ATM] Failed to connect to Lightning.Pub:', error) connectionStatus.value = 'error' @@ -856,7 +857,7 @@ export const useAtmStore = defineStore('atm', () => { }) // Start broadcasting availability (Kind 30078) - startAvailabilityBroadcast(lightning.nostrClient, lightning.identity, 'atm') + startAvailabilityBroadcast(lightning.nostrClient, lightning.identity, machineModel.value) console.log('[ATM] Fully initialized with HAL + Lightning') } catch (error) { @@ -896,6 +897,7 @@ export const useAtmStore = defineStore('atm', () => { debugMode.value = false } const model = (runtimeConfig.machineModel || 'sintra') as MachineModel + machineModel.value = model const runtimeFiatCode = runtimeConfig.fiatCode || 'USD' fiatCode.value = runtimeFiatCode @@ -1111,7 +1113,7 @@ export const useAtmStore = defineStore('atm', () => { // Real hardware connected — disable mock bill simulator debugMode.value = false // Start broadcasting availability (Kind 30078) - startAvailabilityBroadcast(lightning.nostrClient, lightning.identity, 'atm') + startAvailabilityBroadcast(lightning.nostrClient, lightning.identity, machineModel.value) console.log('[ATM] Fully initialized with HAL (IPC) + Lightning') } catch (error) {