Harden the expanded server with auth, observability, and integration tests #62

Open
opened 2026-07-26 02:35:16 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-07-26 02:35:16 +00:00 (Migrated from github.com)

Goal

Make the expanded server operable and safe under real ingestion and investigation workloads.

Scope

  • request IDs propagated HTTP → RabbitMQ → actors → CouchDB events
  • structured logs and metrics for routes, consumers, actors, queues, view queries, validation, and dead letters
  • readiness/liveness endpoints that distinguish CouchDB, RabbitMQ, actor-system, and HTTP health
  • rate limits, payload limits, timeouts, and cancellation
  • permission model for document read/write, target submit/control, stream subscribe, and view query
  • secret loading/rotation; redact credentials and sensitive headers from logs
  • integration environment with RabbitMQ + CouchDB and deterministic fixtures
  • contract, load, reconnect, failure-injection, and upgrade tests
  • operator documentation for backup, migration, queue recovery, and stuck delivery diagnosis

Acceptance criteria

  • one request/target can be traced across all services
  • health endpoints accurately report degraded dependencies
  • CI proves API, broker, database, and actor behavior together
  • overload produces bounded failures instead of unbounded memory/queue growth

Build alongside #58, #59, #60, and #61 rather than as a final cleanup pass.

## Goal Make the expanded server operable and safe under real ingestion and investigation workloads. ## Scope - request IDs propagated HTTP → RabbitMQ → actors → CouchDB events - structured logs and metrics for routes, consumers, actors, queues, view queries, validation, and dead letters - readiness/liveness endpoints that distinguish CouchDB, RabbitMQ, actor-system, and HTTP health - rate limits, payload limits, timeouts, and cancellation - permission model for document read/write, target submit/control, stream subscribe, and view query - secret loading/rotation; redact credentials and sensitive headers from logs - integration environment with RabbitMQ + CouchDB and deterministic fixtures - contract, load, reconnect, failure-injection, and upgrade tests - operator documentation for backup, migration, queue recovery, and stuck delivery diagnosis ## Acceptance criteria - one request/target can be traced across all services - health endpoints accurately report degraded dependencies - CI proves API, broker, database, and actor behavior together - overload produces bounded failures instead of unbounded memory/queue growth Build alongside #58, #59, #60, and #61 rather than as a final cleanup pass.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
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
nsaspy/starintel-server#62
No description provided.