SquidSonar.RuntimeSettings (squid_sonar v0.3.0)

Copy Markdown View Source

Builds the intentionally small, public runtime-settings projection.

Host configuration is treated as sensitive. This module exposes only stable labels, booleans, counts, and package versions; it never serializes the configured values themselves.

Summary

Functions

Encodes an already-safe runtime-settings projection as readable JSON.

Builds the safe runtime-settings projection from LiveView assigns.

Types

projection()

@type projection() :: %{
  squid_sonar_version: String.t(),
  squidie_version: String.t(),
  integration_status: String.t(),
  transport: String.t(),
  visibility: String.t(),
  control_access: String.t(),
  runtime_specs_configured: boolean(),
  runtime_specs_count: non_neg_integer(),
  saved_specs_configured: boolean(),
  saved_specs_count: non_neg_integer(),
  action_registry_configured: boolean()
}

Functions

json(projection)

@spec json(projection()) :: String.t()

Encodes an already-safe runtime-settings projection as readable JSON.

project(settings, opts \\ [])

@spec project(
  map(),
  keyword()
) :: projection()

Builds the safe runtime-settings projection from LiveView assigns.