Rename UI: superuser Key row and rename dialog for flows and dashboards (live plan with rewritten documents, counts, refusals and warnings, typed confirmation, what the drain waits for and calling it off); applyRename and the socket's renamed remap the live store and refetch at unchanged URLs, editors whose document moved reload so neither undo nor a queued save restores old bindings, a reconnect checks again and its snapshot replaces values; a retry toast for the rename's 503s, autosaves send themselves again; dashboard saves are based on their own versions only; Playwright rename spec, liveStore check, editor and dashboard docs

This commit is contained in:
2026-11-02 22:58:41 +01:00
parent ba4aae390d
commit 3ae5255617
20 changed files with 1313 additions and 38 deletions
+8
View File
@@ -262,6 +262,14 @@ showing the dashboard all use it. A dashboard from before ids were introduced
kept its key as its id, while one created now gets an opaque id such as
`d_k3q7m2xa`. The tab shows the title.
A superuser renames the key with the pencil on the **Key** row, after typing
the current key to confirm. Only the name changes: the id, links, the panels
showing the dashboard and its widgets' bindings stay. Scripts and API calls
that name the dashboard by its old key have to be updated. Other editors open
on it reload with the new key. Renaming a flow's key rewrites the bindings of
every dashboard that reads it, see
[Renaming the key](flow-editor.md#renaming-the-key).
### Look and theme
**Fluksio** is the default look. **Material** uses flat tonal cards; **Glass**
+31
View File
@@ -126,6 +126,37 @@ canvas show the title, or the key when there is no title.
For live inputs, **Publish this value now** sends the starting value immediately.
Changing a stored starting value alone does not replace an existing message.
### Renaming the key
A superuser renames a flow's key with the pencil on the **Key** row. Type the
new key and the dialog shows what the rename would change before anything
does: the flows and dashboards it rewrites, how much history, live state and
queued work moves, and anything that refuses it, such as a key already taken,
a queued or running run, or a flow declared in code (rename that one in its
repository and sync it). Type the current key to confirm.
Everything named under the key moves to the new one. Messages `old.x` become
`new.x` in every flow and dashboard bound to them, published and draft, along
with their history, live values, queued work and alert channels. The id, the
editor's address, hook URLs and device credentials stay as they were.
What lives outside Fluksio keeps the old name and has to be updated by hand:
calls to `/messages/old.x`, your own scripts, CLI, SDK and MCP calls that pass
the key, and bindings written by hand. A batch flow's `old_results` dashboard
keeps its name.
The whole engine pauses during a flow rename. It first waits for the work
running at that moment to finish, as long as that takes, and the dialog lists
what it is waiting for. Until the rename starts changing things you can call it
off, and nothing changes. Meanwhile pages keep reading, but changes anywhere
are turned away with a note to try again in a few seconds. Autosaves retry by
themselves.
Open editors, panels and lists follow the rename at the address they already
have. An editor whose flow or dashboard was rewritten reloads with the renamed
version, so neither undo nor a save still on its way can bring the old names
back. Edits it had not saved yet are dropped, and it says so.
## Inspecting an edge
Click an edge to see its latest payload, timestamp and recent numeric history.