-
Notifications
You must be signed in to change notification settings - Fork 1.1k
docs(core): define the internationalization contract - #6048
Draft
nynexman4464 wants to merge 1 commit into
Draft
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
@meta-cla
meta-cla
Bot
added
the
CLA Signed
This label is managed by the Meta Open Source bot.
label
Sep 4, 2026
nynexman4464
force-pushed
the
nynexman4464/docs/i18n-contract
branch
from
September 4, 2026 20:25
b16fd6c to
8b4f2b9
Compare
Contributor
PR Analysis Report
No new or modified components detected. Bundle Size Summary
Accessibility AuditStatus: No accessibility violations detected. Generated by PR Enrichment workflow | View full report |
cixzhang
commented
Sep 5, 2026
Contributor
/approve-spec 8b4f2b9
cixzhang
cixzhang
approved these changes
Sep 5, 2026
@cixzhang
cixzhang
left a comment
Contributor
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for documenting the shared internationalization architecture and the provider-specific contract together. Approved at exact head 8b4f2b9853fae7dafb3bd4d72877301bfa489366.
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.
Problem
Astryx's released internationalization behavior is spread across RFC #3641, consumer docs, tests, and implementation. There is no current repository record that tells reviewers which runtime, fallback, ownership, locale, direction, and calendar boundaries are intentional.
That makes it easy to review a replacement API or locale-sensitive component change without the context that produced the shipped system.
Changes
architecture:internationalizationrecord for the cross-library contract.component:InternationalizationProvidercontract for provider-local behavior.The records preserve the released provider/hook model and the deliberate differences from RFC #3641: client context, deterministic English defaults, silent translation fallback, explicit provider-locale threading, DOM-owned layout direction, and Gregorian
PlainDatesemantics.Boundaries and open questions
Intlare not treated as first-class alternative-calendar support.This PR is intentionally draft. The records remain
authority: draftuntil their owners approve them.Test plan
pnpm check:knowledgenode scripts/check-changesets.mjspnpm exec vitest run --project node scripts/check-knowledge.test.mjs— 74 testspnpm exec vitest run --project ui packages/core/src/i18n/— 62 testsPlainDatecalendar pinning.