REPORTS.md
Rama main · réplica de lectura del repositorio original.
# Private technical reports
Run `unarr report` (alias `unarr reports`). Answer `yes` to prepare a local
report, review the displayed JSON, then choose `save`, `send`, or `cancel`.
Sending requires a separate `yes`. EOF and all other responses cancel.
There is no unattended upload flag. Preparation performs no network checks.
The report contains the agent UUID, bounded system metrics, service state,
five boolean settings and recognized technical log events. It never copies
raw logs, arbitrary error messages, task titles, paths, config text, IPs,
hostnames, account IDs, names, emails, URLs or credentials. Unknown text is
omitted and counted. This intentionally sacrifices detail where privacy cannot
be established. The stable agent UUID is pseudonymous and can be correlated
with an installation; do not describe reports as untraceable.
The exact reviewed JSON is sent over HTTPS to the dedicated diagnostic-report
endpoint without agent authentication, cookies, environment proxies, redirects
or mirror fallback. Collection and report errors do not initialize telemetry.
Private local files use exclusive creation and permissions 0600 on Unix,
or a protected current-user ACL on Windows. A failed
upload saves the reviewed report locally and exits with failure.
Upload is available in every release build and the backend endpoint is always
active. A network connection exposes the source IP to the services carrying it,
and normal infrastructure may log it, but the IP is not part of the report
payload or support email. The server capability check occurs only after upload
consent. No legacy support or email fallback is used when private delivery is
unavailable.
Regression checks:
```sh
go test -race ./internal/diagnostics ./internal/cmd
```
Test consent cancellation, malformed/oversized logs, secret-bearing log lines,
symlinks, missing sources, byte-identical preview/upload, endpoint disabled,
redirect refusal, no identity headers and private file creation. Network tests
use loopback HTTP servers and never deliver a real report.