This ticket covers refactoring ai/mcp/server/memory-core/services/databaseLifecycleService.mjs into a singleton class that extends Neo.core.Base. This service is responsible for managing the lifecycle of the ChromaDB process (starting, stopping, and checking its status).
Acceptance Criteria
- The
databaseLifecycleService.mjs module is refactored into a DatabaseLifecycleService class.
- The
DatabaseLifecycleService class extends Neo.core.Base and is configured as a singleton.
- State variables (e.g.,
chromaProcess) are moved into the Neo config system (e.g., chromaProcess_).
- Existing functions (
isDbRunning, start_database, stop_database, get_database_status) are converted into class methods.
- The
ai/mcp/server/memory-core/services/toolService.mjs is updated to import the DatabaseLifecycleService singleton.
- Any services that depend on
databaseLifecycleService are updated to use the new singleton instance.
- The
neo-memory-core__healthcheck tool and other related tools continue to function correctly after the refactoring.
This ticket covers refactoring
ai/mcp/server/memory-core/services/databaseLifecycleService.mjsinto a singleton class that extendsNeo.core.Base. This service is responsible for managing the lifecycle of the ChromaDB process (starting, stopping, and checking its status).Acceptance Criteria
databaseLifecycleService.mjsmodule is refactored into aDatabaseLifecycleServiceclass.DatabaseLifecycleServiceclass extendsNeo.core.Baseand is configured as a singleton.chromaProcess) are moved into the Neo config system (e.g.,chromaProcess_).isDbRunning,start_database,stop_database,get_database_status) are converted into class methods.ai/mcp/server/memory-core/services/toolService.mjsis updated to import theDatabaseLifecycleServicesingleton.databaseLifecycleServiceare updated to use the new singleton instance.neo-memory-core__healthchecktool and other related tools continue to function correctly after the refactoring.