* build: add npm package build script with telemetry injection
Add a new build script that automates the NPM package creation process with proper telemetry key injection. The script:
- Validates required environment variables (TELEMETRY_SERVICE_API_KEY, ERROR_SERVICE_API_KEY)
- Verifies Node.js can access environment variables
- Builds Go CLI binaries for all platforms
- Compiles standalone package with esbuild
- Verifies telemetry keys are properly injected into compiled code
- Provides colored output and detailed error messages
Added npm script `build:npm` to package.json for easy invocation.
This ensures consistent builds with telemetry properly configured for production deployments.
* feat(hostbridge): add telemetry settings support for CLI mode
Add GetTelemetrySettings and SubscribeToTelemetrySettings methods to EnvService to handle telemetry configuration in CLI mode.
- GetTelemetrySettings retrieves telemetry status from POSTHOG_TELEMETRY_ENABLED environment variable
- SubscribeToTelemetrySettings provides a stream for telemetry setting updates, sending initial state and keeping stream open
- In CLI mode, telemetry settings are static and determined by environment variable at startup
This enables proper telemetry control and monitoring in CLI environments.
* feat(logging): replace HostProvider with node-machine-id for machine identification
Replace custom HostProvider.env.getMachineId() implementation with the
node-machine-id npm package for retrieving machine identifiers. This
simplifies the codebase by using a well-maintained library instead of
custom host provider logic.
Changes:
- Add node-machine-id dependency (^1.1.12)
- Remove dotenv dev dependency (no longer needed)
- Update distinctId service to use node-machine-id directly
- Refactor tests to stub node-machine-id instead of HostProvider
- Remove HostProvider mock utilities from tests
This change improves maintainability and reduces custom code while
maintaining the same functionality for generating stable machine IDs.
* Removing dead code