feat(skills): add syncing-dhis2-translations Claude Code skill#140
Draft
netroms wants to merge 1 commit into
Draft
feat(skills): add syncing-dhis2-translations Claude Code skill#140netroms wants to merge 1 commit into
netroms wants to merge 1 commit into
Conversation
Captures the workflow for fixing fake "English-as-translation" entries in i18n_global_*.properties: audit, safe deletion (preserves real translations), tx push to Transifex, handling stuck dhis2-bot sync PRs, and cross-branch backports. Includes audit + deletion Python scripts. The skill is intended for Claude Code users on the team. Installation instructions are in skills/README.md. Originated from the DHIS2-19912 cleanup; the same playbook applies to future translation regressions. AI Assisted Signed-off-by: Morten Svanaes <netroms@gmail.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
Adds a Claude Code skill that captures the workflow for fixing fake "English-as-translation" entries in
i18n_global_*.properties— the recurring bug where the English source text was saved as a "translation" in Russian, Spanish, etc., causing those users to see English in the UI.The skill grew out of the DHIS2-19912 cleanup. The same playbook applies to future regressions.
What's in the skill
SKILL.md— pipeline overview (Phil's 4-step process), the "fake translation" detection pattern, full cleanup workflow, tx CLI setup, the bot-PR signing situation and workaround, common mistakes table, stakeholders, links to deep-dive docsaudit-fake-translations.py— list keys where the target value byte-equals the English source (per language), with--keysor--regexfilteringdelete-fake-translations.py— safely remove fakes (never deletes real translations because it compares value-for-value to source); has--dry-runWhy a top-level
skills/directoryClaude Code skills are a specific format (YAML-frontmatter
SKILL.mdplus supporting scripts) distinct from regular markdown guides. A dedicated directory:/guides/~/.claude/skills/without bringing along the whole/guides/treeskills/README.mddocuments installation (symlink vs. copy) and contribution conventions (naming, descriptions).How to use after merge
Next Claude Code session will pick it up automatically. Ask Claude something like "investigate fake Russian translations in dhis2-core" and it'll invoke the skill.
Tested
The skill was iteratively RED/GREEN-tested with subagent baseline scenarios:
tx push -s,--dry-runpush, "mark unreviewed in Transifex UI", guessed Slack channel for translator notification, missed the bot-signing gotchatx push -t -fworkflow, knew to use the Transifex Announcements feature, and flagged the bot resync PR may need amendingTest plan
skills/syncing-dhis2-translations/SKILL.mdand confirms it matches their mental model of the workflowaudit-fake-translations.pyon a current branchAI Assisted