lowRISC / lowRISC/opentitan

[dv,dvsim,tooling,test-triage] dvsim's Intelligent Alerts: Debug Faster, Triage Smarter.

Open
#27,587 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

## Supercharge Your dvsim Workflow with Intelligent Email Alerts!

First off, a huge shout-out to the **dvsim team** for building such a powerful open-source tool! We're big fans. 🙏

We'd love to propose an enhancement that will **revolutionize how teams receive and act on test results**: more detailed, contextual, and flexible email notifications. Imagine slashing debugging time and boosting team efficiency that's what we're aiming for!

---

### **The Vision: Smarter Alerts, Faster Debugging**

Our proposal introduces powerful new capabilities to `dvsim` email alerts:

* **Granular Email Control with New CLI Flags:**
* `--mail`: Get a **quick, high-level summary** of every run (pass/fail, duration, direct link to results). Perfect for staying updated without getting bogged down.
* `--mail-on-failure`: For when things go wrong, receive a **comprehensive failure report**. This includes critical details like signature path, CLI arguments, and direct links to logs—everything you need to jump straight into debugging.

* **Intelligent Recipient Targeting via HJSON Metadata:**
* We propose extending the test HJSON schema to include:
* `test_owner`: The email ID of the test's primary owner.
* `block_manager`: The email ID of the testplan or block manager.
* This allows dvsim to **automatically route alerts to the right people**, ensuring accountability and reducing manual overhead.

---

### **Why This Matters: Unlocking Team Potential**

This isn't just about more emails; it's about enabling a more agile and collaborative development cycle:

* **⚡ Rapid Debugging:** Get actionable feedback instantly, empowering your team to pinpoint and resolve issues faster than ever before.
* **🤝 Shared Responsibility:** Distribute ownership of test failures among contributors and maintainers, fostering a culture of shared accountability.
* **🚀 CI/CD Synergy:** Elevate dvsim's appeal for continuous integration pipelines and enhance team collaboration, making it an indispensable part of your workflow.
* **📉 Eliminate Triage Toil:** Drastically reduce the time spent manually triaging failures, freeing up valuable engineering time for innovation.

---

### **How It Works: Seamless Integration**

1. A user kicks off a dvsim run with either `--mail` or `--mail-on-failure` (or both!).
2. Post-execution, dvsim intelligently reads the testplan HJSON to build the perfect recipient list.
3. If `--mail` is active, a concise summary goes out for **all runs**, keeping everyone in the loop.
4. When failures occur and `--mail-on-failure` is specified, a detailed report is dispatched with all the crucial context (signature path, arguments, logs, etc.).
5. These flags can be used independently or together for maximum flexibility.

---

### **The Payoff: Tangible Benefits**

* ✅ **Crystal-Clear Visibility:** Gain immediate insight into test outcomes across your projects.
* ✅ **Accelerated Debugging:** Empower your team with the context needed for lightning-fast issue resolution.
* ✅ **Enhanced Accountability:** Ensure the right people are notified, driving quicker resolutions.
* ✅ **Future-Proofing dvsim:** Align dvsim with modern CI/email communication best practices.

---

### **Let's Make It Happen!**

We believe these capabilities are a **high-priority enhancement** that will significantly benefit all dvsim users.

Thanks again for your incredible work! We're looking forward to your thoughts and excited about the possibility of making `dvsim` even more indispensable. 👍

---

### **Implementation Roadmap (Optional, but we're ready!):**

* \[ ] Draft CLI parsing for new flags
* \[ ] Update HJSON schema & documentation
* \[ ] Implement email logic & templates
* \[ ] Add robust tests
* \[ ] Provide clear examples in the README

---

Contributor guide

Open the contributing guide

Research direction

Start by locating dvsim's CLI parsing for --mail and --mail-on-failure, the testplan HJSON schema, and the existing email logic. Define the flag behavior, recipient metadata, message contents, and interactions, then add robust tests and README examples as described in the roadmap.

Written by the indexing model from the issue text.

Assessment

Domain
cli, testing, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.