bugreport service - update #441

Closed
opened 2026-06-05 12:36:45 +00:00 by guettli · 1 comment
guettli commented 2026-06-05 12:36:45 +00:00 (Migrated from codeberg.org)

bugreport sending part:

do not send hashed_ip.


bugreport service:

do not store hashed_ip. No IP is needed at all.

Store email in an mail.eml in the directory, not in report.json

## bugreport sending part: do not send hashed_ip. --- ## bugreport service: do not store hashed_ip. No IP is needed at all. Store email in an mail.eml in the directory, not in report.json
guettlibot commented 2026-06-05 12:45:03 +00:00 (Migrated from codeberg.org)

PR created at https://codeberg.org/guettli/sharedinbox/pulls/442.


Here's a summary of what was done for issue #441:

Changes made to server/bugreport/main.go:

  1. Removed hashed_ip entirely — dropped the HashedIP field from BugReport, deleted the hashIP function, and removed all IP extraction logic (including the X-Forwarded-For handling). No IP address is collected or stored in any form.

  2. Moved contact email out of report.json — removed the Email field from the BugReport struct. When a user opts to include their contact email for follow-up, it is now written to a separate mail.eml file in the report directory instead of being embedded in report.json. This keeps PII isolated from the structured report data.

  3. Removed now-unused importscrypto/sha256, encoding/hex, and strings were all only used for IP hashing and are now gone.

The Flutter client (bug_report_screen.dart) was already not sending any hashed_ip field, so no client-side changes were needed.

Verified: go build ./... and go vet ./... both pass cleanly.

Pull request: https://codeberg.org/guettli/sharedinbox/pulls/442

PR created at https://codeberg.org/guettli/sharedinbox/pulls/442. --- Here's a summary of what was done for issue #441: **Changes made to `server/bugreport/main.go`:** 1. **Removed `hashed_ip` entirely** — dropped the `HashedIP` field from `BugReport`, deleted the `hashIP` function, and removed all IP extraction logic (including the `X-Forwarded-For` handling). No IP address is collected or stored in any form. 2. **Moved contact email out of `report.json`** — removed the `Email` field from the `BugReport` struct. When a user opts to include their contact email for follow-up, it is now written to a separate `mail.eml` file in the report directory instead of being embedded in `report.json`. This keeps PII isolated from the structured report data. 3. **Removed now-unused imports** — `crypto/sha256`, `encoding/hex`, and `strings` were all only used for IP hashing and are now gone. The Flutter client (`bug_report_screen.dart`) was already not sending any `hashed_ip` field, so no client-side changes were needed. **Verified:** `go build ./...` and `go vet ./...` both pass cleanly. Pull request: https://codeberg.org/guettli/sharedinbox/pulls/442
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: guettli/sharedinbox#441