We recognize AI governance can be overwhelming – we’re here to help. Contact us today to discuss how we can help you solve your challenges and Get AI Governance Done.
AI Mitigation · Technical
Code Version Control
Using a version control system (e.g. Github) to keep track of all code used during development and deployment.
📋 Description
Code version control involves systematically managing and tracking changes to source code using tools like Git, GitHub, or GitLab. It provides a transparent and auditable history of code modifications throughout the AI development lifecycle—from data preprocessing and model training to inference and deployment.
Maintaining a version-controlled repository allows organizations to identify who made specific changes, roll back to previous versions if needed, and collaborate across teams while preserving consistency and reproducibility. All scripts tied to the data pipeline, training configurations, model architecture, and inference logic should be included in the version control system.
📉 How It Reduces Risks
- Improves traceability and accountability and maintains a clear history of code changes, helping identify the origin of bugs or security flaws.
- Supports reproducibility: Ensures experiments and models can be reliably replicated with specific versions of code and dependencies.
- Enables secure collaboration: Controls user permissions and tracks contributions, minimizing the risk of unauthorized or unreviewed changes.
- Facilitates incident response: Helps teams revert quickly to known safe states in the event of a failure, breach, or model malfunction.
- Promotes regulatory compliance: Enables structured auditing and documentation aligned with AI governance frameworks.
📎 Suggested Evidence
- Version control audit logs
- Show detailed commit history from systems like GitHub, GitLab, or Bitbucket that include timestamps, authorship, and commit messages.
- Branching and pull request records
- Demonstrate that code changes are peer-reviewed and merged through structured workflows (e.g., pull requests and approvals).
- Tagged and released documentation
- Provide tagged versions/releases associated with model or training milestones linked to specific datasets or environments.
- Access control documentation
- Show role-based access controls or permission settings for who can read, write, and approve changes in the codebase.