You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// Development (automatic — DevPlugin registers i18n stub for all 17 core services)
269
+
kernel.use(newDevPlugin());
270
+
```
271
+
272
+
#### Discovery & Handler Consistency
273
+
274
+
The Discovery API (`/api/v1` or `/.well-known/objectstack`) and the i18n route handler (`/api/v1/i18n/*`) both use the **same async resolution chain** to detect i18n availability:
This ensures that `discovery.services.i18n.status` always matches the actual runtime behavior — a service registered via any mechanism (sync Map, async factory, or context) will be reported correctly in both places.
281
+
282
+
The `locale` field in the discovery response is populated from the actual i18n service:
283
+
-`locale.default` — from `i18nService.getDefaultLocale()` (falls back to `'en'`)
284
+
-`locale.supported` — from `i18nService.getLocales()` (falls back to `[default]`)
285
+
286
+
#### AppPlugin Auto-Loading
287
+
288
+
When an app bundle includes an `i18n` config and `translations` array, `AppPlugin` automatically loads the translation data into the i18n service during the `start` phase:
0 commit comments