source-command-i18n-check

Validates uz, ru, and en translation bundles for missing or orphan keys via a Flutter test.

Updated May 11, 2026
One-click install
npx skills add https://github.com/Turgunoff/mebellar_app --skill source-command-i18n-check-turgunoff
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: source-command-i18n-check
Source: https://github.com/Turgunoff/mebellar_app/tree/main/.agents/skills/source-command-i18n-check
Command: npx skills add https://github.com/Turgunoff/mebellar_app --skill source-command-i18n-check-turgunoff

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? In a Flutter app where the Uzbek (uz) bundle is the source of truth, missing keys in the Russian or English bundles cause raw translation paths to be shown to users. This Skill runs the i18n completeness audit on demand so you can catch and fix missing or orphan translation keys before committing. ## Core Features & Use Cases - On-demand completeness audit: Runs flutter test test/core/i18n/i18n_completeness_test.dart --reporter=compact to verify all three bundles are in sync. - Guided key repair: Maps each missing key to its namespace file (e.g. cart.empty → lib/core/i18n/translations/cart_translations.dart) and adds it to the matching *Ru / *En map. - Review flagging: Marks copy that needs human tone review with // TODO(i18n): review comments, and flags orphan keys in ru/en for cleanup. - Use Case: Before committing a translation change, run the audit, fix the reported missing keys in the correct direction (uz → ru/en), and re-run until the test passes. ## Quick Start Run the i18n completeness check on my Flutter project and fix any missing ru or en translation keys it reports.

Frequently Asked Questions about source-command-i18n-check

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I check Flutter translation files for missing keys?▼

Run the i18n completeness test with flutter test test/core/i18n/i18n_completeness_test.dart --reporter=compact. It compares the uz source bundle against ru and en and lists any missing or orphan keys in the assertion output.

How to fix missing translation keys in ru or en bundles?▼

Locate the namespace from the dotted key path, such as cart.empty mapping to cart_translations.dart, then add the key to the matching Ru or En map in that file. Re-run the test until it passes, and never modify uz to match the other bundles.

Why does my Flutter app show raw translation keys to users?▼

This happens when a key exists in the uz bundle but is missing from ru or en, so the tr() lookup falls back to echoing the raw path. Running the completeness audit identifies exactly which keys are missing so they can be added.

What are orphan translation keys and should I delete them?▼

Orphan keys exist in ru or en but not in the uz source bundle, making them dead translations. The audit flags them as ORPHAN entries; clean them up if obviously unused, otherwise just report them.

When should I mark a translation with TODO(i18n) review?▼

Add a // TODO(i18n): review comment when the copy needs human judgment on tone, such as marketing text, error wording, or legal strings. Short mechanical strings like Save can be translated directly without a review flag.