Skip to content

Commit 93d6897

Browse files
Add responsible-use documentation
Co-authored-by: quantumdynamics927-dotcom <247722560+quantumdynamics927-dotcom@users.noreply.github.com> Agent-Logs-Url: https://github.com/quantumdynamics927-dotcom/QPyth/sessions/3fa31fba-d58b-4db5-b313-d5fb708501d6
1 parent 2ed2478 commit 93d6897

2 files changed

Lines changed: 68 additions & 77 deletions

File tree

README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,22 @@ print([record.record_id for record in get_available_dna_sequences()])
247247
This feature imports curated OpenQASM assets and exposes them as circuit-exploration data. It does not claim biological simulation fidelity.
248248
OpenQASM 3 assets require the optional dependency `qiskit_qasm3_import`.
249249

250+
#### Responsible Use Notice
251+
252+
The DNA-related features in QPyth are provided for educational, computational, and circuit-exploration purposes only.
253+
254+
- They do not constitute biological modeling, clinical analysis, or validated genetic interpretation.
255+
- They do not provide medical, diagnostic, therapeutic, or laboratory guidance.
256+
- They are not intended for pathogen design, wet-lab experimentation, synthesis planning, or any harmful biological application.
257+
- They should not be relied upon as evidence of biological function, safety, or real-world DNA behavior.
258+
259+
Any DNA-inspired or sequence-related assets in this repository are presented as computational abstractions or curated examples unless explicitly documented otherwise.
260+
261+
#### Data Provenance
262+
263+
Where bundled DNA or sequence-like assets are included, the repository should identify whether they are synthetic/demo-only, derived from public reference material, or transformed for educational use.
264+
Unless explicitly stated otherwise, treat such assets as illustrative and non-authoritative.
265+
250266
**Available Hardware Profiles:**
251267

252268
| Backend | Qubits | Avg T1 (μs) | Avg T2 (μs) | Avg Readout Error |

SECURITY.md

Lines changed: 52 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -1,112 +1,87 @@
11
# 🔒 Security Policy
22

3-
## Supported Versions
4-
5-
| Version | Supported |
6-
|---------|--------------------|
7-
| 0.2.x | ✅ Active support |
8-
| 0.1.x | ❌ End of life |
9-
10-
Security updates are provided for the **latest stable release** on the `main` branch only.
11-
Users are encouraged to upgrade to the latest version to receive all security fixes.
12-
13-
---
3+
## Scope
144

15-
## 🛡️ Security Best Practices
5+
QPyth is an open-source quantum software toolkit. Some repository features use DNA-inspired or sequence-themed representations for computational exploration. These features are not biological simulation tools and are not intended for laboratory, medical, diagnostic, therapeutic, or bioengineering use.
166

17-
### What We Do
18-
19-
- **Dependency scanning**: Automated checks for vulnerable dependencies
20-
- **Code review**: All PRs reviewed for security issues
21-
- **Input validation**: Sanitization of user-provided values
22-
- **Secure defaults**: Safe configurations out of the box
7+
## Supported Versions
238

24-
### Security Testing
9+
Security updates are provided for the latest stable release and the `main` branch.
2510

26-
```bash
27-
# Check for known vulnerabilities
28-
pip-audit -r <(pip freeze)
11+
| Version | Supported |
12+
|---------|-----------|
13+
| Latest stable release ||
14+
| `main` branch ||
15+
| Older releases ||
2916

30-
# Type checking for type-related issues
31-
mypy quantumpytho/
32-
33-
# Static analysis
34-
ruff check .
35-
```
17+
Users should upgrade to the latest release to receive security fixes and dependency updates.
3618

3719
---
3820

39-
## 📬 Reporting a Vulnerability
21+
## Security Boundaries
4022

41-
### Responsible Disclosure
23+
QPyth should be treated as developer and research software, not as a safety-certified system. In particular:
4224

43-
We take security seriously and appreciate your help in keeping QPyth safe.
25+
- outputs are not guaranteed to be biologically valid, clinically meaningful, or safe for real-world use
26+
- DNA-related features must not be used for synthesis, pathogen engineering, wet-lab experimentation, or operational biological decision-making
27+
- optional integrations and external services may introduce network, API, credential, or third-party dependency risk
4428

45-
**If you find a security issue:**
29+
---
4630

47-
1. **Do not** create a public GitHub issue
48-
2. Use GitHub Security Advisories:
49-
- Go to the repository **Security** tab
50-
- Click **Report a vulnerability**
51-
3. Alternatively, open a private issue with "SECURITY" in the title
31+
## What We Review
5232

53-
### What to Include
33+
We aim to reduce risk through:
5434

55-
- Description of the vulnerability
56-
- Steps to reproduce
57-
- Potential impact
58-
- Suggested fix (if any)
35+
- dependency monitoring
36+
- static analysis and linting
37+
- code review
38+
- input validation for user-facing interfaces
39+
- secure handling of optional integrations where applicable
5940

60-
### Response Timeline
41+
Repository CI currently runs:
6142

62-
| Stage | Expected Time |
63-
|-------|---------------|
64-
| Acknowledgment | 48 hours |
65-
| Triage | 7 days |
66-
| Fix | Priority-based |
67-
| Public disclosure | Coordinated |
43+
```bash
44+
ruff check .
45+
ruff format --check .
46+
pytest -v --tb=short
47+
pytest --cov=quantumpytho --cov-report=xml
48+
```
6849

6950
---
7051

71-
## 🔐 Security Features
52+
## Reporting a Vulnerability
7253

73-
### Dependency Security
54+
Please do not open a public issue for suspected vulnerabilities.
7455

75-
```toml
76-
# pyproject.toml
77-
dependencies = [
78-
"qiskit>=1.1.0", # Version-pinned major releases
79-
"qiskit-aer>=0.15.0", # Latest stable with security fixes
80-
"numpy>=2.0.0", # Modern, maintained version
81-
]
82-
```
83-
84-
### Input Validation
56+
Instead:
8557

86-
All user inputs are validated:
58+
1. Use GitHub Security Advisories or private vulnerability reporting if it is enabled for the repository.
59+
2. If private reporting is unavailable, contact the maintainers privately and include `SECURITY` in the subject line.
8760

88-
```python
89-
def read_float(prompt: str, min_val: float, max_val: float) -> float:
90-
"""Validates user input against bounds."""
91-
# Raises ValueError if out of range
92-
```
61+
Please include:
9362

94-
### Secure Defaults
63+
- affected component
64+
- reproduction steps
65+
- impact assessment
66+
- suggested mitigation, if available
9567

96-
- QuantumSimulator (Aer) as default - no external connections
97-
- Local execution only - no remote API calls
98-
- Minimal permissions - no filesystem/network access
68+
We ask reporters to avoid public disclosure until the issue has been reviewed and a fix or mitigation is available.
9969

10070
---
10171

102-
## 📚 Security Resources
72+
## Domain-Specific Responsible Use
73+
74+
If you identify a risk involving:
75+
76+
- misuse of DNA-related functionality
77+
- unsafe interpretation of sequence-like assets
78+
- misleading biological claims
79+
- dual-use or biosecurity concerns
10380

104-
- [Qiskit Security](https://qiskit.org/security)
105-
- [PyPI Security](https://pypi.org/security/)
106-
- [OWASP Quantum Computing](https://owasp.org/www-project-quantum-computing/)
81+
please report it as a security concern even if it is not a traditional software exploit.
10782

10883
---
10984

110-
## 🙏 Thank You
85+
## Disclaimer
11186

112-
Your security reporting helps protect the entire quantum computing community.
87+
QPyth is provided for research, education, and software experimentation. It is not intended for clinical, medical, diagnostic, therapeutic, biosurveillance, synthesis, or wet-lab decision support.

0 commit comments

Comments
 (0)