Skip to content

Release/1.2.0#24

Merged
sempervent merged 11 commits into
mainfrom
release/1.2.0
Apr 29, 2026
Merged

Release/1.2.0#24
sempervent merged 11 commits into
mainfrom
release/1.2.0

Conversation

@sempervent
Copy link
Copy Markdown
Contributor

Summary

  • NTP Probe Support
  • Docker Images
  • some bug fixes

MacFarland, Midgie and others added 6 commits November 6, 2025 14:56
Adding image definitions into opensampl

---------

Co-authored-by: MacFarland, Midgie <macfarlandmj@ornl.gov>
Creating random and collect mixins, factoring the logic out to those. 
Updating the create functionality to reflect current practices.

---------

Co-authored-by: MacFarland, Midgie <macfarlandmj@ornl.gov>
bump GHA versions to current stable
## Summary

This PR adds first-class NTP support to OpenSAMPL and hardens the
local/demo experience around initialization, loading, and visualization.

At a high level, it introduces:

- an NTP vendor/probe family
- local and remote NTP collection support
- Additional metrics and metadata handling
- reference-safe dashboard/query updates for NTP-backed timing views
- documentation for the NTP extension path

## What’s included

### NTP vendor / probe support
- Adds an NTP vendor family using the existing OpenSAMPL extension model
- Supports remote NTP querying and local NTP inspection paths
- Adds `ntp_metadata` handling and NTP-specific probe loading behavior
- Adds metrics common for NTP clocks such as jitter, delay, stratum, and
sync health

### Dashboard and query hardening
- Fixes Grafana variable/query issues around text UUID handling
- Removes brittle empty-filter and `varchar = uuid` failure modes
- Updates timing dashboards to use reference-safe wording for NTP-backed
demo paths
- Adds compact reference/source metadata tables to aid interpretation
- Keeps GNSS extensibility intact for future true GNSS-backed probe
families

### NTP jitter handling
- Fixes the empty jitter path for remote NTP collection
- When a direct measured jitter value is unavailable from a single
remote response, stores a documented estimate/bound instead
- Clarifies this distinction in dashboard wording and docs

### Docs
- Updates README/docs to reflect current init/bootstrap behavior
- Adds a detailed guide explaining how the NTP extension was added and
integrated into OpenSAMPL
- Adds an unreleased `1.2.0` changelog entry

## Why

Before this change:
- NTP support was not available as a first-class probe family
- Grafana dashboards were brittle around variable typing and empty
selections
- NTP-backed demo dashboards could imply GNSS truth where only
configured reference semantics existed

After this change:
- NTP-backed timing data can be collected, loaded, and visualized
cleanly
- dashboard behavior is safer and more honest
- the extension path is documented for future maintainers

## Notes

- The dashboard wording uses **Reference** rather than **GNSS** where
the current backing data is NTP-referenced rather than GNSS-grounded.
- GNSS-related backend concepts are preserved; this PR does not remove
future support for true GNSS-backed probe families.
- Demo/appliance orchestration (custom DB image, continuous ingest
service, mock NTP targets, etc.) remains outside this PR in the
`syncscope-at-home` repo.

## Validation

Verified locally with:
- `uv run pytest`
- `uv run ruff check .`
- NTP collect/load path
- Grafana dashboard rendering with populated probe metadata and
time-series rows

---------

Co-authored-by: MacFarland, Midgie <macfarlandmj@ornl.gov>
Co-authored-by: Joshua Grant <jngrant9@gmail.com>
Co-authored-by: sempervent <jngrant9+git@gmail.com>
Co-authored-by: Grant, Josh <grantjn@ornl.gov>
Comment thread .github/workflows/lint.yml
@sempervent sempervent requested a review from watsoncl1 April 29, 2026 19:21
@sempervent sempervent merged commit 2c886ef into main Apr 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants