From 43232ccc32821e2b88c30f42effa67f60a4423bb Mon Sep 17 00:00:00 2001 From: KernelDeimos Date: Fri, 29 Aug 2025 19:30:48 -0400 Subject: [PATCH] fix: less copying of service configs --- src/backend/src/services/BaseService.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/backend/src/services/BaseService.js b/src/backend/src/services/BaseService.js index 475e3356b..0059c869f 100644 --- a/src/backend/src/services/BaseService.js +++ b/src/backend/src/services/BaseService.js @@ -40,13 +40,20 @@ const NOOP = async () => {}; */ class BaseService extends concepts.Service { constructor (service_resources, ...a) { - const { services, config, my_config, name, args, context } = service_resources; + const { services, config, name, args, context } = service_resources; super(service_resources, ...a); this.args = args; this.service_name = name || this.constructor.name; this.services = services; - this.config = my_config; + let configOverride = undefined; + Object.defineProperty(this, 'config', { + get: () => configOverride ?? config.services?.[name] ?? {}, + set: why => { + console.warn('replacing config like this is probably a bad idea'); + configOverride = why; + }, + }); this.global_config = config; this.context = context;