Version: 1.1.1
Last Updated: March 30, 2026
Audience: Backend, app, extension engineers; governance reviewers
Scope
- What BranchPy collects (events, metrics, usage counts) and what it explicitly does not collect (no content, no auto-send without consent).
- Where telemetry is emitted (CLI, daemon, extension) and how it flows to storage.
- Control modes (Off, Manual, Auto) and export/upload behaviors.
- High-level privacy posture and links to governance/policy references.
Components
- Emitters: BranchPyApp CLI/daemon, VS Code extension, cache decorators.
- Local Storage (canonical for pre-release): JSONL event files written by
LocalTelemetryWriter:- Windows:
%LOCALAPPDATA%\BranchPy\logs\telemetry\telemetry_<ts>.jsonl - Linux/Mac:
~/.branchpy/logs/telemetry/telemetry_<ts>.jsonl - Command metadata (core):
%LOCALAPPDATA%\BranchPy\cache\telemetry.jsonl(Windows) /~/.BranchPy/cache/telemetry.jsonl
- Windows:
- Package Builder: Aggregates/sanitizes events (
TelemetryPackage, v1.0.0 schema). - Upload/Export: Manual and auto upload via CLI; RC export-first flow supported.
- Ingestion API: rc-backend
/api/telemetry/*endpoints (dashboard/API key auth). - Storage Sinks (post-launch): SQLite (local) and MySQL (production) sinks are defined but not yet active for the in-process handler. JSONL is the authoritative durable store for the current pre-release. See architecture.md for the gap marker and closure condition.
See Also
- architecture.md
- ingestion.md
- privacy.md
- configuration.md
- troubleshooting.md
- quick-reference.md
- api.md
- API index: Technical/api/api.md
- Event schemas: Technical/events/catalog.md
- Logging: Technical/logging/README.md
See Also
- architecture.md
- ingestion.md
- privacy.md
- configuration.md
- troubleshooting.md
- quick-reference.md
- api.md
- API index: Technical/api/api.md
- Event schemas: Technical/events/catalog.md
- Logging: Technical/logging/README.md