-
-
Notifications
You must be signed in to change notification settings - Fork 18
Engineering workflows #80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
👋 Hello @ambitious-octopus, thank you for submitting an Please review this checklist to make sure everything is in order:
For further guidance, check out our Contributing Guide. If you have any questions, feel free to leave a comment here. Thank you for contributing to Ultralytics! 🌟🛠️ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Action Items:
-
Role Structure & Assignment: @ambitious-octopus @kayselmecnun Implement engineering role separation with clear responsibilities Establish triage assignment process and ownership
-
Asset Management Review: @ambitious-octopus @kayselmecnun Conduct comprehensive asset management audit, Review current asset tracking and maintenance procedures
-
Documentation Review: @zkontri and @sokrisba to review and update current documentation. Ensure alignment with new role structure and processes.
**Security Testing**: | ||
|
||
- Dynamic Application Security Testing (DAST) | ||
- Penetration testing for web interfaces |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Policy Scope:
Is this policy intended exclusively for the YOLO team, or does it also apply to the HUB team?
Penetration Testing Requirements:
If this policy applies only to the YOLO team, should we include penetration testing requirements? Including this requirement means we must conduct penetration testing and provide supporting evidence to aditors.
Your [contributions](https://docs.ultralytics.com/help/contributing/) and feedback drive us to keep improving and refining the way we work at Ultralytics. Stay tuned as we roll out the complete handbook to help you engage, contribute, and align with our mission and values. | ||
**Policy**: Every pull request (PR) must receive approval from at least one qualified reviewer before merging. | ||
|
||
**Rationale**: This requirement mitigates the risk of undetected bugs, security vulnerabilities, and architectural issues by preventing single-person code approvals. No individual, regardless of experience level or position, should merge code without independent review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For ISO 27001 compliance, this policy requires expansion to include description of the vulnerability management processes.
ISO 27001 specifically mandates:
"Provide documentation outlining the process for identifying, tracking, and remediating vulnerabilities using external threat intelligence sources."
Required Documentation Must Include:
- Procedural documentation describing how vulnerability scan results are reviewed and incorporated into threat analysis
- Evidence of monitoring external threat intelligence sources (vendor alerts, RSS feeds, security bulletins)
- Clear examples of vulnerability prioritization and remediation processes, including ticketing workflows and remediation reports
Recommended Enhancements:
I suggest extending this policy to include:
- Discovery methods
- Service Level Agreements (SLAs) with severity-based timelines
- Remediation Process
Reference Materials:
As good examples, you can use:
|
||
This placeholder page is just the start. Soon, you’ll have access to: | ||
- **Code Quality**: We write clean, maintainable, and well-documented code that stands the test of time | ||
- **Security First**: We implement security best practices at every stage of development |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To align with industry best practices, I would add reference to established security frameworks to demonstrate our commitment to following recognized security practices and provides development teams with clear, industry-accepted guidance:
OWASP Secure Development Principles - for implementing security controls throughout the software development lifecycle
OWASP Top 10 Vulnerability Awareness - for maintaining current knowledge of the most critical web application security risks
|
||
## Secure Software Development Life Cycle (SDLC) | ||
|
||
The YOLO team follows a structured, security-focused SDLC framework that ensures consistent quality, security, and maintainability across all development phases. This framework is specifically tailored for computer vision and AI model development while maintaining enterprise-grade security standards. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a quick suggestion - if this policy is meant to apply to the entire development team (both YOLO & PLATFORM), it is better to change it to 'The Ultralytics development team follows a structured, security-focused SDLC...'
Thanks for the review comments @zkontri! |
Signed-off-by: Glenn Jocher <[email protected]>
🛠️ PR Summary
Made with ❤️ by Ultralytics Actions
🌟 Summary
The development workflow documentation for Ultralytics has been completely overhauled, introducing detailed engineering standards, security protocols, review processes, and a structured software development life cycle (SDLC) to guide all contributors. 🚀🔒
📊 Key Changes
🎯 Purpose & Impact
This update marks a major step forward in professionalizing and securing Ultralytics engineering practices, benefiting both internal teams and the wider open-source community.