You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add critical lessons learned and corrections to Phase 2 plan
Based on Phase 2 implementation experience, add crucial guidance: CORRECTIONS: - Fix git subtree command (remove --squash to preserve individual commits) - Correct branch workflow (create branch FIRST before any work) - Update duration estimate (2-3 days, 1-2 with lessons learned) LESSONS LEARNED: 1. Branch management workflow corrections 2. Git subtree best practices 3. Complete linting tool configuration requirements 4. Yalc vs file: dependency management approach 5. Multiple dummy apps that need updates 6. CircleCI optimization strategies 7. Local dependency management patterns These lessons will significantly speed up future monorepo merger implementations. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> Correct Phase 2 git strategy to use filter-repo approach Update merger plan to reflect the actual commands used: STRATEGY CHANGE: - Replace git subtree approach with git filter-repo + merge - Use git filter-repo --to-subdirectory-filter for better file history - Use git merge --allow-unrelated-histories for clean integration BENEFITS OF FILTER-REPO APPROACH: - Better file history browsing with git log --follow - Cleaner history integration compared to subtree prefixing - No issues with path-based git operations - Easier to browse pro file history with no problems This approach was actually used in the implementation and provides superior file history preservation and browsing experience. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1.**Branch Management**: ALWAYS create the feature branch BEFORE starting any work, not after commits
265
+
2.**Git Merge Strategy**: Use `git filter-repo --to-subdirectory-filter` + `git merge --allow-unrelated-histories` instead of subtree for better file history browsing
266
+
3.**Linting Tool Configuration**: ALL linting tools must exclude pro directory:
267
+
- Update `.rubocop.yml` with `'react_on_rails_pro/**/*'` exclusion
268
+
- Update `eslint.config.ts` with `'react_on_rails_pro/'` exclusion
269
+
- Update `.prettierignore` with `react_on_rails_pro/` exclusion
270
+
- Update `knip.ts` with `'react_on_rails_pro/**'` in ignore patterns
271
+
4.**Local Dependencies**: Use yalc for JS packages, path references for Ruby gems:
272
+
- Add `preinstall` scripts to all package.json files that need local react-on-rails
273
+
- Use `link-source` scripts to build and publish packages with yalc
274
+
- Avoid `file:` paths in package.json - use `link:.yalc/package-name` instead
275
+
5.**Multiple Dummy Apps**: Don't forget to update ALL dummy apps:
0 commit comments