Repository navigation
i18n: name the three reconnect states the card could not tell apart - #4241
Merged
Merged
Conversation
The portal's reconnect card has one detail line and four states behind it (`show`, `retrying`, `failed`, `rejected`). The catalog only had a sentence for the last of them — `error.serverUpdated` — so a card that wanted to say what had actually happened had nothing to say it with, and the portal told every state the `rejected` story. Three keys, en + de: * `error.reconnectInterrupted` — the connection dropped and is being restored. Deliberately says nothing about WHY: at this point nothing is known, and a card that guesses is what MeshWeaver.Plugins#1808 is about. * `error.reconnectRetrying` — a retry is in flight. * `error.reconnectFailed` — the retries are exhausted and the page reloads. `error.serverUpdated` stays exactly as it is and keeps its one honest home, `rejected` (the server does not know this circuit — what a deploy leaves behind). Nothing consumes the new keys in this repo; the portal card that does is MeshWeaver.Plugins#1808, and it lands after this. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No unresolved review issues were identified.
Pull request overview
Adds English and German localization keys for three Blazor reconnect states.
Changes:
- Added three English reconnect messages.
- Added matching German translations.
- Preserved
error.serverUpdated.
File summaries
| File | Description |
|---|---|
src/MeshWeaver.Messaging.Hub/Localization/strings.en.json |
Adds English reconnect-state translations. |
src/MeshWeaver.Messaging.Hub/Localization/strings.de.json |
Adds corresponding German translations. |
Review details
- Files reviewed: 2/2 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Contributor
Contributor
Contributor
Contributor
Contributor
Contributor
Contributor
This was referenced Sep 14, 2026
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.
What this is
Three localization keys, English and German, for the portal's Blazor reconnect card. Nothing in
this repository consumes them; the card that does is
Systemorph/MeshWeaver.Plugins#1808, and itlands after this so that no viewer ever sees a raw key.
Why
The card has ONE detail line and Blazor puts it up in FOUR states —
components-reconnect-show(attempting),
-retrying(retry in flight),-failed(retries exhausted) and-rejected(theserver does not know this circuit, which is what a deploy leaves behind). The catalog held a
sentence for the last of those only,
error.serverUpdated, so the portal told every one of the fourthe
rejectedstory.That is not a cosmetic problem. MeshWeaver.Education's install e2e captured the card in its failure
snapshot (run 34746374529):
The server had not been updated — the same snapshot names the running set and the deploy time, the
container reported
RestartCount=0 ExitCode=0 OOMKilled=false, and the portal log shows oneuninterrupted process from
08:21:01. A reader handed "the server was updated" in the evidence hasto disprove it before they can start.
The keys
error.reconnectInterruptederror.reconnectRetryingerror.reconnectFailedThe first says nothing about WHY, on purpose: at that point nothing is known, and a card that
guesses is the defect being fixed.
error.serverUpdatedis untouched and keeps its one honest home,rejected.Verification
dotnet build src/MeshWeaver.Messaging.Hub -c Release -warnaserror→0 Warning(s) 0 Error(s).MeshWeaver.Messaging.Hub.Test→Passed! Failed: 0, Passed: 58— which includesLocalizationTest,the completeness check that fails when a shipped language misses an English key.
Mirror-sync:
npm run sync:i18n -- --ref <this PR's merged core sha>is owed onMeshWeaver.Plugins/clients/react/src/i18n/and is carried by Systemorph/MeshWeaver.Plugins#1808,the PR that consumes these keys — it moves
catalog-source.jsonin the same change set. Three addedkeys, zero value changes to existing ones, so the mirror's value-drift guard is not red today and
this is debt being tracked, not a break.
🤖 Generated with Claude Code