67b3fd23d1
gates / gates (push) Failing after 13m1s
Part A: claim table documentation/audits/website-refresh-2026-10-08/claims.md; "100% open source" corrected from the licence read; unbacked claims cut (firewall, RAID, snapshots, new-machine restore, self-managed mode, household VPN, "never lost"). Part B: dawarich, docmost, grimmory, homebox, karakeep, mealie, metube, radicale, recipe-importer, sparkyfitness cards; plant-it and wger cut (not offered). Part C: /en/ twins, nav language switch, hreflang both ways, sitemap with xhtml:link, og-image-en.png. Part D: site_gates.py twins/lang/same-apps/no-Hungarian/FAQ-JSON-LD/tail. Operator ruling 9 + choice B in 10-localisation.md §11, §10.7. Register: R-902 (contact mailer source in no repo); R-813, R-784, R-559 annotated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
2.6 KiB
2.6 KiB
The contact mailer — where its source is, and what it sends (2026-10-08)
Read-only. Method: the manifest, a search for the source, and strings of the binary copied out of the running pod (kubectl exec … cat /app/contact-mailer, no change to the pod).
Manifest
5:# 1. Build and push the container image:
53: image: contact-mailer:latest
55: imagePullPolicy: Never
66: - name: FROM_EMAIL
67: value: "Felhom.eu <noreply@felhom.eu>"
68: - name: TO_EMAIL
69: value: "info@felhom.eu"
70: - name: ALLOWED_ORIGIN
71: value: "https://felhom.eu"
73: value: "Europe/Budapest"
76: value: "false"
Source search (all empty except the manifest)
$ git -C felhom.eu log --all --name-only --format= | grep -i -E "mailer|contact" | sort -u
manifests/contact-mailer.yaml
$ find /mnt/5_hdd/felhom.eu ~ -maxdepth 5 -iname '*contact-mailer*'
/mnt/5_hdd/felhom.eu/git/felhom.eu/manifests/contact-mailer.yaml
The running pod
total 5768
drwxr-xr-x 1 appuser appuser 4096 Feb 5 2026 .
drwxr-xr-x 1 root root 4096 Jun 29 07:51 ..
-rwxr-xr-x 1 root root 5894296 Feb 5 2026 contact-mailer
Functions in the binary (strings | grep ^main.)
main.(*rateLimiter).allow
main.(*rateLimiter).allow.deferwrap1
main.(*rateLimiter).cleanupLoop
main.buildEmailHTML
main.corsMiddleware
main.getClientIP
main.getEnv
main.handleContact
main.handleContact.Printf.func1
main.handleContact.Printf.func2
main.handleContact.Printf.func3
main.handleContact.Printf.func4
main.handleContact.Printf.func5
main.handleContact.Printf.func6
main.handleContact.Printf.func7
main.handleContact.deferwrap1
main.handleDebugTest
main.handleDebugTest.Printf.func1
main.handleDebugTest.Printf.func2
main.handleHealth
main.init
main.isValidEmail
main.jsonError
main.jsonResponse
main.jsonSuccess
main.loadConfig
main.main
main.main.Printf.func2
main.main.Printf.func3
main.main.corsMiddleware.func1
main.mustEnv
main.newRateLimiter
main.newRateLimiter.gowrap1
main.processAttachment
main.processAttachment.deferwrap1
main.sendViaResend
main.sendViaResend.deferwrap1
Visible strings that decide the answer
Csatolm
json:"reply_to,omitempty"
Reading: one sendViaResend per form, to TO_EMAIL (info@felhom.eu), with reply_to set to the visitor; no second send (no confirmation to the visitor). The operator's notification HTML is Hungarian. The page shows its own status messages, not the server's (kapcsolat.html / en/contact.html showStatus), so the English page needs no mailer change. Gap: R-902.