Skip to content

Refactor HTTP channels to share transport logic - #60

Merged
mic1on merged 7 commits into
mainfrom
refactor-http-channel-transport
Jul 11, 2026
Merged

Refactor HTTP channels to share transport logic#60
mic1on merged 7 commits into
mainfrom
refactor-http-channel-transport

Conversation

@mic1on

@mic1on mic1on commented Jul 11, 2026

Copy link
Copy Markdown
Member

Summary

Refactor HTTP-backed notification channels to share sync and async transport logic without changing the public API.

  • Add HttpChannel as the shared transport base for HTTP providers.
  • Migrate Bark, Chanify, Ding, Feishu, WeChat, Ntfy, PushDeer, and PushOver onto the shared base.
  • Preserve channel-specific payload builders, dynamic credential resolution, provider response validation, and success logs.
  • Add guard tests for unsupported HTTP method and payload kind configuration.
  • Keep Email, Console, and Publisher retry behavior unchanged.

Closes #59

Design

  • Spec: docs/superpowers/specs/2026-07-11-http-channel-transport-design.md
  • Plan: docs/superpowers/plans/2026-07-11-http-channel-transport.md

Verification

  • make lint
  • make test (129 passed)
  • make coverage (129 passed, total coverage 97%)
  • uv build
  • uv pip check

@mic1on
mic1on merged commit 5b738bb into main Jul 11, 2026
3 checks passed
@mic1on
mic1on deleted the refactor-http-channel-transport branch July 11, 2026 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor HTTP channels to share transport logic

1 participant