Skip to content

Commit 210296a

Browse files
authored
Merge pull request #186 from tebanieo/master
Updated prompts for stage 3 and 4 to reduce file search
2 parents 6e7dc63 + e01e5e4 commit 210296a

File tree

2 files changed

+42
-4
lines changed
  • workshops/modernizr/prompts

2 files changed

+42
-4
lines changed

workshops/modernizr/prompts/03-dual-database-abstraction/tasks.md

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,20 @@ All tasks, analysis, and modifications should be limited to the backend/ folder
1414

1515
This stage follows a discovery-driven approach where Q first explores the backend codebase to understand its structure, then generates appropriate requirements and design specifications based on the actual code found.
1616

17-
## COMMIT FREQUENCY
17+
## COMMIT FREQUENCY AND TASK COMPLETION
1818

19-
**IMPORTANT**: Commit changes frequently throughout this stage to maintain a clean Git history. Each major task completion should include a commit with a descriptive message. Use `git -P` to avoid interactive prompts.
19+
**IMPORTANT**:
20+
- **Commit changes frequently** throughout this stage to maintain a clean Git history
21+
- **Use `git -P`** to avoid interactive prompts
22+
- **Mark tasks as completed** by changing `[ ]` to `[x]` as you finish each task
23+
- **Commit after each major task completion** with descriptive messages
24+
- **Update the tasks.md file** itself when marking tasks complete and commit those changes too
25+
- **Use single working log**: Use `artifacts/stage-03/03_working_log.md` throughout the entire stage (not individual logs per subtask)
2026

2127
- [ ] 1. Explore and document backend codebase structure
2228
- [ ] 1.1 Comprehensive backend codebase exploration
2329
- **SCOPE**: Focus exclusively on the backend/ folder - do not analyze frontend/ folder
30+
- **FIRST**: Create working log file `artifacts/stage-03/03_working_log.md` to track progress and important notes throughout this entire stage
2431
- Read and analyze backend/README.md to understand the application structure and setup
2532
- Examine backend/package.json to identify dependencies, scripts, and technologies used
2633
- Explore backend/src/ directory structure to understand the application architecture
@@ -71,12 +78,36 @@ This stage follows a discovery-driven approach where Q first explores the backen
7178

7279
- [ ] 2.3 Continue with remaining implementation steps
7380
- Follow the detailed implementation plan created in the generated design document
74-
- Implement concrete classes, factory pattern, application integration, test updates, and configuration
81+
- Implement concrete classes, factory pattern, application integration, and configuration
7582
- Use the discovery-based requirements and design as the detailed specification
83+
- **CRITICAL**: For EVERY file you create or modify, document it in `artifacts/stage-03/03_working_log.md` with:
84+
- File path and name
85+
- Purpose of the file (interface, concrete implementation, stub, configuration, etc.)
86+
- Whether it's a MySQL implementation, DynamoDB stub, or shared component
87+
- Brief description of what the file contains
88+
- **IMPORTANT**: Clearly mark which files are DynamoDB stubs that will need real implementation in stage-04
7689
- Document progress in `artifacts/stage-03/03_5_implementation_log.md`
77-
- **COMMIT**: Commit implementation progress regularly with descriptive messages (e.g., "Implement dual-database interfaces", "Add feature flag configuration", "Update tests for dual-database support")
90+
- **COMMIT**: Commit implementation progress regularly with descriptive messages (e.g., "Implement dual-database interfaces", "Add feature flag configuration")
7891
- _Requirements: 2.1, 2.2, 2.3, 2.4, 2.5, 3.1, 3.2, 3.3, 3.4, 3.5_
7992

93+
- [ ] 2.4 Create comprehensive unit tests for new abstraction layer components
94+
- **CRITICAL**: Follow stage-04 testing principles - NEVER modify existing test files, ALWAYS create NEW test files
95+
- **SCOPE**: Create unit tests only for newly created abstraction layer components, not existing backend code
96+
- Create NEW test files for all abstraction layer components:
97+
- Abstract interfaces: `AbstractRepository.test.js` (or similar based on actual interface names)
98+
- Factory pattern implementation: `DatabaseFactory.test.js`
99+
- Configuration management system: `DatabaseConfig.test.js`
100+
- Feature flag integration: `FeatureFlag.test.js`
101+
- Any new error handling logic: `ErrorHandler.test.js`
102+
- **TESTING APPROACH**: Use unit testing with mocks for dependencies, focusing on business logic validation
103+
- **CRITICAL**: Run existing backend tests before creating new tests to ensure baseline functionality
104+
- **CRITICAL**: Run all tests (existing + new) after creating each new test file
105+
- Ensure new tests cover edge cases, error conditions, and configuration scenarios
106+
- Document test coverage and any testing considerations in implementation log
107+
- **COMMIT**: Commit new test files with message "Add comprehensive unit tests for dual-database abstraction layer components"
108+
- **MARK COMPLETE**: Update this task to [x] and commit the tasks.md change
109+
- _Requirements: 2.5, 3.1, 3.4_
110+
80111
- [ ] 3. Final validation and documentation
81112
- [ ] 3.1 Comprehensive validation of implemented abstraction layer
82113
- **CRITICAL**: Verify all existing backend tests pass with the new implementation

workshops/modernizr/prompts/04-dynamodb-implementation/tasks.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@
88
- **Mark tasks as completed** by changing `[ ]` to `[x]` as you finish each task
99
- **Commit after each major task completion** with descriptive messages
1010
- **Update the tasks.md file** itself when marking tasks complete and commit those changes too
11+
- **Use single working log**: Use `artifacts/stage-04/04_working_log.md` throughout the entire stage (not individual logs per subtask)
1112

1213
- [ ] 1. Set up test environment and establish baseline
1314
- [ ] 1.1 Discover testing framework and execution procedures
15+
- **FIRST**: Create working log file `artifacts/stage-04/04_working_log.md` to track progress and important notes throughout this entire stage
1416
- Identify the testing framework and commands used in the repository
1517
- Locate existing test files related to the data access layer
1618
- Understand how tests are organized and executed in this project
@@ -42,6 +44,11 @@
4244
- [ ] 2. Review stage 03 artifacts and prepare for implementation
4345
- [ ] 2.1 Review dual-database abstraction artifacts from stage 03
4446
- **REUSE ARTIFACTS**: Read and analyze the stage 03 artifacts from `artifacts/stage-03/`
47+
- **CRITICAL**: First read `artifacts/stage-03/03_working_log.md` to understand exactly what files were created in stage-03:
48+
- Identify all DynamoDB stub files that need real implementation
49+
- Understand the file structure and organization created in stage-03
50+
- Note which files are MySQL implementations (don't modify) vs DynamoDB stubs (replace)
51+
- Document the specific files you need to modify in your stage-04 working log
4552
- Review `03_1_backend_analysis.md` for programming language, frameworks, and architecture understanding
4653
- Review `03_2_data_access_analysis.md` for existing repository patterns and test structure
4754
- Review `03_3_dal_requirements.md` and `03_4_dal_design.md` for the dual-database abstraction design

0 commit comments

Comments
 (0)