Commit Graph

13 Commits

Author SHA1 Message Date
Reza Rezvani ad03dea942 fix(ci): handle multi-line PR body in linked issues check
Use heredoc to safely write PR body to temp file instead of storing in variable.
This prevents bash from interpreting special characters and multi-line content
as commands (exit code 127 error).

Fixes workflow failure in PR #3.
2025-11-12 14:33:32 +01:00
Alireza Rezvani 80e4588f81 Merge pull request #3 from alirezarezvani/feature/test-ci-workflow
feat(docs): add CI/CD workflow testing documentation
2025-11-12 13:44:12 +01:00
Reza Rezvani 582a116f72 feat(docs): add CI/CD workflow testing documentation
Add test documentation to validate the CI/CD workflows are
functioning correctly. This PR will test:

- Branch name validation (feature/* pattern)
- PR title validation (Conventional Commits)
- Quality gates (Markdown linting, secret scanning)
- pr-into-dev.yml workflow execution

This is a test PR to ensure all GitHub Actions workflows
are properly configured and executing as expected.
2025-11-12 13:07:50 +01:00
Reza Rezvani 2651797190 feat(ci): enhance GitHub templates and add configuration files
Phase 2: GitHub Templates & Configuration

Issue Templates:
- Enhanced bug_report.md with Python version and component fields
- Added 'needs discussion' label to feature_request.md for better triage

PR Template:
- Added CI/CD workflow change type
- Expanded checklist with quality gates, documentation, testing, and CI/CD sections
- Added Conventional Commits reminder and branch naming convention
- Better organized sections for code quality, docs, testing

Configuration Files:
- CODEOWNERS: Auto-request review from @alirezarezvani for critical paths
- commit-template.txt: Conventional Commits guide with examples
- dependabot.yml: Weekly Python (pip) and GitHub Actions dependency updates

Aligns templates with new CI/CD workflows from Phase 1:
- PR validation expects Conventional Commits format
- Quality gates check Python, Markdown, Bash, secrets
- Branch naming conventions enforced by pr-into-dev workflow

Next: Phase 3 (dev branch creation, branch protection documentation)
2025-11-12 12:54:03 +01:00
Reza Rezvani dd6a6c24d7 feat(ci): implement comprehensive CI/CD workflows and quality gates
Phase 1: Core GitHub Workflows Implementation

Composite Actions (4):
- setup-python-deps: Cache Python dependencies for faster runs
- fork-safety: Detect fork PRs and prevent malicious write operations
- rate-limit-check: Circuit breaker pattern for GitHub API exhaustion
- quality-gates: Python syntax, Markdown lint, Bash validation, secret scanning

Workflows (5):
- bootstrap.yml: One-time repository setup (labels, milestones, settings)
- reusable-pr-checks.yml: DRY quality gate orchestrator
- pr-into-dev.yml: Feature PR validation (branch names, conventional commits, linked issues)
- dev-to-main.yml: Release gate validation (source branch, CHANGELOG, production readiness)
- release.yml: Manual release creation with GitHub releases and auto-generated notes

Branch Strategy: Standard (feature/* → dev → main)
Quality Gates: Python, Markdown, Bash, Secrets
Release Trigger: Manual via /release command or workflow_dispatch

Implements comprehensive CI/CD system adapted from blueprint:
- Fork safety and rate limiting for security
- Conventional commits enforcement
- Automated quality validation
- Production release gates
- GitHub release automation

Next: Phase 2 (templates, CODEOWNERS, dependabot)
2025-11-12 12:51:48 +01:00
Reza Rezvani eea0f09753 fix(installer): Project-level installation now works correctly with remote install
CRITICAL FIX:
- Save original directory before downloading from GitHub
- For project-level installation via curl/remote, install to original directory
- Prevents .claude/ folder from being created in temp directory and deleted
- Fixes both bash (install.sh) and PowerShell (install.ps1) installers
- Quality hooks also install to correct directory

Before: curl | bash with option 2 would install to temp dir and delete it
After: curl | bash with option 2 installs to directory where command was run

This fixes the issue where users couldn't see .claude/ after installation.
2025-11-12 12:19:55 +01:00
Reza Rezvani 5ad6a1e0a7 fix(installer): Display colors correctly in all echo statements
- Added -e flag to all echo commands using color variables
- Fixes raw ANSI escape codes showing instead of colored text
- Improves user experience during installation
- Affects menu options, next steps, and documentation links
2025-11-12 12:13:07 +01:00
Reza Rezvani d5da9aeedb fix(installer): Read user input from /dev/tty for piped execution
- Fixed infinite loop when running via curl | bash
- All interactive prompts now read from /dev/tty instead of stdin
- Fixes installation choice, confirmation, and quality hooks prompts
- Ensures user input works correctly when script is piped through bash
2025-11-12 12:00:10 +01:00
Alireza Rezvani 8740f7c205 Merge pull request #1 from alirezarezvani/add-claude-github-actions-1762944570174
Add Claude Code GitHub Workflow
2025-11-12 11:49:44 +01:00
Alireza Rezvani b1884c428f "Claude Code Review workflow" 2025-11-12 11:49:32 +01:00
Alireza Rezvani 60dd6d9f5f "Claude PR Assistant workflow" 2025-11-12 11:49:31 +01:00
Reza Rezvani b8f12f34f7 fix(installers): Enable one-line installation from curl/web
- Add automatic download from GitHub when files not present locally
- Support both local and remote installation modes
- Download v1.0.0 release tarball/zip automatically
- Clean up temporary files after remote installation
- Update both install.sh (macOS/Linux) and install.ps1 (Windows)

Now the one-line install works correctly:
curl -fsSL https://raw.githubusercontent.com/alirezarezvani/ClaudeForge/main/install.sh | bash

Fixes #1 (if issue exists)
2025-11-12 11:45:57 +01:00
Reza Rezvani 37422c1667 Initial commit: ClaudeForge v1.0.0 v1.0.0 2025-11-12 11:19:48 +01:00