Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Deliver Android push notifications through a durable retry queue

Open
#109 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
30/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
go
Domain
backend

Research direction

Read prerequisites #107 and #108 and the contract from #107, then inspect internal/notification/service.go and its repository. Completion means durable enqueue and recovery, bounded retry and eligibility behavior, duplicate-delivery handling, and crash and provider-outage tests using the specified fake provider.

Written by the indexing model from the issue text.

Description

android difficulty: expert enhancement help wanted needs testing notifications

Roadmap: #76

Goal

Implement recoverable server delivery for notification events without losing work across restarts.

Acceptance criteria

  • Persist delivery work consistently with the notification event and recover unfinished work after restart.
  • Implement bounded retries, expiry, provider error classification, and invalid-device cleanup.
  • Recheck account/device eligibility before delivery and honor revocation or opt-out.
  • Define duplicate-delivery behavior for ambiguous provider responses; use event IDs for downstream deduplication instead of promising exactly-once delivery.
  • Test crashes around enqueue/send/ack boundaries, provider outages, token rotation, and revoked devices with a fake provider.

Start: internal/notification/service.go, its repository, and the contract from #107. Existing mail/webhook worker issues are separate.

Prerequisites: #107, #108.

Dominant language
Go
Stars
1
Forks
7
Avg merge
1h 45m
Merged PRs (30d)
16

Getting set up

We have not checked this project's setup files yet. Start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from wavefnd/wave-platform

All issues in wavefnd/wave-platform

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.