internal/

directory
v1.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 10, 2026 License: Apache-2.0

Directories

Path Synopsis
Package api implements beacon's REST configuration API: a huma-on-chi HTTP interface for CRUD over sources, sinks, and connectors.
Package api implements beacon's REST configuration API: a huma-on-chi HTTP interface for CRUD over sources, sinks, and connectors.
Package app is beacon's composition root: it owns the store, bus manager, data server, supervisor, and admin HTTP server.
Package app is beacon's composition root: it owns the store, bus manager, data server, supervisor, and admin HTTP server.
bus
Package bus owns one n2k.Client per physical CAN endpoint.
Package bus owns one n2k.Client per physical CAN endpoint.
busfake
Package busfake provides an in-memory fake implementing n2k.Bus for tests: frames written by the client are recorded, and test-injected frames are delivered to the client's registered handler.
Package busfake provides an in-memory fake implementing n2k.Bus for tests: frames written by the client are recorded, and test-injected frames are delivered to the client's registered handler.
Package config is the single validation+persist+reconcile choke point for beacon's configuration entities (sources, sinks, connectors).
Package config is the single validation+persist+reconcile choke point for beacon's configuration entities (sources, sinks, connectors).
Package connector runs the per-connector pipeline: source subscription → CEL filter → durable queue → sink delivery with checkpointing.
Package connector runs the per-connector pipeline: source subscription → CEL filter → durable queue → sink delivery with checkpointing.
Package filter compiles and evaluates CEL expressions against message envelopes.
Package filter compiles and evaluates CEL expressions against message envelopes.
Package identity owns Beacon's stable ISO 11783/NMEA 2000 appliance identity and the product/configuration information derived from it.
Package identity owns Beacon's stable ISO 11783/NMEA 2000 appliance identity and the product/configuration information derived from it.
Package inventory persists commissioning observations and operator-approved device baselines keyed by bus endpoint and stable ISO Device NAME.
Package inventory persists commissioning observations and operator-approved device baselines keyed by bus endpoint and stable ISO Device NAME.
Package mcpserver exposes Beacon's local configuration and operational state through the Model Context Protocol.
Package mcpserver exposes Beacon's local configuration and operational state through the Model Context Protocol.
Package metrics owns the OTel instrument set.
Package metrics owns the OTel instrument set.
Package model defines beacon's configuration entities: sources, sinks, and connectors.
Package model defines beacon's configuration entities: sources, sinks, and connectors.
Package msg defines the canonical message envelope that flows through queues, software-facing wire formats, and CEL filters.
Package msg defines the canonical message envelope that flows through queues, software-facing wire formats, and CEL filters.
Package n2kcatalog owns Beacon's runtime view of the NMEA 2000 PGN and field catalog, including unit-scaled values for decoded messages.
Package n2kcatalog owns Beacon's runtime view of the NMEA 2000 PGN and field catalog, including unit-scaled values for decoded messages.
Package n2kwire reconstructs NMEA 2000 CAN frames from canonical message envelopes without changing their source address or payload.
Package n2kwire reconstructs NMEA 2000 CAN frames from canonical message envelopes without changing their source address or payload.
Package netlimit bounds the number of connections accepted across one or more listeners.
Package netlimit bounds the number of connections accepted across one or more listeners.
Package queue provides the durable per-connector buffer.
Package queue provides the durable per-connector buffer.
Package retry provides the bounded reconnect policy shared by long-lived vessel links.
Package retry provides the bounded reconnect policy shared by long-lived vessel links.
Package sink runs configured sinks.
Package sink runs configured sinks.
Package source runs configured sources and fans their envelopes out to subscribing connectors.
Package source runs configured sources and fans their envelopes out to subscribing connectors.
Package stats tracks live per-connector counters and rolling boundary-acceptance rates for the config API and the future UI dashboard.
Package stats tracks live per-connector counters and rolling boundary-acceptance rates for the config API and the future UI dashboard.
Package store owns the SQLite database: schema migrations, config entity CRUD, and the connection shared with the queue implementation.
Package store owns the SQLite database: schema migrations, config entity CRUD, and the connection shared with the queue implementation.
Package supervisor reconciles desired configuration (the store) against running source/sink/connector components.
Package supervisor reconciles desired configuration (the store) against running source/sink/connector components.
Package sysinfo provides best-effort discovery of CAN and USB-serial hardware present on the host, so beacon's UI "add source/sink" forms and its GET /api/v1/system endpoint can offer detected interfaces/ports instead of a blank text field.
Package sysinfo provides best-effort discovery of CAN and USB-serial hardware present on the host, so beacon's UI "add source/sink" forms and its GET /api/v1/system endpoint can offer detected interfaces/ports instead of a blank text field.
dashboard.go implements beacon's live home view: the source -> connector -> sink DAG templates/frag_dashboard.html renders into the initial page, while GET /frag/dashboard refreshes that same content every five seconds.
dashboard.go implements beacon's live home view: the source -> connector -> sink DAG templates/frag_dashboard.html renders into the initial page, while GET /frag/dashboard refreshes that same content every five seconds.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL