| name | test-workflow |
| description | Run BitBot's iterative test workflow (implement → test → fix → commit → push). Use PROACTIVELY during development to ensure quality before committing. |
Running BitBot test workflow...
This workflow supports the full development cycle:
- Implement - Write/modify code
- Test - Fix line endings, check syntax, run tests
- Fix - Address failures iteratively
- Commit - Once all tests pass
- Push - Share your work
Usage
Single file check (basic mode):
.claude/skills/test-workflow/scripts/test-workflow.sh <file>
Implementation loop (use this in practice):
- Make changes to implementation file
- Run workflow on implementation + test file
- If tests fail, fix issues and repeat from step 2
- Once tests pass, commit and push
What It Does
Step 1: Fix Line Endings & Check Syntax
- Converts CRLF → LF
- Validates bash syntax
- Reports any syntax errors
Step 2: Run Tests (if test file)
- Executes with 60-second timeout
- Prevents hanging tests
- Shows pass/fail results
Step 3: Report Status
- Shows success/failure
- Next steps if errors found
When to Use Proactively
During iterative development (recommended):
vim core/util/feature.sh
.claude/skills/test-workflow/scripts/test-workflow.sh core/util/feature.sh
vim dev/tests/test-feature.sh
.claude/skills/test-workflow/scripts/test-workflow.sh dev/tests/test-feature.sh
git add core/util/feature.sh dev/tests/test-feature.sh
git commit -m "Add feature with tests (all passing)"
git push
Quick single-file checks:
.claude/skills/test-workflow/scripts/test-workflow.sh core/util/new-script.sh
.claude/skills/test-workflow/scripts/test-workflow.sh dev/tests/test-feature.sh
See Also
sparc/0-research/TESTING_PROCESS.md - Full testing guidelines
.claude/skills/fix-line-endings-check-bash/ - Individual fix+check
.claude/skills/run-with-timeout/ - Timeout wrapper