release 2026.08.23.04
The web UI can be read in Portuguese. The shell and shared components are fully keyed, 581 keys across two complete catalogues, with the build failing on a missing one. Plus an endpoint for spawning an agent, and spawned agents becoming visible in both directions. No schema change and no dependency change. db:push should report nothing, and the plan says to stop and report it if it does not. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
# 2026.08.23.04
|
||||
|
||||
The web UI can be read in Portuguese. The shell and the shared components are fully keyed — 581 keys across
|
||||
two locales, with the build failing on a missing one — plus an endpoint for spawning an agent, and spawned
|
||||
agents becoming visible in both directions.
|
||||
|
||||
**No schema change.** Nothing under `src/databases/**/schema.ts` moved across
|
||||
`deploy/2026.08.23.03..HEAD`. `bun db:push` is still a step because it is cheap and it verifies the
|
||||
database agrees with the code, but it should report no changes.
|
||||
|
||||
**No dependency change.** `bun.lock` is untouched. **Do not run `bun install`.**
|
||||
|
||||
## What is in it
|
||||
|
||||
- **Localization, phases 0 through 2.** `src/apps/officer-web` and `src/workspaces/components` have no
|
||||
hardcoded user-facing strings left: 555 and 47 occurrences respectively, both now zero. `en-GB` and
|
||||
`pt-PT` are complete and in step at 581 keys.
|
||||
- **Every locale ships a complete catalogue.** There is no fallback between regional variants, so a
|
||||
Portuguese reader is never served Brazilian wording. What enforces that is a **key-parity test that fails
|
||||
the build** on a gap — verified by removing one key and watching it go red.
|
||||
- **The language picker offers only locales that exist.** It listed about twenty codes, eighteen of which
|
||||
silently rendered English. Stored bare codes widen on read (`en` → `en-GB`), with no database migration.
|
||||
- **Dates, numbers and plurals follow the account's locale**, not the browser's, through `useFormat()` and
|
||||
`Intl.PluralRules`. Roughly 23 call sites moved.
|
||||
- **`POST /api/sub-agents/spawn`** — an endpoint for starting an agent from a prompt, for callers that are
|
||||
not a chat and so cannot reach the harness's own tool. Budget-checked before spawning, and it refuses with
|
||||
a 429 naming the window rather than burning the last of one.
|
||||
- **Spawned agents are visible in both directions.** A commander's pane lists its children as links; opening
|
||||
one shows which commander started it, linking back.
|
||||
- **A dropped sidecar command says so.** `sendFire` did nothing when no sidecar was registered — no log, no
|
||||
error — so answering a question during a restart window vanished and the card spun forever.
|
||||
|
||||
## Every host
|
||||
|
||||
1. `git fetch origin --tags` then `git merge --ff-only deploy/2026.08.23.04`
|
||||
2. `bun db:push` — expect **no changes**. If it wants to alter something, stop and report it: that means
|
||||
this tree and that host's database disagree about something this release did not touch.
|
||||
3. `bun run plugins:update`
|
||||
4. `pm2 restart officer`
|
||||
|
||||
`officer` only. Step 3 restarts each plugin's own sidecar; that is the script's behaviour and belongs in the
|
||||
report.
|
||||
|
||||
**`macbookpro`:** append `/opt/homebrew/bin` to PATH for the `bun` commands, run `pm2` separately.
|
||||
|
||||
## What to check, this release
|
||||
|
||||
The visible change is the language picker in profile settings. It should offer exactly **English (UK)** and
|
||||
**Português (Portugal)** and nothing else. A host still offering twenty languages did not pick up the
|
||||
frontend bundle.
|
||||
|
||||
No direct SQL is needed and none is authorised.
|
||||
|
||||
## Hosts
|
||||
|
||||
- **`edge-pertento-bridge`** — skipped, per `docs/servers.md`. Name it and spend nothing on it.
|
||||
- **`production-pertento-bridge`** — deployed cleanly last release after being two behind. Nothing expected.
|
||||
|
||||
## `officer-dev` — skip it
|
||||
|
||||
The rollout runs from here. It is already at this commit and `officer` has been restarted on it.
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "officer",
|
||||
"version": "2026.08.23.03",
|
||||
"version": "2026.08.23.04",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"workspaces": [
|
||||
|
||||
Reference in New Issue
Block a user