refactor: remove template backwards compatibility symlink#377
Conversation
All references now point directly to copier-template/ directory. Updated symlinks, documentation, and configuration files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
|
Claude finished @davidpoblador's task —— View job Pull Request ReviewReviewing the refactoring to remove template backwards compatibility symlink. Todo List:
✅ Overall AssessmentThis is a clean refactoring that successfully removes the backwards compatibility symlink 📝 Code Quality & Best PracticesExcellent work on:
The refactoring covers:
🔍 Thoroughness CheckI searched the entire codebase for remaining
The hardcoded paths in 🚀 Performance & SecurityPerformance: ✅ No performance impact - this is purely a directory structure cleanup 🧪 Test CoverageThe PR description indicates manual testing was performed:
Recommendation: Consider adding this verification to your automated testing to catch similar issues in the future. 💡 Minor Considerations
✅ Final VerdictThis is a high-quality refactoring that successfully achieves its goal. The implementation is thorough, consistent, and well-tested. The code follows established patterns and maintains the project's coding standards. Recommendation: ✅ Approve - Ready to merge after considering the breaking change implications above. |
## Summary Updated Release Please configuration to include `refactor` and `perf` commit types in changelog generation. **Changes:** - Added `changelog-sections` to `.release-please-config.json` - `refactor:` commits now appear under "Code Refactoring" section - `perf:` commits now appear under "Performance Improvements" section This fixes the issue where PR #377 (refactor: remove template backwards compatibility symlink) was not included in the Release Please PR #376. ## Test plan - [x] Configuration follows Release Please JSON schema - [x] After merge, Release Please should update PR #376 to include refactor commits ## Context By default, Release Please only includes `feat` and `fix` commits in changelogs. This change explicitly configures which commit types should appear, ensuring refactoring and performance improvements are documented. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <noreply@anthropic.com>
🤖 I have created a release *beep* *boop* --- ## [2.13.5](v2.13.4...v2.13.5) (2025-11-06) ### Bug Fixes * convert relative links to absolute URLs in changelog docs ([#373](#373)) ([a3ab5cb](a3ab5cb)) * include chore commits in changelog ([#379](#379)) ([44ffea3](44ffea3)) * include refactor and perf commits in changelog ([#378](#378)) ([f98e9df](f98e9df)) ### Code Refactoring * remove template backwards compatibility symlink ([#377](#377)) ([3ba7e11](3ba7e11)) ### Miscellaneous Chores * add gh pr list and gh run list permissions ([#380](#380)) ([6fb0642](6fb0642)) * add permissions for uvx uv-bump and gh pr create ([#375](#375)) ([27e392a](27e392a)) * **deps:** update JavaScript and Python dependencies ([#374](#374)) ([0370036](0370036)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Closes #1704. ## Summary - New embedded model `vibetuner.models.TenantTheme` with eight optional `#rrggbb` fields for DaisyUI role / role-content colors plus `.overrides()` → `{css_var: hex}`. - New opt-in helper `vibetuner.register_tenant_theme_provider(getter, *, attribute="theme")` that registers a context provider exposing `theme_overrides` per request. Fail-soft: getter/type errors log and render with no overrides. - New shipped partial `base/theme.html.jinja` that emits a CSP-noncified `<style>:root { ... }</style>` only when `theme_overrides` is non-empty. Wired into `base/skeleton.html.jinja` between the `bundle.css` link and `{% block head %}`. - Docs: new `theming.md` page (added to User Guide nav), feature entry in `llms.txt`, detailed section in `llms-full.txt` covering cascade ordering, the two color footguns (build-time literals in custom tokens, hardcoded scale shades), and the per-tenant fonts carve-out (#1705). `bundle.css` stays tenant-agnostic and cached; theming happens at request time in HTML — no per-tenant CSS rebuilds. ## Backwards compatibility - The helper is **opt-in**: nothing fires until an app calls `register_tenant_theme_provider(...)`. Apps that don't multi-tenant pay zero overhead. - Adding `theme: TenantTheme = Field(default_factory=TenantTheme)` to an existing tenant document is a no-op for already-persisted records (MongoDB is schema-on-read; `keep_nulls=False` keeps unset fields out of the database). - `base/skeleton.html.jinja` now includes `base/theme.html.jinja`, which renders nothing when `theme_overrides` is empty — apps that haven't registered a provider see no extra markup. - Apps that have already shipped a bespoke per-tenant theming block (e.g. radio's #377) keep working until they swap to the primitive in their own follow-up PR. ## Test plan - [x] `uv run python -m pytest tests/` (full suite, 717 passed) - [x] `uv run python -m pytest tests/unit/test_tenant_theme.py` (22 new tests covering the model validator, the provider helper, the rendered partial output, and HTML-escape defenses) - [x] `just format && just lint && just type-check` clean - [ ] Smoke-test in a scaffolded project against a real tenant document - [ ] Once merged, file a follow-up to migrate radio's bespoke implementation to this primitive 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Summary
template -> copier-templatebackwards compatibility symlinkcopier-template/.claude/settings.jsonsymlink referencedocs/.gitignoreto referencecopier-template/paths.claude/commands/help.mdTest plan
template/path in code🤖 Generated with Claude Code