Skip to content

Latest commit

 

History

History
50 lines (37 loc) · 1.54 KB

File metadata and controls

50 lines (37 loc) · 1.54 KB

notificationsfirebase

Tier: Adapter · Status: Stub (port-asserting) · Backing tech: Firebase Cloud Messaging (push)

Overview

notificationsfirebase is the placeholder notifications.Channel adapter for Firebase Cloud Messaging (push). The package and types are declared, the port assertion compiles, and sentinel-error smoke tests guard the wire shape — but the SaaS / cloud SDK integration is not yet wired. Every method returns ErrNotImplemented.

var ErrNotImplemented = errors.New("firefly/notificationsfirebase: not yet implemented")

Why ship a stub?

  • The framework's tier diagram stays correct (no missing module).
  • The port boundary stays locked — when the real implementation lands in v26.06, no consuming code needs to change.
  • The wire contract is exercised end-to-end before the integration ships, via the smoke tests that assert the sentinel return.

Configuration

type Config struct {
    // Fields cover every wiring variable the production adapter needs.
    // See `adapter.go` for the full set.
}

Roadmap

The real implementation is scheduled for v26.06.x — see docs/AUDIT.md § Roadmap for sequencing.

Testing

cd notificationsfirebase
go test ./...

Smoke tests assert (a) compile-time port satisfaction (var _ notifications.Channel = New(Config{})) and (b) every method returns ErrNotImplemented. Once the production adapter ships, these tests are deleted in favour of integration tests against a real provider container / mock server.