-
Notifications
You must be signed in to change notification settings - Fork 0
[WIP] Evaluate software stack for common standards #2
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
Changes from all commits
7ff77b9
b680c10
a86a162
c04e944
3507954
2410db3
2f28e52
fab0ea2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,176 @@ | ||
| # Contributing to Robert Pelloni's Workspace | ||
|
|
||
| Thank you for your interest in contributing! This workspace contains multiple projects and AI orchestration tools. Here's how you can contribute effectively. | ||
|
|
||
| ## Table of Contents | ||
| - [Getting Started](#getting-started) | ||
| - [Development Process](#development-process) | ||
| - [Code Standards](#code-standards) | ||
| - [Submitting Changes](#submitting-changes) | ||
| - [AI Orchestration Guidelines](#ai-orchestration-guidelines) | ||
|
|
||
| ## Getting Started | ||
|
|
||
| ### Prerequisites | ||
| - Git installed and configured | ||
| - Familiarity with the specific project you want to contribute to | ||
| - For AI orchestration work: Access to relevant MCP servers and AI models | ||
|
|
||
| ### Setting Up Your Environment | ||
|
|
||
| 1. Fork the repository | ||
| 2. Clone your fork: | ||
| ```bash | ||
| git clone https://github.com/YOUR-USERNAME/workspace.git | ||
| cd workspace | ||
| ``` | ||
| 3. Create a feature branch: | ||
| ```bash | ||
| git checkout -b feature/your-feature-name | ||
| ``` | ||
|
|
||
| ## Development Process | ||
|
|
||
| ### Before Starting Work | ||
| 1. Check existing issues and pull requests to avoid duplication | ||
| 2. For major changes, open an issue first to discuss the approach | ||
| 3. Review the project-specific documentation in each subdirectory | ||
|
|
||
| ### Code Quality | ||
| - Write clear, maintainable code | ||
| - Follow the existing code style in each project | ||
| - Add tests for new features when applicable | ||
| - Update documentation to reflect your changes | ||
|
|
||
| ### Testing | ||
| - Run existing tests before submitting changes | ||
| - Add tests for new functionality | ||
| - Ensure all tests pass before creating a pull request | ||
|
|
||
| ## Code Standards | ||
|
|
||
| ### General Guidelines | ||
| - Use meaningful variable and function names | ||
| - Keep functions small and focused | ||
| - Comment complex logic | ||
| - Remove commented-out code and debug statements | ||
|
|
||
| ### Project-Specific Standards | ||
| Different projects in this workspace use different languages and frameworks: | ||
| - **PHP projects**: Follow PSR-12 coding standards | ||
| - **JavaScript/TypeScript**: Use consistent formatting (Prettier recommended) | ||
| - **Python**: Follow PEP 8 style guide | ||
| - **C++**: Follow project-specific conventions | ||
|
|
||
| ### Commit Messages | ||
| Follow the [Conventional Commits](https://www.conventionalcommits.org/) specification: | ||
|
|
||
| ``` | ||
| type(scope): subject | ||
|
|
||
| body | ||
|
|
||
| footer | ||
| ``` | ||
|
|
||
| Types: | ||
| - `feat`: New feature | ||
| - `fix`: Bug fix | ||
| - `docs`: Documentation changes | ||
| - `style`: Formatting, missing semicolons, etc. | ||
| - `refactor`: Code restructuring | ||
| - `test`: Adding tests | ||
| - `chore`: Maintenance tasks | ||
|
|
||
| Example: | ||
| ``` | ||
| feat(auth): add two-factor authentication support | ||
|
|
||
| Implements TOTP-based 2FA for enhanced security. | ||
| Uses standard TOTP libraries and follows best practices. | ||
|
|
||
| Closes #123 | ||
| ``` | ||
|
|
||
| ## Submitting Changes | ||
|
|
||
| ### Pull Request Process | ||
|
|
||
| 1. **Update Your Branch** | ||
| ```bash | ||
| git fetch origin | ||
| git rebase origin/main | ||
| ``` | ||
|
|
||
| 2. **Push Your Changes** | ||
| ```bash | ||
| git push origin feature/your-feature-name | ||
| ``` | ||
|
|
||
| 3. **Create Pull Request** | ||
| - Use the pull request template | ||
| - Provide a clear description of changes | ||
| - Link related issues | ||
| - Add screenshots for UI changes | ||
| - Request review from maintainers | ||
|
|
||
| 4. **Address Review Feedback** | ||
| - Respond to all review comments | ||
| - Make requested changes | ||
| - Push updates to the same branch | ||
|
|
||
| 5. **Merge** | ||
| - Maintainers will merge once approved | ||
| - Delete your feature branch after merge | ||
|
|
||
| ### Pull Request Checklist | ||
| - [ ] Code follows project style guidelines | ||
| - [ ] Self-review of code completed | ||
| - [ ] Comments added for complex logic | ||
| - [ ] Documentation updated | ||
| - [ ] No new warnings generated | ||
| - [ ] Tests added/updated and passing | ||
| - [ ] Changes work locally | ||
| - [ ] Dependent changes merged | ||
|
|
||
| ## AI Orchestration Guidelines | ||
|
|
||
| This workspace extensively uses AI orchestration with multiple models. When contributing to AI-related components: | ||
|
|
||
| ### AI Model Integration | ||
| - Document which AI models are used and why | ||
| - Include fallback strategies for API failures | ||
| - Respect rate limits and quotas | ||
| - Never commit API keys or secrets | ||
|
|
||
| ### MCP Server Development | ||
| - Follow MCP protocol specifications | ||
| - Add comprehensive error handling | ||
| - Document all available tools and methods | ||
| - Include usage examples | ||
|
|
||
| ### Skills and Methodologies | ||
| - Document new skills in the consolidated-skills directory | ||
| - Follow the existing skill structure | ||
| - Include effectiveness metrics when available | ||
| - Test skills with multiple AI models | ||
|
|
||
| ### Consensus Building | ||
| - Use multi-model consensus for critical decisions | ||
| - Document the models used and their responses | ||
| - Include confidence scores when available | ||
| - Store results in appropriate Chroma collections | ||
|
|
||
| ## Questions or Need Help? | ||
|
|
||
| - Open an issue for bugs or feature requests | ||
| - Check existing documentation in the repository | ||
| - Review the AI coordination guides for orchestration questions | ||
|
|
||
| ## Code of Conduct | ||
|
|
||
| Please note that this project follows a Code of Conduct. By participating, you agree to uphold this code. Please report unacceptable behavior to the project maintainers. | ||
|
|
||
| ## Recognition | ||
|
|
||
| Contributors will be recognized in the project documentation. Thank you for helping make this workspace better! |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| MIT License | ||
|
|
||
| Copyright (c) 2025 Robert Pelloni | ||
|
|
||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
|
|
||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
|
|
||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,52 @@ | ||
| name: Copilot SWE Agent | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
| push: | ||
| branches: | ||
| - copilot/evaluate-software-stack | ||
|
|
||
| jobs: | ||
| copilot-agent: | ||
| runs-on: ubuntu-latest | ||
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Determine OS and set environment | ||
| shell: bash | ||
| run: | | ||
| # Determine runner OS (use GitHub-provided RUNNER_OS or | ||
| # fallback to uname) | ||
| if [ -z "${RUNNER_OS:-}" ]; then | ||
| RUNNER_OS="$(uname -s 2>/dev/null || echo Unknown)" | ||
| fi | ||
|
|
||
| case "$RUNNER_OS" in | ||
| Linux|linux) | ||
| echo "SHOULD_CONTINUE=true" >> "$GITHUB_ENV" | ||
| echo "Runner OS is Linux — continuing." | ||
| ;; | ||
| Windows|Windows_NT|MINGW*|CYGWIN*|msys*) | ||
| echo "SHOULD_CONTINUE=true" >> "$GITHUB_ENV" | ||
| echo "Runner OS is Windows — continuing." | ||
| ;; | ||
| Darwin|Mac|macOS) | ||
| echo "SHOULD_CONTINUE=true" >> "$GITHUB_ENV" | ||
| echo "Runner OS is macOS — continuing." | ||
| ;; | ||
| *) | ||
| # Unknown or unsupported OS — do not exit; mark that | ||
| # some steps should skip if needed | ||
| echo "SHOULD_CONTINUE=false" >> "$GITHUB_ENV" | ||
| printf '%s\n' \ | ||
| "Runner OS ($RUNNER_OS) is not explicitly supported." \ | ||
| "Continuing without quitting; check SHOULD_CONTINUE." | ||
| ;; | ||
| esac | ||
|
|
||
| - name: Run Copilot Agent | ||
| if: env.SHOULD_CONTINUE == 'true' | ||
| run: | | ||
| echo "Running Copilot SWE Agent..." | ||
| # Add your Copilot agent commands here | ||
|
robertpelloni marked this conversation as resolved.
|
||
Uh oh!
There was an error while loading. Please reload this page.