panel time ranges, dashboard override and geo map viewport - #306
Merged
Conversation
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
This was referenced Aug 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements #305 and fixes #304 (refs only, issues stay open until release per convention).
Per-panel time ranges + dashboard override (#305)
PANEL_TIME_RANGES, 15m to 30d, 10 presets) in@logtide/shared, applied to every window-scoped panel:time_series,top_n_table,geo_map(interval),log_table,metric_chart,metric_stat,trace_latency,trace_volume,detection_events,activity_overview(timeRange). Strict superset of every previous enum: stored dashboards and YAML imports keep validating, no schema_version bump.interval/timeRangeare kept as-is (a rename would force a document migration for zero gain); the UI aligns instead: every config form now labels the control "Time range" with human-readable labels ("Last 48 hours").timeRange, applied viaapplyTimeRangeOverride). It is ephemeral view state like panel pause: never persisted, cleared on dashboard switch; live log tables and windowless panels are untouched. Manual per-panel refresh carries the active override.Pre-existing window bugs fixed along the way
time_seriesignored its configured interval (always last 24h viagetTimeseries) AND its service filter. The fetcher is now windowed with adaptive bucketing (1m/5m/15m/1h/1d), a Timescale cagg fast path with bucket-aligned raw-tail backfill for 1h/1d buckets,reservoir.aggregateelsewhere, zero-filled buckets, and date-aware axis labels on multi-day ranges.top_n_tableservice dimension ignored its interval (always last 7d via the daily cagg). The cagg fast path now serves only7d && !showLastSeen; everything else goes through windowedreservoir.topValues, which also brings the Last seen column to the service dimension.Geo map viewport (#304)
LayerGroup. Auto-fit runs only on first paint, when the panel's query-shaping config changes, or via the new "Fit data" control; background refreshes never move the viewport.Verification