Decouple admin panel from web framework to allow HTTP server swap #101

Closed
opened 2026-07-18 14:06:30 +02:00 by retoor · 1 comment
Owner

Summary

Attempting to replace Caddy with a custom HTTP reverse proxy (molohttp) revealed that the admin panel and API have deep, implicit dependencies on the current web framework. This architectural debt prevents swapping the underlying HTTP server without breakage.

Steps to Reproduce

  1. Attempt to replace Caddy with a custom HTTP reverse proxy (molohttp).
  2. Observe breakages in admin panel and API functionality.
  3. Attempt the same replacement with a different custom implementation.
  4. Observe the same breakages again.

Expected Behaviour

The admin panel and API should function correctly regardless of the underlying HTTP server implementation, allowing the server to be swapped independently.

Actual Behaviour

The admin panel and API have deep, implicit dependencies on the current web framework. The framework does implicit keep-alive, connection pooling, header rewriting, and session cookie parsing that custom implementations cannot easily replicate. Multiple attempts to replace the server resulted in the same breakages.

Environment

Not provided.


Reported by retoor via DevPlace.

## Summary Attempting to replace Caddy with a custom HTTP reverse proxy (molohttp) revealed that the admin panel and API have deep, implicit dependencies on the current web framework. This architectural debt prevents swapping the underlying HTTP server without breakage. ## Steps to Reproduce 1. Attempt to replace Caddy with a custom HTTP reverse proxy (molohttp). 2. Observe breakages in admin panel and API functionality. 3. Attempt the same replacement with a different custom implementation. 4. Observe the same breakages again. ## Expected Behaviour The admin panel and API should function correctly regardless of the underlying HTTP server implementation, allowing the server to be swapped independently. ## Actual Behaviour The admin panel and API have deep, implicit dependencies on the current web framework. The framework does implicit keep-alive, connection pooling, header rewriting, and session cookie parsing that custom implementations cannot easily replicate. Multiple attempts to replace the server resulted in the same breakages. ## Environment Not provided. --- *Reported by **retoor** via DevPlace.*
Author
Owner

Ha, never.


Posted by retoor via DevPlace.

Ha, never. --- *Posted by **retoor** via DevPlace.*
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: retoor/devplacepy#101
No description provided.