Push delivery: make the worker's VAPID authorizer required
I maintainer di solito rispondono entro 1 giorno
Una pull request collegata è già stata integrata.
- #543 di @PelikanFix16 — integrata
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 82/100
- Tipo di issue
- Refactoring
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
- Ambito
- backend
Direzione di ricerca
Inizia da app/apps/worker/src/push/deliver.ts intorno alla riga 86, dove si trovano il campo opzionale vapid e il suo commento, poi controlla la riga 98, dove viene passato a webPushSender. Rendi il campo obbligatorio e aggiorna il commento. Successivamente, aggiorna i chiamanti dei test elencati nell'issue (app/tests/app/push.test.ts e altri tre) in modo che passino createVapidAuthorizer() da apps/worker/src/push/index.ts. È completato quando il controllo dei tipi, il lint e ./scripts/check_application.sh passano.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
DeliveryDependencies.vapid is optional in the worker's push delivery. Every production caller passes the worker's one authorizer, which reuses a VAPID JWT per push service; when the field is left out, each delivery silently signs its own JWT instead. Making it required lets the type checker catch a future caller that forgets it.
Where to look
app/apps/worker/src/push/deliver.ts(around line 86):vapid?: VapidAuthorizerand its comment; line 98 passes it towebPushSender.app/apps/worker/src/index.ts(line 26) andapp/apps/worker/src/push/index.ts(line 22): the production path, which already passes it.- Tests that call
deliverPush({ db, config })without it:app/tests/app/push.test.ts,notifications.test.ts,notification-summary-native.test.ts,notification-inbox.test.ts(git grep -n "deliverPush({" app/tests).
Acceptance criteria
-
vapidis required inDeliveryDependencies, and its comment no longer describes the "without one" case. - Every caller passes an authorizer; tests use
createVapidAuthorizer()(exported fromapps/worker/src/push/index.ts), ideally one per test file. - Type check, lint and the full Docker suite pass.
How to check
./scripts/check_application.sh (builds, type checks, lints and runs the API tests, including the push tests against the push-service mock).
New to Flux? Start with CONTRIBUTING. Comment here to say you are taking it.
Carried over from the #185 handoff, as suggested on #306.
- Lingua principale
- TypeScript
- Stelle
- 3
- Fork
- 0
- Merge medio
- 22h 20m
- PR unite (30g)
- 343
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ColdPhase/flux
-
Task, result and decision cards in the thread panel show only the first characters of their titleForse già presa @Zamojski5 l’ha presa 1 giorno fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
ColdPhase/flux#665 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Wiki UI modules fail in the default lane (live editing on): stale selectors and focus assertionsForse già presa @Zamojski5 l’ha presa 1 giorno fa. Aperta
ColdPhase/flux#683 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Encrypted workspaces: optional per-workspace encryption at rest with unlock password, always without AIForse già presa @PelikanFix16 l’ha presa 5 giorni fa. Apertaenhancement
ColdPhase/flux#655 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Workspace AI lock: block every agent/assistant and hide all AI interactionForse già presa @PelikanFix16 l’ha presa 10 giorni fa. Apertaagent:planning enhancement
ColdPhase/flux#614 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Spokój: calm, consistent polish of Prostota (founder direction 2026-10-15)Forse già presa Una pull request collegata a questa issue è aperta o già unita. Apertaenhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 8/100
ColdPhase/flux#500 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di ColdPhase/flux
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
gnosis/gnosis_vpn#661 ·
I maintainer di solito rispondono entro 1 giorno
-
content-freshness: staleOwnedContent doc comments still say 'complete receipt' (follow-up to #7912)Apertatriage:bug-verified
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
I maintainer di solito rispondono entro 1 giorno
-
fix: reject sourceStorage/packagedStorage bucket that differs from the stack default (fail loud)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Eyevinn/open-videocore#1300 ·
I maintainer di solito rispondono entro 1 giorno
-
nextjs-tracking
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
cloudflare/vinext#4390 ·
I maintainer di solito rispondono entro 1 giorno
-
kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
kubernetes-sigs/headlamp#8175 ·
I maintainer di solito rispondono entro 2 giorni