From fe8fb15f8f6fda5f1550e5c2d7aa09f3fab2d7a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?m=C3=BCde?= Date: Sat, 16 May 2026 03:54:02 +0200 Subject: [PATCH] =?UTF-8?q?Revert=20"dashboard:=203-column=20layout=20?= =?UTF-8?q?=E2=80=94=20swarm=20/=200per4t0r=201n=20/=20m3ss4g3s"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 74ba8a63e113dec5a199f86cdeffbf26e44ba11d. --- hive-c0re/assets/app.js | 17 +++++ hive-c0re/assets/dashboard.css | 43 +------------ hive-c0re/assets/index.html | 112 ++++++++++++--------------------- 3 files changed, 60 insertions(+), 112 deletions(-) diff --git a/hive-c0re/assets/app.js b/hive-c0re/assets/app.js index 293f087..7b075c0 100644 --- a/hive-c0re/assets/app.js +++ b/hive-c0re/assets/app.js @@ -606,6 +606,23 @@ const root = $('approvals-section'); root.innerHTML = ''; + // Spawn request form: submitting it queues a Spawn approval that + // lands in this same list, so the form belongs here rather than on + // the containers list (the agent doesn't exist yet). + const spawn = el('form', { + method: 'POST', action: '/request-spawn', + class: 'spawnform', 'data-async': '', + }); + spawn.append( + el('input', { + name: 'name', + placeholder: 'new agent name (≤9 chars)', + maxlength: '9', required: '', autocomplete: 'off', + }), + el('button', { type: 'submit', class: 'btn btn-spawn' }, '◆ R3QU3ST SP4WN'), + ); + root.append(spawn); + const history = s.approval_history || []; const active = localStorage.getItem(APPROVAL_TAB_KEY) || 'pending'; const tabs = el('div', { class: 'approval-tabs' }); diff --git a/hive-c0re/assets/dashboard.css b/hive-c0re/assets/dashboard.css index bbbe441..27269eb 100644 --- a/hive-c0re/assets/dashboard.css +++ b/hive-c0re/assets/dashboard.css @@ -18,50 +18,11 @@ body { background: var(--bg); color: var(--fg); font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", "Source Code Pro", monospace; - max-width: 110em; + max-width: 70em; margin: 1.5em auto; padding: 0 1.5em; line-height: 1.6; } -.columns { - display: grid; - gap: 1.4em; - margin-top: 1em; -} -@media (min-width: 1400px) { - .columns { - grid-template-columns: 1.1fr 1fr 1fr; - align-items: start; - } -} -.dash-col { - min-width: 0; /* lets grid children shrink instead of overflowing */ -} -.col-head { - position: sticky; - top: 0; - z-index: 5; - background: rgba(30, 30, 46, 0.92); - -webkit-backdrop-filter: blur(6px); - backdrop-filter: blur(6px); - margin: 0 0 0.6em; - padding: 0.3em 0.5em; - font-size: 1em; - border-bottom: 1px solid var(--purple-dim); -} -.sub-head { - color: var(--cyan); - font-size: 0.85em; - letter-spacing: 0.12em; - text-transform: uppercase; - margin: 1.6em 0 0.4em; - padding-bottom: 0.15em; - border-bottom: 1px dashed var(--border, var(--purple-dim)); - text-shadow: 0 0 6px rgba(137, 220, 235, 0.35); -} -.dash-col .sub-head:first-of-type { - margin-top: 0.4em; -} .banner { text-align: center; margin: 0 0 1em 0; @@ -91,7 +52,7 @@ h1, h2 { color: var(--purple); text-transform: uppercase; letter-spacing: 0.15em; - margin-top: 1em; + margin-top: 2em; text-shadow: 0 0 8px rgba(203, 166, 247, 0.4); } .divider { diff --git a/hive-c0re/assets/index.html b/hive-c0re/assets/index.html index d154610..1439943 100644 --- a/hive-c0re/assets/index.html +++ b/hive-c0re/assets/index.html @@ -17,83 +17,53 @@ -
- -
-

◆ SW4RM ◆

+

◆ C0NTAINERS ◆

+
══════════════════════════════════════════════════════════════
+
+

loading…

+
-

containers

-
-

loading…

-
+

◆ K3PT ST4T3 ◆

+
══════════════════════════════════════════════════════════════
+
+

loading…

+
-

kept state

-
-

loading…

-
+

◆ M1ND H4S QU3STI0NS ◆

+
══════════════════════════════════════════════════════════════
+
+

loading…

+
-

spawn agent

-
- - -
+

◆ 0PER4T0R 1NB0X ◆

+
══════════════════════════════════════════════════════════════
+
+

loading…

+
-

update meta inputs

-

checkbox per input; submitting runs nix flake update in /meta/ and rebuilds affected agents (sequentially).

-
-

loading…

-
-
+

◆ P3NDING APPR0VALS ◆

+
══════════════════════════════════════════════════════════════
+
+

loading…

+
- -
-

◆ 0PER4T0R 1N ◆

+

◆ M3T4 1NPUTS ◆

+
══════════════════════════════════════════════════════════════
+

select inputs to nix flake update in /meta/. selected agents rebuild in sequence after the lock bump; manager learns each outcome via the usual rebuilt system event.

+
+

loading…

+
-

m1nd has questions

-
-

loading…

-
- -

pending approvals

-
-

loading…

-
-
- - -
-

◆ M3SS4G3S ◆

- -

operator inbox

-
-

loading…

-
- -

message flow

-

live tail — newest at the top; each row is one broker event. compose below: @name picks the recipient (sticky until you @ someone else); tab completes.

-
connecting…
-
- @—> - - -
-
+

◆ MESS4GE FL0W ◆

+
══════════════════════════════════════════════════════════════
+

live tail — newest at the top. tap on every send / recv through the broker. compose below: @name picks the recipient (sticky until you @ someone else); tab completes.

+
connecting…
+
+ @—> + +