WinterCMS research

This commit is contained in:
Jakub Zych
2026-02-18 01:31:41 +01:00
parent bec00a8bd5
commit 29766aee93
40 changed files with 8529 additions and 0 deletions

View File

@@ -0,0 +1,247 @@
---
phase: 14-translation-polish-testing
plan: 02
type: execute
wave: 2
depends_on: [14-01]
files_modified:
- vue-queststream-app/i18n/locales/pl.json
autonomous: false
must_haves:
truths:
- "All Polish translations reviewed and corrected per user feedback"
- "Full application flow works in Polish (login → dashboard → quest completion)"
- "Polish pluralization displays correctly for 1, 2, 5, and 21 items"
- "No visible English strings when app is set to Polish"
- "Text layout intact (no overflow, truncation, or broken UI)"
artifacts:
- path: "vue-queststream-app/i18n/locales/pl.json"
provides: "Complete Polish translations"
min_lines: 1800
key_links:
- from: "vue-queststream-app/i18n/locales/pl.json"
to: "Vue components"
via: "$t() calls"
pattern: "\\$t\\("
---
<objective>
Apply translation corrections and verify complete bilingual experience through manual testing.
Purpose: Complete the Polish translation quality assurance by incorporating user feedback from the review file and executing a comprehensive manual walkthrough of all application pages in Polish.
Output:
- Updated pl.json with all user-requested corrections
- Verified working Polish experience across entire application
- No untranslated strings visible in Polish mode
</objective>
<execution_context>
@/home/golem/.claude/get-shit-done/workflows/execute-plan.md
@/home/golem/.claude/get-shit-done/templates/summary.md
</execution_context>
<context>
@.planning/PROJECT.md
@.planning/ROADMAP.md
@.planning/STATE.md
@.planning/phases/14-translation-polish-testing/14-CONTEXT.md
@.planning/phases/14-translation-polish-testing/14-01-SUMMARY.md
@.planning/phases/14-translation-polish-testing/14-TRANSLATION-REVIEW.md
</context>
<tasks>
<task type="checkpoint:human-verify">
<what-built>Translation review file with side-by-side EN|PL comparison of all 1858 strings</what-built>
<how-to-verify>
1. Open `.planning/phases/14-translation-polish-testing/14-TRANSLATION-REVIEW.md`
2. Review Polish translations, particularly:
- Consistency of tone (informal "ty" form throughout)
- Technical terms (quest = misja, challenge = wyzwanie, coins = monety)
- Pluralization forms (all 4 forms present for plural keys)
3. Edit the review file directly:
- Change incorrect Polish translations
- Mark corrections clearly
4. Reply with:
- "approved" if translations look good
- Or paste/describe specific corrections needed
</how-to-verify>
<resume-signal>Reply with "approved" or provide specific corrections</resume-signal>
</task>
<task type="auto">
<name>Task 1: Apply translation corrections to pl.json</name>
<files>
vue-queststream-app/i18n/locales/pl.json
</files>
<action>
Based on user feedback from the checkpoint:
1. If user marked specific corrections in the review file:
- Read the updated 14-TRANSLATION-REVIEW.md
- Identify all marked corrections
- Apply each correction to pl.json
- Maintain alphabetical key ordering
- Ensure valid JSON after edits
2. If user approved without corrections:
- No changes needed to pl.json
- Proceed to verification task
3. Run coverage script after changes:
```bash
cd vue-queststream-app && npx tsx scripts/i18n-coverage.ts
```
Verify no new issues introduced.
</action>
<verify>
Run `npx tsx scripts/i18n-coverage.ts` - should pass
JSON is valid: `cat vue-queststream-app/i18n/locales/pl.json | jq . > /dev/null`
</verify>
<done>
All user-requested corrections applied to pl.json
Coverage script passes
JSON valid and properly formatted
</done>
</task>
<task type="checkpoint:human-verify">
<what-built>Complete Polish translation of Vue QuestStream application</what-built>
<how-to-verify>
**Manual Testing Checklist - Run app with Polish language selected:**
### Auth Flow
1. Navigate to /login
- [ ] All labels, buttons, error messages in Polish
2. Navigate to /register
- [ ] Form labels, validation messages in Polish
3. Test password reset flow (if applicable)
### Parent Dashboard
4. Navigate to /parent
- [ ] Welcome message, stats, pending approvals in Polish
5. Navigate to /parent/children
- [ ] Child cards, add child button, empty state
6. Navigate to /parent/templates
- [ ] Template library, filters, action buttons
7. Open any modal (Add Child, Assign Quest, etc.)
- [ ] Modal titles, form labels, buttons in Polish
8. Navigate to /parent/settings (check all 7 tabs)
- [ ] All setting labels, descriptions, save buttons
9. Navigate to /parent/profile (check all 3 tabs)
- [ ] Account, notifications, authentication tabs
### Child Dashboard
10. Switch to child profile
11. Navigate to /child
- [ ] Hero greeting, stats, quest cards
12. Navigate to /child/quests
- [ ] Quest list, status badges, action buttons
13. Navigate to /child/shop
- [ ] Reward cards, purchase buttons, coin display
14. Navigate to /child/achievements
- [ ] Achievement badges, unlock dates, progress
15. Navigate to /child/challenges
- [ ] Challenge cards, progress indicators
### Visual Checks (Polish strings are longer)
16. [ ] Buttons don't overflow or truncate
17. [ ] Table headers fit without breaking layout
18. [ ] Modal titles fully visible
19. [ ] Navigation labels fit in header/footer
### Pluralization Spot Checks
20. Find displays with counts and verify:
- [ ] "1 misja" (one form)
- [ ] "2 misje" (few form)
- [ ] "5 misji" (many form)
- [ ] "21 misja" (one form - tricky!)
**Report:**
- List any visible English strings
- List any layout issues with Polish text
- List any incorrect translations noticed
</how-to-verify>
<resume-signal>Reply with "approved" or list issues found</resume-signal>
</task>
<task type="auto">
<name>Task 2: Fix any issues found during testing</name>
<files>
vue-queststream-app/i18n/locales/pl.json
</files>
<action>
Based on issues reported in the manual testing checkpoint:
1. If English strings found:
- Locate the component using that string
- Add the key to pl.json with proper translation
- Verify with grep that all usages are covered
2. If layout issues found:
- First try shorter Polish alternatives if available
- Apply minor CSS adjustments (padding, max-width, text-wrap) if needed to maintain layout
- Document any major layout refactoring needed for future (out of scope)
- Minor CSS tweaks for text display are acceptable in this translation phase
3. If pluralization issues found:
- Verify the plural key in pl.json has 4 forms (one|few|many|other)
- Check the pluralization rule is being applied correctly
4. If translation errors noticed:
- Apply corrections to pl.json
- Maintain consistency with other similar strings
5. Re-run verification:
```bash
cd vue-queststream-app && pnpm test
cd vue-queststream-app && npx tsx scripts/i18n-coverage.ts
```
</action>
<verify>
All reported issues addressed
Tests still pass
Coverage script reports no issues
</verify>
<done>
All reported issues fixed
Application works correctly in Polish
No visible English when Polish selected
</done>
</task>
</tasks>
<verification>
1. Coverage verification:
```bash
cd vue-queststream-app && npx tsx scripts/i18n-coverage.ts
```
Should report: 0 missing, 0 plural mismatches
2. Unit tests pass:
```bash
cd vue-queststream-app && pnpm test
```
3. Manual verification complete (from checkpoints):
- Full app flow works in Polish
- No English strings visible
- Pluralization correct
- Layout intact
</verification>
<success_criteria>
- User has reviewed and approved translations
- All corrections applied to pl.json
- Full application walkthrough in Polish successful
- No untranslated strings visible when language is Polish
- Polish pluralization works for 1, 2, 5, 21 item counts
- No text overflow or layout breaking due to Polish string length
</success_criteria>
<output>
After completion, create `.planning/phases/14-translation-polish-testing/14-02-SUMMARY.md`
</output>