Skip to content

Commit 7d21d54

Browse files
cj-vanaclaude
andcommitted
Fix observer matching to use case-insensitive name patterns
Handles various spellings: observer, 0bserver, obs3rver, 0bs3rver, gateway This ensures observers stay online regardless of node_type set by meshcore-bot sync 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 93885d5 commit 7d21d54

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/app/api/health/route.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,11 +259,18 @@ function calculateNetworkScore(
259259

260260
/**
261261
* Update observer/gateway node's last_seen timestamp when bot is active
262+
* Matches by node_type OR name patterns (case-insensitive, handles leetspeak)
262263
*/
263264
async function updateObserverLastSeen(): Promise<void> {
264265
try {
265266
await db.execute({
266-
sql: `UPDATE nodes SET last_seen = datetime('now') WHERE node_type = 'gateway'`,
267+
sql: `UPDATE nodes SET last_seen = datetime('now')
268+
WHERE node_type = 'gateway'
269+
OR LOWER(name) LIKE '%observer%'
270+
OR LOWER(name) LIKE '%0bserver%'
271+
OR LOWER(name) LIKE '%obs3rver%'
272+
OR LOWER(name) LIKE '%0bs3rver%'
273+
OR LOWER(name) LIKE '%gateway%'`,
267274
args: [],
268275
});
269276
} catch {

0 commit comments

Comments
 (0)