Skip to content

Spitball: drop gRPC, rewrite as plain net/http + huma JSON service #95

@SyniRon

Description

@SyniRon

Investigation. Spitball the cost and shape of rewriting the API as a
plain net/http (Go 1.22 mux) + huma JSON service,
deleting proto/, buf*, grpc-gateway, the gRPC server, and the
gRPC listener port.

Motivation is not performance — it's deleting infrastructure nobody
appears to use. The gRPC port has no confirmed external consumers; known
clients are all HTTP-only.

Real work is translating the proto messages to plain Go structs and
replacing the auto-generated OpenAPI page (huma serves /docs from
struct tags). Public URLs stay identical, so no client changes are
required.

Prerequisite: the analytics task above. Verify zero gRPC traffic on
the gRPC port for at least a week before acting on this.

Likely promotes to its own project / planning issue when picked up.

Metadata

Metadata

Assignees

Labels

7cavblockedBlocked on another issue, decision, or external work — not actionable yetchoreRoutine maintenance, cleanup, or tech-debt removal

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions