[grade=A] P1-8: replace 66 console.* calls across 6 remaining files with structured logger

Files changed:
- src/security/crypto-utils.js: 16 calls → log tagged 'crypto'
- src/security/docker-security.js: 15 calls → log tagged 'security'
- src/managers/port-lock-manager.js: 16 calls → log tagged 'portlock'
- src/docker/self-updater.js: 10 calls → log tagged 'updater'
- src/security/event-workers.js: 5 calls → log tagged 'events'
- src/security/keychain-manager.js: 4 calls → log tagged 'keychain'

Fixed 2 bugs found during sweep:
- self-updater.js:161 — arrow expression body had trailing semicolon (SyntaxError)
- port-lock-manager.js:137 — log.error referenced 'port' var out of scope (ReferenceError)

1539/1539 Jest tests pass. All ESLint warnings pre-existing (0 new).
This commit is contained in:
Hermes
2026-08-10 20:23:58 -07:00
parent 191d3340a7
commit 7b04bc1d3c
6 changed files with 72 additions and 71 deletions
@@ -7,6 +7,7 @@
const { execSync, execFileSync } = require('child_process');
const os = require('os');
const crypto = require('crypto');
const { log } = require('../utils/logging');
const SERVICE_NAME = 'DashCaddy';
const ACCOUNT_PREFIX = 'dashcaddy';
@@ -44,7 +45,7 @@ class KeychainManager {
}
return false;
} catch {
console.warn('[Keychain] OS keychain not available, will use encrypted file storage');
log.warn('keychain', 'OS keychain not available, will use encrypted file storage');
return false;
}
}
@@ -72,7 +73,7 @@ class KeychainManager {
}
return false;
} catch (error) {
console.error(`[Keychain] Failed to store ${key}:`, error.message);
log.error('keychain', error, { key, operation: 'store' });
return false;
}
}
@@ -99,7 +100,7 @@ class KeychainManager {
}
return null;
} catch (error) {
console.error(`[Keychain] Failed to retrieve ${key}:`, error.message);
log.error('keychain', error, { key, operation: 'retrieve' });
return null;
}
}
@@ -126,7 +127,7 @@ class KeychainManager {
}
return false;
} catch (error) {
console.error(`[Keychain] Failed to delete ${key}:`, error.message);
log.error('keychain', error, { key, operation: 'delete' });
return false;
}
}