Skip to content

Conversation

@ecapuano
Copy link
Collaborator

v1.7.0

Enhanced reliability and usability with sensor selector expression builder and automatic retry logic

✨ Added
• Sensor Selector Expression Builder with interactive modal for crafting complex selector expressions
• Automatic retry logic for failed backtests/replays
• Up to 2 retries (3 total attempts) for transient errors like network timeouts and I/O errors
• Real-time status updates showing “Retrying (N failed)”
• Retry count tracking
• Displays retry attempts in backtest results UI
• Includes retry statistics in markdown export
• Fuzzy matching for validation errors
• Intelligent “Did you mean…?” suggestions for typos in operators and actions
• Copy buttons for Detect Logic and Respond Logic editors with clipboard support and browser fallback (contributed by @bromiley)

🔄 Changed
• Performance tip styling
• Upgraded to a prominent callout box with gradient background and success-colored accents for better visibility
• Performance tip messaging
• Enhanced to emphasize cost reduction benefits (10–100× faster, reduced costs, timeout prevention)
• References new “Build Expression” button
• Retry behavior
• Smart retry logic that only retries actual errors
• Respects intentional user actions (cancellations and timeouts)
• Organization selection list in backtesting now displays in alphabetical order
• D&R autocompletion enhanced with improved context detection and development-mode debug logging
• Cost estimate invalidation now clears when any backtest parameter changes (dates, orgs, selector, limits, stream, sensor ID)

🐛 Fixed
• Critical bug: Backtests now correctly detect and report failures when the LimaCharlie replay API returns HTTP 200 OK with a nested error object (previously misreported as “Success” with “0 matches”)
• Transient error resilience: Network errors, API timeouts, and I/O errors now trigger automatic retry instead of immediate failure
• D&R autocompletion now correctly suggests operators, event types, and field names in array items and nested rules
• Unit test and backtest buttons are now properly disabled when credentials aren’t configured, preventing immediate failures and guiding users to the configuration page
• Dark mode readability issues in Billing Notice and Cost Estimate modals resolved—now use theme-aware CSS variables
• 30-day billing period calculation now uses reactive time tracking so warnings appear correctly even if the page remains open for extended periods

ecapuano and others added 7 commits October 15, 2025 19:34
- Add comprehensive autocomplete for D&R operators, actions, and event paths
- Implement context-aware suggestions based on cursor position
- Create drCompletionEngine with YAML context analysis
- Add drConstants with operator metadata and event schema
- Add drValidation for rule validation
- Integrate CodeMirror autocomplete extension
- Improve backtest UI with sensor filtering section and performance tips
- Add tooltips for disabled backtest buttons
- Display custom status messages in org backtest results
- Track and display failed org count in completion stats
- Add SVG copy icons next to editor labels
- Implement copyDetectLogicToClipboard() and copyRespondLogicToClipboard() functions
- Icons disabled when no content, active with hover effects when content exists
- Uses proper SVG copy icon (overlapping rectangles) instead of emoji
- Includes fallback clipboard support for older browsers
- Success/warning notifications via existing notification system

Resolves #6
Replaces Node.js-based extraction of changelog version, date, and content in validate-release.sh with grep and awk for improved cross-platform compatibility and reliability. Adds error handling for extraction failures and clarifies error messages.
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