CHANGELOG v0.251.0 + CONTEXT: R-553 and R-563 — decisions read a kind, not a word
gates / gates (push) Successful in 20s
gates / gates (push) Successful in 20s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -1,3 +1,40 @@
|
||||
## v0.251.0 — Nothing decides by reading a Hungarian word (2026-09-17, R-553 + R-563)
|
||||
|
||||
**MinAgent: 0.131.0** (unchanged). **No hub release needed.** Nothing a household reads changes: every
|
||||
Hungarian sentence is byte-identical, and the hub report is unchanged (pinned by a wire test).
|
||||
|
||||
Five places branched on their own customer-facing copy. Localisation slice 2 translates exactly those
|
||||
words, and each one would then have taken the other branch, silently. Each now reads a signal set where
|
||||
the message is made — `internal/util.KindErrorf` builds the same bytes `fmt.Errorf` did while carrying a
|
||||
sentinel for `errors.Is`.
|
||||
|
||||
| # | decision | read before | reads now |
|
||||
|---|---|---|---|
|
||||
| 1 | deploy HTTP status (`api.deployStatusFor`) | „kötelező", „memória", "does not exist", "already deployed" | `stacks.ErrRequiredField` / `ErrPathMissing` / `ErrNotEnoughMemory` (400), `ErrAlreadyDeployed` (409) |
|
||||
| 2 | off-site failure class (`ClassifyOffsiteFailure`) | „tárhelykeretet" | `backup.ErrOffsiteQuota` |
|
||||
| 3 | where a disk warning is shown (`web/alerts.go`) | „meghajtó"/„adattároló" in the warning | `monitor.WarnKindStorageNotSeparate`, carried in `HealthReport.WarningKinds` |
|
||||
| 4 | the stale „nothing selected" note (`offboxWarningDisplay`) | „nincs mentésre jelölt alkalmazás" in the PERSISTED text | `settings.OffboxTarget.LastWarningKind` = `backup.OffboxWarnNoAppsSelected` |
|
||||
| 5 | the remote-backup poll (`backups_remote.html`) | the displayed word „Fut" | `data-status="running"` on the status element (R-563) |
|
||||
|
||||
- **The restic / ssh signatures in the classifier stay text matches on purpose** — that output is not
|
||||
ours and is never translated. Listed as external in REPORT.md.
|
||||
- **Site 4 legacy:** a box upgraded to 0.251.0 still carries the old persisted text with no kind until
|
||||
its next off-site run. The text test survives ONLY for `kind == ""`, with a removal row (R-570);
|
||||
**slice 2 must not translate that producer before R-570 closes.**
|
||||
- **Site 5 is the one rendered byte that changed:** the `data-status` attribute (plus the poll line).
|
||||
12 `backups_remote` fixtures re-captured; each differs from its predecessor by exactly those two
|
||||
things, the other 94 are byte-identical. „Fut…" is now `{{T "backups_remote.fut"}}` (en „Running…"),
|
||||
so the English page finally sees a running backup.
|
||||
- **The wire is untouched:** `internal/report/builder.go` copies Status/Issues/Warnings only;
|
||||
`TestR553_HubReportWarningsAreUnchangedOnTheWire` pins the field set and the bytes.
|
||||
- New in REUSE.md §1: „Error kinds — never branch on a customer-facing sentence".
|
||||
|
||||
**Red-proofs** (`felhom.eu/documentation/audits/r553-2026-09-17/redproofs.txt`): every site's pre-fix
|
||||
predicate restored and watched failing — deploy statuses fall to 500/400-for-anything, the translated
|
||||
quota error reads „ismeretlen okból", the translated disk warning jumps to the top banner, the stale
|
||||
note returns, and both languages lose the poll. The detector (`felhom.eu/scripts/i18n_inventory.py`)
|
||||
was re-run: template compares 1 → 0, and planted decoys prove it still convicts.
|
||||
|
||||
## v0.250.0 — Every dashboard page in English; the language switch shown to every household (2026-09-17, R-556 release C)
|
||||
|
||||
**MinAgent: 0.131.0** (unchanged). **No hub release needed.** **A Hungarian household sees one new thing:
|
||||
|
||||
Reference in New Issue
Block a user