Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "workflows",
"version": "0.1.0",
"version": "0.2.0",
"description": "Autonomous workflow orchestration for the full SDLC pipeline - from research to PR submission",
"author": {
"name": "Ladislav Martincik",
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/validate-plugin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
branches: [main, master]
pull_request:
branches: [main, master]
workflow_dispatch:

jobs:
validate:
Expand All @@ -25,6 +26,12 @@ jobs:
- name: Validate plugin (versions, schema, skills, docs)
run: bun run validate

- name: Type check
run: bun run typecheck

- name: Run tests
run: bun test

- name: Validate shell scripts syntax
run: |
for script in scripts/*.sh; do
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
node_modules/
.DS_Store
*.log
.worktrees/
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,27 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.2.0] - 2026-01-25

### Added
- TypeScript runner infrastructure with XState state machine
- Phase commands for fresh-context execution:
- `/phase-setup` - Create worktree, initialize progress
- `/phase-plan` - Split research into implementation plans
- `/phase-impl` - Execute single implementation plan
- `/phase-submit` - Create and push PR
- `/phase-verify-ci` - Check CI status
- `/phase-fix-ci` - Fix CI failures
- `/phase-resolve-comments` - Handle reviewer feedback
- CI resolution loop with retry limits (max 5 attempts)
- Comment resolution loop with retry limits (max 10 attempts)
- CLI entry point: `bun run src/cli.ts run <research-file>`
- Unit tests for runner components (51 tests)

### Changed
- `/workflows:build` now spawns TypeScript runner as subprocess
- Workflow continues through CI and comment resolution until PR is merge-ready

## [0.1.0] - 2026-01-25

### Added
Expand Down
49 changes: 43 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,30 @@ Address PR review comments autonomously.
**Arguments:**
- `pr-number` - GitHub PR number to resolve comments for

## Internal Phase Commands

The TypeScript runner executes phases as separate Claude CLI subprocesses. These commands are not meant for direct user invocation but are exposed for debugging and advanced usage.

- **/phase-setup** - Create worktree, initialize progress file
- **/phase-plan** - Split research into implementation plans
- **/phase-impl** - Execute a single implementation plan
- **/phase-submit** - Create and push the PR
- **/phase-verify-ci** - Check CI status for the PR
- **/phase-fix-ci** - Analyze and fix CI failures
- **/phase-resolve-comments** - Process and resolve PR review comments

Each phase emits XML-style signals that the runner parses to track state transitions.

## Workflow Phases

The build command executes four phases:
The build command executes the following phases:

1. **Setup** - Create isolated worktree, initialize progress tracking
2. **Planning** - Generate implementation plans from research
3. **Implementation** - Execute each plan sequentially
4. **Submission** - Create and push PR
5. **CI Resolution** - Monitor and fix CI failures (loops until green)
6. **Comment Resolution** - Address reviewer feedback (loops until resolved)

## Progress Tracking

Expand Down Expand Up @@ -141,18 +157,39 @@ bun run validate
```
workflows-plugin/
├── .claude-plugin/
│ └── plugin.json # Plugin manifest
│ └── plugin.json # Plugin manifest
├── src/ # TypeScript runner infrastructure
│ ├── cli.ts # CLI entry point
│ ├── index.ts # Library exports
│ ├── types.ts # Type definitions
│ ├── adapters/
│ │ └── claude-cli-adapter.ts
│ ├── runner/
│ │ ├── workflow-runner.ts # Main orchestration loop
│ │ ├── signal-parser.ts # Parse XML signals
│ │ ├── progress-writer.ts # Progress file I/O
│ │ └── phase-mapper.ts # Map phases to commands
│ └── workflows/
│ └── main.workflow.ts # XState machine
├── commands/
│ └── build.md # Main workflow command
│ ├── build.md # Main workflow command
│ ├── phase-setup.md # Setup phase
│ ├── phase-plan.md # Planning phase
│ ├── phase-impl.md # Implementation phase
│ ├── phase-submit.md # PR submission phase
│ ├── phase-verify-ci.md # CI verification phase
│ ├── phase-fix-ci.md # CI fix phase
│ └── phase-resolve-comments.md
├── templates/
│ └── progress.txt.template
├── scripts/
│ ├── workflow-ralph.sh # Main orchestrator script
│ ├── ci-ralph.sh # CI resolution loop
│ ├── comments-ralph.sh # Comment resolution loop
│ ├── workflow-ralph.sh # Shell-based orchestrator
│ ├── ci-ralph.sh
│ ├── comments-ralph.sh
│ ├── validate-plugin.ts
│ └── validate-versions.ts
├── package.json
├── tsconfig.json
├── README.md
└── CHANGELOG.md
```
Expand Down
8 changes: 8 additions & 0 deletions bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading