-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Milestone: 0.10
Summary
Remove the telemetry application from HARP as it provides little value while forcing external HTTP requests to be made. The telemetry app currently sends anonymous usage statistics to an external endpoint every 24 hours, which adds unnecessary network overhead and potential privacy concerns without providing significant value to users or maintainers.
Context
The telemetry application (harp_apps.telemetry) is currently:
- Included by default in the application stack (
harp/config/defaults.py:12) - Sends data to
https://connect.makersquad.fr/t/aevery 24 hours - Collects anonymized platform fingerprint, configured applications list, version, and usage metrics
- Can be disabled via
--disable telemetrycommand-line flag - Has no user-facing features beyond the opt-out mechanism
- Already disabled in test environments (
conftest.py:11)
The removal is motivated by:
- Reducing unnecessary external network requests that could fail or cause delays
- Simplifying the application stack by removing non-essential components
- Eliminating potential privacy concerns for users in regulated environments
- Following the principle of minimalism - removing features that provide little value
Output and Testing Scenarios
Expected Output:
- HARP starts without attempting any telemetry connections
- No external requests to telemetry endpoints
- No telemetry-related log messages
- Application continues to function normally without telemetry
Testing Scenarios:
- Happy Path: Start HARP normally, verify no telemetry connections are attempted
- Configuration Check: Verify telemetry is not in default applications list
- Clean Removal: Ensure no telemetry imports or references remain in the codebase
Possible Implementation
Complete removal of the telemetry app following this approach:
-
Remove from default applications:
- Remove
"telemetry"fromDEFAULT_APPLICATIONSinharp/config/defaults.py
- Remove
-
Delete telemetry application code:
- Remove entire directory:
harp_apps/telemetry/ - Remove from test configurations in
conftest.py
- Remove entire directory:
-
Clean up documentation:
- Remove
docs/apps/telemetry/directory - Remove references from
docs/reference/apps/harp_apps.telemetry* - Update any documentation mentioning the
--disable telemetryflag
- Remove
-
Update changelog:
- Add entry to
docs/changelogs/unreleased.rstnoting the removal
- Add entry to
-
Verify no dependencies:
- Search for any remaining imports or references to
harp_apps.telemetry - Ensure no other components depend on telemetry functionality
- Search for any remaining imports or references to
Current Challenges
None identified. The telemetry app is self-contained with no dependencies from other components, making it safe to remove without breaking changes.