[#370] 🤖 - Localize branchsync notices for any repository locale - #370
Merged
Merged
Conversation
|
To preview the documentation for this pull request, visit the following URL:
|
vypbot
self-requested a review
September 14, 2026 16:34
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #370 +/- ##
===========================================
+ Coverage 90.94% 92.12% +1.18%
===========================================
Files 135 642 +507
Lines 6251 16463 +10212
Branches 1338 4240 +2902
===========================================
+ Hits 5685 15167 +9482
- Misses 172 523 +351
- Partials 394 773 +379
🚀 New features to boost your workflow:
|
Contributor
Bugbot: review incomplete
Incomplete coverage
|
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
Localizes branch synchronization notices through a typed, versioned message-catalog boundary. The observer resolves one complete catalog slice before publishing, supports bundled
en-USandes-EScopy, and falls back atomically to English for invalid or unavailable dynamic localization while preserving commands, refs, URLs, markers, and machine-readable state.🎯 Related Issues / Tickets
🧩 Scope of Changes
build/cli/index.jsandbuild/github_action/index.jsbundles.🛠️ Technical Details
en-USandes-EScatalogs are selected by exact locale or compatible base language.commit(s)copy for singular and plural counts.@mentions./copilot sync-branch, branch identities, comparison URLs, publication markers, and machine-readable state remain unchanged across locales.createSingleActionUseCaseCompositionRoot, keeping the runtime and dynamic localization cost boundary explicit.🔍 How to Test
pnpm installand build the project withcorepack pnpm@10.12.4 run build.corepack pnpm@10.12.4 run test:coverage.corepack pnpm@10.12.4 run typecheckandcorepack pnpm@10.12.4 run lint.corepack pnpm@10.12.4 run validate:agent-docs,corepack pnpm@10.12.4 run validate:docs-page,corepack pnpm@10.12.4 run validate:documentation,corepack pnpm@10.12.4 run validate:workflows,corepack pnpm@10.12.4 run validate:specifications, andgit diff --check.en-US,es-ES, a compatible locale such ases-MX, and an unsupported locale to confirm localized output, stable machine content, and atomic English fallback.🧪 Test Coverage
Coverage includes catalog completeness and locale selection, singular and plural rendering, dynamic catalog resolution, atomic fallback, observer publication ordering, context projection, and publication-boundary enforcement.
📸 Screenshots / Recordings (UI changes only)
Not applicable; this change updates generated GitHub comment content and automated documentation rather than an interactive UI.
🚀 Deployment Notes
Details: Existing locale configuration is reused. Bundled locales require no new configuration; dynamic localization uses the already configured language capability and remains bounded to one request for a non-bundled locale.
🔒 Security Considerations
Branch references are sanitized and bounded for Markdown presentation, while commands, URLs, markers, and machine state remain stable. Dynamic catalog output is validated as a complete slice before publication.
📈 Performance Impact
Bundled
en-USandes-EScatalogs avoid dynamic provider calls. A non-bundled locale performs at most one bounded catalog-resolution request per observer run, before publication.📝 Notes for Reviewers
Please verify the single-catalog-resolution boundary and the invariant that no branch-sync comment is written until the complete catalog slice has resolved. Also check that localized prose does not alter
/copilot sync-branch, branch references, comparison URLs, publication markers, or machine-readable state.✅ Checklist
📚 Additional Context
The specification catalog registers the new branch-sync catalog policy, resolved-catalog policy, observer use case, and their test evidence. Generated
build/cli/index.jsandbuild/github_action/index.jsare included and validated.