Commit Graph

28 Commits

Author SHA1 Message Date
rob 05002b766b test: Add comprehensive workflow tests and improve template tests
Testing improvements completing Week 1 consolidation:

1. Add tests/test_workflow.py (6 comprehensive tests)
   - test_extract_vote_value: Vote value extraction
   - test_parse_votes_single_participant_single_vote: Basic parsing
   - test_parse_votes_single_participant_multiple_votes: Latest vote wins
   - test_parse_votes_multiple_participants: Multi-participant tracking
   - test_parse_votes_malformed_lines: Error handling
   - test_parse_votes_mixed_content: Real-world scenarios

2. Improve tests/test_template_meta.py
   - Replace stub tests with real implementations
   - test_find_template_fields: Field extraction from templates
   - test_render_request_from_template: Template rendering
   - test_render_request_from_template_with_existing_meta: Preserve existing data

3. Add __init__.py files for test imports
   - assets/__init__.py: Make assets importable
   - automation/__init__.py: Make automation importable
   - Enables tests to import workflow.py and create_feature.py

4. Update pyproject.toml pytest configuration
   - Add ".", "assets" to pythonpath
   - Allows tests to import from automation/ and assets/

Test Results:
- All 11 tests passing
- Coverage: workflow vote parsing, template rendering, utils
- Foundation ready for Stage 2 development

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 16:20:42 -03:00
rob 858dcae72e fix: Make workflow.py executable and add missing argparse import
Critical bug fixes discovered during end-to-end testing:

1. Add missing argparse import to workflow.py
   - workflow.py was missing `import argparse`
   - Caused NameError when pre-commit hook tried to run it
   - Added import at line 13

2. Make workflow.py executable during installation
   - Installer now sets executable permissions (0o755)
   - Pre-commit hook checks `if [ -x "automation/workflow.py" ]`
   - Without executable bit, hook silently skipped workflow
   - Fix in setup_project.py lines 381-384

Testing:
- Created fresh project with installer
- Added votes to discussion file
- Verified workflow.py runs during commit
- Output: "CHANGES: 2 votes, READY: 3 votes" ✓

Impact:
- Users now see vote counts during commits
- Phase 1 orchestration fully functional
- Foundation ready for Stage 2 (summary updates)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 16:14:44 -03:00
rob 4e7ad11b4c feat: Implement vote parsing orchestrator and testing infrastructure
Major implementation milestone - core automation is now functional:

1. Add automation/workflow.py (Phase 1 - Vote Parsing)
   - Parse VOTE: lines from discussion files
   - Track latest vote per participant
   - Print human-readable vote summaries
   - Non-blocking (always exits 0)
   - Proper error handling for missing files/git failures
   - 158 lines of production-quality code

2. Add testing infrastructure
   - Create tests/ directory with pytest configuration
   - Add test_utils.py with actual version reading test
   - Add test_template_meta.py (stubs for META system tests)
   - Add test_build.py (stub for build verification)
   - Configure pytest in pyproject.toml (pythonpath)
   - All 4 tests passing

3. Add AGENTS.md - Developer guidelines
   - Project structure and module organization
   - Build, test, and development commands
   - Coding style and naming conventions
   - Testing guidelines
   - Commit and PR guidelines

4. Update docs/DESIGN.md
   - Document workflow.py implementation
   - Update automation status from "planned" to "implemented"
   - Clarify Phase 1 vs future phases

5. Code cleanup - Remove empty stub modules
   - Delete src/cascadingdev/feature_seed.py
   - Delete src/cascadingdev/fs_scaffold.py
   - Delete src/cascadingdev/ramble_integration.py
   - Delete src/cascadingdev/rules_seed.py

Impact:
- Users can now see vote counts in their commits
- Testing foundation enables safe refactoring
- Code is cleaner with only working modules
- Week 1 implementation goals complete

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 14:25:53 -03:00
rob 03bb4afdcc build: Bundle automation/ and update pre-commit hook comment
Integration fixes to make workflow.py available in user projects:

1. Bundle automation/ directory in installer
   - Add automation/ to build_installer.py copy process
   - Ensures workflow.py is available in generated projects
   - Pre-commit hook can now actually call workflow.py

2. Update pre-commit hook comment
   - Change from "planned feature...does not yet exist"
   - Update to "provides non-blocking vote status reporting"
   - Accurately describes current implementation

Verified:
- automation/workflow.py present in install bundle
- workflow.py executes successfully from bundle
- Pre-commit hook comment matches reality

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 14:24:32 -03:00
rob 7e7779c9d7 uptodate agents 2025-10-30 13:17:58 -03:00
rob 536d885b6b docs: Add CLAUDE.md and restructure DESIGN.md for clarity
Major documentation improvements:

1. Add CLAUDE.md
   - Comprehensive guide for AI assistants working in this repo
   - Repository architecture and directory structure
   - Common development commands and workflows
   - Build system explanation
   - Key concepts and design philosophy

2. Restructure DESIGN.md
   - Clarify three directory contexts: CascadingDev Repo, Install Bundle, User Project
   - Add clear section headers and visual separation
   - Mark future/unimplemented features with 🚧 emoji
   - Document undocumented wins: META system and Ramble providers
   - Add comprehensive Ramble documentation (mock and claude providers)
   - Document template META system with code examples

3. Fix setup_project.py
   - Correct error message path (was scripts/hooks/pre-commit, now assets/hooks/pre-commit)

These changes address confusion between tooling source, distribution bundle, and
generated user projects while highlighting sophisticated features like the
self-describing template system and multi-provider Ramble GUI.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 12:31:33 -03:00
rob d78b0d83c8 1st commit 2025-10-29 01:22:40 -03:00
rob db728ac2e4 1st commit 2025-10-28 22:24:46 -03:00
rob ea38549348 1st commit 2025-10-28 21:24:28 -03:00
rob a0b2816cc5 1st commit 2025-10-28 21:23:08 -03:00
rob e914caf15f 1st commit 2025-10-28 11:56:01 -03:00
rob 67a4415600 1st commit 2025-10-27 20:17:35 -03:00
rob ade5f91ad7 1st commit 2025-10-27 16:28:14 -03:00
rob a075472a98 1st commit 2025-10-27 16:24:50 -03:00
rob 5506891a52 1st commit 2025-10-26 12:28:04 -03:00
rob 6fd29b7085 1st commit 2025-10-25 22:14:34 -03:00
rob e4cf48b3ea 1st commit 2025-10-25 21:16:15 -03:00
rob 51a9bb0aa2 1st commit 2025-10-25 13:34:20 -03:00
rob 5425ce9fbb 1st commit 2025-10-25 02:30:38 -03:00
rob 5e3a7231f9 1st commit 2025-10-25 02:27:38 -03:00
rob c61c988966 1st commit 2025-10-25 02:24:55 -03:00
rob 1684169515 1st commit 2025-10-25 00:52:34 -03:00
rob b2dec202e3 1st commit 2025-10-25 00:12:55 -03:00
rob 18d84c2b15 1st commit 2025-10-24 20:55:11 -03:00
rob 1141725d14 1st commit 2025-10-24 13:58:59 -03:00
rob 6f6c66891f 1st commit 2025-10-22 14:25:04 -03:00
rob e4174218ed 1st commit 2025-10-22 13:48:47 -03:00
rob 6fa6f6ba66 1st commit 2025-10-22 07:18:58 -03:00