Skip to content

docs: add CONTRIBUTING.md guide#28

Closed
arunsanna wants to merge 2 commits intoGenAI-Security-Project:mainfrom
arunsanna:docs/contributing-guide
Closed

docs: add CONTRIBUTING.md guide#28
arunsanna wants to merge 2 commits intoGenAI-Security-Project:mainfrom
arunsanna:docs/contributing-guide

Conversation

@arunsanna
Copy link

Summary

  • Adds comprehensive CONTRIBUTING.md guide for new contributors
  • Covers development setup, workflow conventions, and code standards

Content Overview

  • Quick Start: Fork, clone, and environment setup (Docker + local)
  • Development Workflow: Branch naming, PR process, commit conventions
  • Code Standards: Python style, import organization, output conventions
  • Project Architecture: Key files and concepts overview
  • Build & Run: Docker and local development instructions
  • Contribution Areas: Tests, SPDX support, documentation, etc.
  • Community Links: OWASP GenAI project, Slack channel

Test Plan

  • Markdown renders correctly on GitHub
  • All external links are valid
  • Code examples match actual project structure

Comprehensive contribution guide covering:
- Quick start setup (Docker and local)
- Branch naming conventions
- PR process and commit message format
- Code standards (imports, output conventions)
- Project architecture overview
- Build and run instructions
- Areas welcoming contributions
- Issue reporting guidelines
- Community links
Copilot AI review requested due to automatic review settings January 26, 2026 20:42
- Add Contributing section with link to guide
- Fix issue tracker URL (was pointing to old repo)
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a CONTRIBUTING guide to help new contributors understand how to set up the project, follow the development workflow, and align with code standards and architecture.

Changes:

  • Introduces a comprehensive CONTRIBUTING.md with quick start instructions, branching and commit conventions, and contribution areas.
  • Documents code style guidance, output/logging conventions, and an overview of the project’s architecture.
  • Adds build/run instructions for both Docker-based and local development workflows.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +141 to +151
### Local Development

```bash
cd HF_files/aibom-generator
pip install -r requirements.txt

# Run API server
python -m uvicorn src.aibom_generator.api:app --reload --port 7860

# Or use CLI
python -m src.aibom_generator.cli --model_id "microsoft/DialoGPT-medium"
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The local development commands here reference the src.aibom_generator module, but in the repository the package directory is currently named src/aibom-generator, so following these steps outside Docker will raise a ModuleNotFoundError unless the directory is renamed or the instructions are updated to match the actual package/module path (or to include the same rename logic used in the Dockerfile).

Copilot uses AI. Check for mistakes.
Comment on lines +113 to +122
```
HF_files/aibom-generator/
├── src/aibom-generator/
│ ├── generator.py # Core AIBOM generation
│ ├── enhanced_extractor.py # Metadata extraction
│ ├── field_registry.json # Registry-driven field definitions
│ ├── api.py # FastAPI endpoints
│ ├── cli.py # Command-line interface
│ ├── utils.py # Completeness scoring
│ └── validation.py # CycloneDX schema validation
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This architecture diagram lists a validation.py module for CycloneDX schema validation, but there is no validation.py file under src/aibom-generator/ in the current tree; the validation logic appears to live in other modules (for example utilities), so this reference should be updated to point to the actual implementing module(s) to avoid confusing new contributors.

Copilot uses AI. Check for mistakes.
@arunsanna
Copy link
Author

✅ Testing Completed

Deployed and tested on personal HF Space: https://megamind1-aibom-generator-test.hf.space

Test Results

PR #28 Verification:

  • Markdown renders correctly on GitHub
  • All external links validated (5/5 working)
  • Code examples match actual project structure
  • CONTRIBUTING.md added to test Space docs folder

Link Validation Results:

URL Status
https://genai.owasp.org ✅ 200
https://genai.owasp.org/ai-sbom-initiative ✅ 301 (redirects correctly)
https://github.com/GenAI-Security-Project/aibom-generator/issues ✅ 200
https://owasp.slack.com ✅ 200

Functional Test:
Generated AIBOM for openai/whisper-tiny successfully:

  • CycloneDX 1.6 format ✓
  • PURL: pkg:huggingface/openai/whisper-tiny@1.0
  • Metadata extraction (license, architecture, safety assessment) ✓

Ready for review and merge.

arunsanna added a commit to arunsanna/aibom-generator that referenced this pull request Feb 3, 2026
Reapply of PR GenAI-Security-Project#28 with updates for v0.2 project structure.

- Development setup (Docker + local)
- Branch naming and PR workflow conventions
- Code standards (Python style, logging, imports)
- Updated project architecture diagram for v0.2
- Testing instructions
- Areas welcoming contributions
- Community links including weekly call info
@arunsanna
Copy link
Author

Status Update: Reapplied to v0.2

The CONTRIBUTING.md guide has been reapplied to the v0.2 branch in PR #36.

Updates for v0.2:

  • Updated project architecture diagram reflecting new structure (src/controllers/, src/models/, src/utils/)
  • Updated testing instructions (pytest)
  • Updated import organization examples
  • Added weekly call info (Mondays 4:00 PM ET)

This PR can be closed in favor of PR #36 which targets v0.2.

@eaglei15 eaglei15 closed this Feb 3, 2026
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.

2 participants