dashboard: drop matrix-accounts experimental notice; relabel list as provisioned

Per-account token-failure isolation is now live on the matrix daemon, so a
bad credential entered via this form can no longer take down the agent's
whole matrix session — remove the experimental notice (+ its now-unused CSS).

Also relabel the account list 'configured accounts' -> 'provisioned accounts'
to match the v1 read path (lists accounts with a stored token; a
config-declared-but-unprovisioned account appears once provisioned through
the form). Docs + module header updated to match.
This commit is contained in:
iris 2026-06-16 09:42:11 +02:00 committed by mara
commit 8bb3bd82a1
4 changed files with 8 additions and 26 deletions

View file

@ -227,9 +227,9 @@ password?, token?` → `2xx { ok, user_id }` on success or
the agent's `matrixAccounts.<account>.tokenFile` via the same
privileged write path as the hive-internal `matrix-token`; the token is
**never** echoed back, and the page clears the secret inputs on submit
regardless of outcome. Because a bad credential can currently disturb
the agent's whole matrix session until per-account failure isolation
lands on the daemon, the form carries an explicit experimental notice.
regardless of outcome. The account list reflects what is *provisioned*
(an account with a stored token), so a config-declared-but-unprovisioned
account appears only once it has been provisioned through the form.
## P3RM1SS10NS tab

View file

@ -9,17 +9,6 @@
padding: 1rem 1.25rem 3rem;
}
.ma-experimental {
border: 1px solid var(--amber);
background: color-mix(in srgb, var(--amber) 10%, transparent);
color: var(--fg);
padding: 0.6rem 0.85rem;
border-radius: 6px;
margin: 0.8rem 0 1.4rem;
font-size: 0.9rem;
line-height: 1.4;
}
.ma-field {
display: flex;
flex-direction: column;

View file

@ -22,18 +22,14 @@
<main class="ma-main">
<p class="meta">provision or log in an <strong>external</strong> matrix account for an agent and store its access token. the token is written to the agent's <code>matrixAccounts.&lt;account&gt;.tokenFile</code> by the host coordinator &mdash; it is never displayed back on this page.</p>
<div class="ma-experimental" role="note">
<strong>experimental.</strong> a wrong password or token entered here can currently disrupt the target agent's whole matrix session until per-account failure isolation lands on the daemon. use with care on a live agent.
</div>
<h3>◇ agent</h3>
<label class="ma-field">
<span>agent</span>
<select id="ma-agent"></select>
</label>
<h3>configured accounts</h3>
<p class="meta">status reflects whether a <em>token is stored</em>, not a live session &mdash; a true online/offline indicator is a follow-up that needs the daemon's account registry.</p>
<h3>provisioned accounts</h3>
<p class="meta">accounts that have a stored token (provision one below to add it here); a config-declared account that hasn't been provisioned yet won't appear until it has a token. status reflects whether a <em>token is stored</em>, not a live session &mdash; a true online/offline indicator is a follow-up that needs the daemon's account registry.</p>
<div id="ma-list" class="ma-list"><p class="meta">select an agent to see its matrix accounts.</p></div>
<h3>◇ provision / log in</h3>

View file

@ -17,12 +17,9 @@
//
// Live up/down (a true green/red dot) needs the daemon's account
// registry; until that follow-up lands the dot only reflects whether a
// token is STORED, labelled "token stored" rather than "online".
//
// Hard dependency: per-account failure isolation on the matrix daemon.
// Until that lands a bad credential entered here can crash the agent's
// whole matrix session, so the form carries an explicit experimental
// notice in the markup.
// token is STORED, labelled "token stored" rather than "online". The
// account list shows what is provisioned (has a stored token), so a
// config-declared-but-unprovisioned account appears only once provisioned.
import { $, el, esc, renderServerWarnings } from './common.js';