chore(deps): add @parse/node-apn for APNs send-side scaffolding

Adds the APNs Provider library the v1.5 iOS app needs so per-metric
alerts can land via Apple's push service alongside the existing
Telegram → ntfy → Web Push cascade. Bundles the env-var contract
(APNS_KEY_ID / APNS_TEAM_ID / APNS_BUNDLE_ID plus one of APNS_KEY or
APNS_KEY_FILE) in .env.example so a fresh deploy knows the four
required values up front. The dispatcher wiring + sender ship in
follow-up commits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Marc-André BombeckandClaude Opus 4.7 committed 2026-05-11 00:34:16 +02:00
1 parent 49c1a41c08
commit bb76ea4f98
3 files changed
+123

No files matched your search

+21
View File
@@ -151,6 +151,27 @@ API_TOKEN_HMAC_KEY="REPLACE-WITH-OUTPUT-OF-openssl-rand-hex-32"
# BACKUP_ENCRYPTION_KEY="" # 64-hex-char or base64 32-byte; SEPARATE from ENCRYPTION_KEY
# -----------------------------------------------------------------------------
# APNs — Apple Push Notification service (v1.4.23+, optional)
# -----------------------------------------------------------------------------
# All four core APNS_* vars must be set together for APNs to fan out to iOS
# devices. Leaving them unset disables the channel silently — the dispatcher
# falls back to Telegram → ntfy → Web Push as before.
#
# Provision an APNs auth key (.p8) at https://developer.apple.com/account/
# under Certificates, Identifiers & Profiles → Keys → APNs.
#
# APNS_KEY (preferred for 12-factor / Coolify env-block) and APNS_KEY_FILE
# (filesystem path) are mutually exclusive — pick one. APNS_KEY accepts the
# multi-line PEM body with literal newlines OR `\n` escapes.
# APNS_KEY_ID="" # 10-char Key ID from Apple Developer (e.g. ABCDE12345)
# APNS_TEAM_ID="" # 10-char Team ID from Apple Developer
# APNS_BUNDLE_ID="" # iOS app bundle id (e.g. dev.healthlog.ios)
# APNS_KEY="" # APNs auth key as PEM body (multi-line OK with \n escapes); preferred over APNS_KEY_FILE
# APNS_KEY_FILE="" # Alternate: filesystem path to .p8 file
# APNS_PRODUCTION="" # "true" to force the production gateway; default = mirror Device.apnsEnvironment
# -----------------------------------------------------------------------------
# Auto-deploy webhook (v1.4.15 — phase C2)
# -----------------------------------------------------------------------------