- did:
did:repo:69c8659959f1a6aa281bdc1b8653b381e741b3f6/blob/main/src/README.md- github:
Open Integrity Core Source- Updated: 2025-03-04 by Christopher Allen ChristopherA@LifeWithAlacrity.com
The Open Integrity Project integrates cryptographic trust mechanisms into Git repositories, enabling them to serve as cryptographic roots of trust to ensure verifiable chains of integrity, provenance, and authorship. By leveraging Git's native SSH-based signing capabilities and structured verification processes, Open Integrity ensures transparency and immutability for software projects without requiring modifications to Git itself. An Open Development initiative hosted by Blockchain Commons.
This directory contains the source code implementation of Open Integrity specifications using Zsh-based command-line scripting.
🔗 For full project details, visit the 📖 Open Integrity Project README
The Open Integrity Project implements two types of scripts:
Complex, multi-component scripts with extensive functionality:
- 🔍
audit_inception_commit-POC.sh– Performs multi-phase audits of Git repository inception commits- Script - The framework audit script
- Requirements - Detailed requirements
- Issues - Tracked issues and improvements
- Test Script - Comprehensive regression test
- Test Output - Reference test output
Small, focused scripts (generally under 200 lines) that perform specific functions:
-
🏗
create_inception_commit.sh– Creates a repository with a properly signed inception commit- Requirements - Detailed requirements
- Test Script - Regression test
- Test Output - Reference test output
-
🔍
get_repo_did.sh– Retrieves a repository's DID based on its inception commit- Requirements - Detailed requirements
-
✂️
snippet_template.sh– Template for creating new snippet scripts
The source code follows a structured organization:
src/
├── README.md # This file
├── audit_inception_commit-POC.sh # Framework script for inception commit audits
├── create_inception_commit.sh # Snippet script for repository creation
├── get_repo_did.sh # Snippet script for DID retrieval
├── snippet_template.sh # Template for new scripts
├── issues/ # Tracks known issues and improvements
│ ├── ISSUES-Open_Integrity_Scripting_Infrastructure.md
│ ├── ISSUES-Zsh_Core_Scripting_Best_Practices.md
│ └── ISSUES-audit_inception_commit-POC.md
├── requirements/ # Defines standards and requirements
│ ├── REQUIREMENTS-Progressive_Trust_Terminology.md
│ ├── REQUIREMENTS-Regression_Test_Scripts.md
│ ├── REQUIREMENTS-Zsh_Core_Scripting_Best_Practices.md
│ ├── REQUIREMENTS-Zsh_Framework_Scripting_Best_Practices.md
│ ├── REQUIREMENTS-Zsh_Framework_Scripting_Best_Practices-Aspirations.md
│ ├── REQUIREMENTS-Zsh_Snippet_Script_Best_Practices.md
│ ├── REQUIREMENTS-audit_inception_commit-POC.md
│ ├── REQUIREMENTS-create_inception_commit.md
│ ├── REQUIREMENTS-get_repo_did.md
│ └── REQUIREMENTS-z_Utils_Functions.md
└── tests/ # Testing framework
├── OUTPUT/ # Directory for test output
├── OUTPUT-TEST-audit_inception_commit.txt
├── OUTPUT-TEST-audit_inception_commit-POC.txt
├── OUTPUT-TEST-create_inception_commit.txt
├── TEST-audit_inception_commit.sh
└── TEST-create_inception_commit.sh-
Root (
src/) – Contains all source code including:- Framework scripts for complex functionality
- Snippet scripts for targeted tasks
- Script template for standardized development
-
issues/– Tracks known issues and improvements:- System-wide scripting infrastructure concerns
- Language-specific scripting best practices
- Script-specific issues and enhancements
-
requirements/– Defines standards and specifications:- Core Zsh scripting principles and best practices
- Framework and snippet script development guidelines
- Progressive Trust terminology and implementation standards
- Specific requirements for individual scripts
-
tests/– Contains comprehensive testing framework:- Test scripts to verify functionality
- OUTPUT directories for structured test results
- Reference output files for regression testing
For further details about the Open Integrity Project, visit:
- 📖 Root README – Overview, problem statement, and organization
- 📋 Project Roadmap – Development phases and milestones
- 💬 Community Discussions — Join the conversation
To use these scripts, clone the repository and ensure dependencies are installed:
# Clone the repository
gh repo clone OpenIntegrityProject/core
# or `git clone https://github.com/OpenIntegrityProject/core.git`
cd core
# Make scripts executable
chmod +x src/*.sh
# Example: Audit this repository's inception commit
./src/audit_inception_commit-POC.sh
# Example: Audit another repository's inception commit
./src/audit_inception_commit-POC.sh -C /path/to/repo
# Example: Create a repository with a signed inception commit
./src/create_inception_commit.sh -r my_new_repo
# Example: Retrieve a repository's DID
./src/get_repo_did.sh -C /path/to/repo🔍 For script details, refer to the requirements/ directory
All script development follows strict coding standards outlined in:
- 📜 Zsh Core Scripting Best Practices
- ✍️ Zsh Snippet Script Best Practices
- 🏗️ Zsh Framework Script Best Practices
- 🧪 Regression Test Scripts
Scripts include automated regression tests. Run them as follows:
# Run tests for create_inception_commit.sh
./src/tests/TEST-create_inception_commit.sh
# Run tests for audit_inception_commit-POC.sh
./src/tests/TEST-audit_inception_commit.sh
# Run tests and capture both standard and verbose output
./src/tests/TEST-audit_inception_commit.sh > src/tests/OUTPUT-TEST-audit_inception_commit.txt 2>&1
./src/tests/TEST-audit_inception_commit.sh --verbose >> src/tests/OUTPUT-TEST-audit_inception_commit.txt 2>&1- ⭐ Star our repositories to show support
- 📢 Sharing your discoveries with your network
- 💬 Ask a question or engage in discussions in our Community Discussions
- ✍️ Report an issue in our Initial Issue Tracker
- 🔎 Find Good First Issues to get started
- 💰 Become a financial patron to our host Blockchain Commons via GitHub Sponsors
For commercial support, visit: Blockchain Commons Support.
We welcome contributions from developers, researchers, and security experts!
- Read our Contributing Guide
- Fork the repository & create a feature branch
- Implement your feature or fix
- Digitally sign all your commits with an SSH signing key (
gitc commit -S) and attribute authorship (git commit --signoff). - Submit a Pull Request for review
All contributors must adhere to our Code of Conduct.
We recommend starting general issues in GitHub's 💬 Community Discussions to encourage open dialogue before they are formally moved to our ❗ Initial Issue Tracker.
However, in alignment with our commitment to decentralized repository management, we plan to develop GitHub Action scripts that will automatically populate /issues/ directories within each repository. This will allow issues to be mirrored across multiple Git hosting platforms, ensuring greater resilience and accessibility beyond GitHub.
Christopher Allen (@ChristopherA), <ChristopherA@LifeWithAlacrity.com/>
For a full list of contributors, see CONTRIBUTORS.md.
Ensuring security is a top priority for the Open Integrity Project. If you discover a security vulnerability, please report it responsibly:
- Email: team@BlockchainCommons.com
- GPG Encrypted Reports: See SECURITY.md for responsible disclosure guidelines
| Name | GPG Fingerprint | |
|---|---|---|
| Christopher Allen | ChristopherA@LifeWithAlacrity.com | FDFE 14A5 4ECB 30FC 5D22 74EF F8D3 6C91 3574 05ED |
- Security Issues: team@BlockchainCommons.com
- General Questions: Community Discussions
- Bug Reports: Initial Issue Tracker
Unless otherwise noted, all files are ©2025 Open Integrity Project / Blockchain Commons LLC and licensed under the BSD 2-Clause Plus Patent License. See LICENSE for details.
The Open Integrity Project is an Open Development initiative hosted by Blockchain Commons, dedicated to advancing open, interoperable, secure & compassionate digital infrastructure, and embracing the Gordian Principles of independence, privacy, resilience, and openness.