Commit Graph

2 Commits

Author SHA1 Message Date
Caleb a58fb564d1 feat(scripts): add env isolation, incremental logging, and test timeouts
- Wrap all Claude CLI subprocess calls with `env -u CLAUDECODE` to prevent
  parent env var interference with child processes (17 sites across 7 files)
- Add `flush_log_to_repo()` to epic-execute.sh for incremental log persistence
  after each story completes or fails (prevents log loss on interruption)
- Add portable `run_with_timeout` utility to utils.sh and wrap all test
  invocations in epic-execute.sh and regression-gate.sh with configurable
  timeout (default 120s via REGRESSION_TEST_TIMEOUT)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 05:19:53 -06:00
Caleb 5c63f31c0e feat(epic-execute): add JSON output parsing and TDD workflow phases
Implements the final two improvements from bmad_improvements_v2.md:

## Structured JSON Output (Improvement #6)
- New module: scripts/epic-execute-lib/json-output.sh
- Functions for extracting and parsing JSON from Claude output
- Unified check_phase_completion() with JSON + text fallback
- Updated prompts to request JSON result blocks
- Added --legacy-output flag to disable JSON parsing

## Test-First Flow (Improvement #7)
- New module: scripts/epic-execute-lib/tdd-flow.sh
- execute_test_spec_phase() - Generates BDD specs from acceptance criteria
- execute_test_impl_phase() - Creates failing tests from specs
- execute_test_verification_phase() - Verifies tests fail correctly
- Integration with dev phase for TDD context
- Added --skip-tdd, --skip-test-spec, --skip-test-impl flags

All 7 improvements from the analysis are now complete.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 14:33:25 -06:00