Commit Graph

14 Commits

Author SHA1 Message Date
rob 80c9345e16 fix: Eliminate race condition by letting automation generate discussion files
Changed setup_project.py to only create request.md during setup, allowing
the pre-commit hook automation to generate discussion and summary files.

Problem (before):
- setup_project.py created request.md, feature.discussion.md, and .sum.md
- git commit staged ALL files and triggered pre-commit hook
- runner.py saw request.md and tried to generate feature.discussion.md
- But feature.discussion.md was already in the index → race condition
- workflow.py also tried to update .sum.md → more conflicts

Solution (now):
- setup_project.py creates ONLY request.md
- discussions/ directory is created but empty
- First commit triggers automation:
  - runner.py sees request.md → generates feature.discussion.md (AI)
  - ensure_summary in pre-commit hook → creates .sum.md from template
  - workflow.py → updates .sum.md with vote data
- No more conflicts between setup and automation

Benefits:
1. No race condition - each file has one source of truth
2. Actually exercises the automation system on first commit
3. Generated files always match current automation rules
4. Simpler setup code (67 lines removed)

Testing:
The automation will now properly run on first commit instead of conflicting
with pre-seeded files.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-01 01:22:12 -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 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 6fd29b7085 1st commit 2025-10-25 22:14:34 -03:00
rob 5425ce9fbb 1st commit 2025-10-25 02:30:38 -03:00
rob c61c988966 1st commit 2025-10-25 02:24:55 -03:00