@sleep2agi/agent-network-dashboard 0.4.6-preview.282 → 0.4.6-preview.283
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +3 -3
- package/.next/diagnostics/route-bundle-stats.json +4 -4
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/admin.html +1 -1
- package/.next/server/app/admin.rsc +1 -1
- package/.next/server/app/admin.segments/_full.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_index.segment.rsc +1 -1
- package/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/admin.segments/admin/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/admin.segments/admin.segment.rsc +1 -1
- package/.next/server/app/index.html +2 -2
- package/.next/server/app/index.rsc +2 -2
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +2 -2
- package/.next/server/app/login.rsc +2 -2
- package/.next/server/app/login.segments/_full.segment.rsc +2 -2
- package/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/server/app/login.segments/_index.segment.rsc +1 -1
- package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/server/app/logs.html +1 -1
- package/.next/server/app/logs.rsc +1 -1
- package/.next/server/app/logs.segments/_full.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_index.segment.rsc +1 -1
- package/.next/server/app/logs.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/logs.segments/logs/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/logs.segments/logs.segment.rsc +1 -1
- package/.next/server/app/messages.html +1 -1
- package/.next/server/app/messages.rsc +1 -1
- package/.next/server/app/messages.segments/_full.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_index.segment.rsc +1 -1
- package/.next/server/app/messages.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/messages.segments/messages/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/messages.segments/messages.segment.rsc +1 -1
- package/.next/server/app/node.html +1 -1
- package/.next/server/app/node.rsc +1 -1
- package/.next/server/app/node.segments/_full.segment.rsc +1 -1
- package/.next/server/app/node.segments/_head.segment.rsc +1 -1
- package/.next/server/app/node.segments/_index.segment.rsc +1 -1
- package/.next/server/app/node.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/node.segments/node/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/node.segments/node.segment.rsc +1 -1
- package/.next/server/app/nodes.html +1 -1
- package/.next/server/app/nodes.rsc +1 -1
- package/.next/server/app/nodes.segments/_full.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_index.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/nodes/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/nodes.segments/nodes.segment.rsc +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/server-logs.html +1 -1
- package/.next/server/app/server-logs.rsc +1 -1
- package/.next/server/app/server-logs.segments/_full.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_index.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/server-logs/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/server-logs.segments/server-logs.segment.rsc +1 -1
- package/.next/server/app/settings/networks.html +1 -1
- package/.next/server/app/settings/networks.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_full.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/settings/networks/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/settings/networks.segment.rsc +1 -1
- package/.next/server/app/settings/networks.segments/settings.segment.rsc +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/tokens.html +1 -1
- package/.next/server/app/settings/tokens.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_full.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/settings/tokens/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/settings/tokens.segment.rsc +1 -1
- package/.next/server/app/settings/tokens.segments/settings.segment.rsc +1 -1
- package/.next/server/app/settings.html +2 -2
- package/.next/server/app/settings.rsc +2 -2
- package/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
- package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/.next/server/app/tasks.html +1 -1
- package/.next/server/app/tasks.rsc +1 -1
- package/.next/server/app/tasks.segments/_full.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_index.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/tasks.segments/tasks.segment.rsc +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js +3 -3
- package/.next/server/chunks/ssr/agent-network-dashboard_09kk21a._.js.map +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_01jhlxz._.js.map +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js +1 -1
- package/.next/server/chunks/ssr/agent-network-dashboard_app_09d29my._.js.map +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/static/chunks/{0my515m3gk_js.js → 0770ctmo-jd~3.js} +3 -3
- package/.next/static/chunks/{15v_s2m~-o.q-.js → 12ih-cxmgr09g.js} +1 -1
- package/.next/static/chunks/{0.17023t0q5iy.js → 13ku0uxsx2o6i.js} +1 -1
- package/.next/trace +2 -2
- package/.next/trace-build +1 -1
- package/app/components/TopoGraph.tsx +22 -2
- package/package.json +1 -1
- package/scripts/topo-orbit-particles-retired-test.mjs +91 -0
- package/scripts/topo-orbit-busyness-test.mjs +0 -96
- package/scripts/topo-orbit-opacity-bucket-test.mjs +0 -124
- /package/.next/static/{jm9NWDYTm3hLXINnznnDk → gPw1YGsDb6psvirUWKGfQ}/_buildManifest.js +0 -0
- /package/.next/static/{jm9NWDYTm3hLXINnznnDk → gPw1YGsDb6psvirUWKGfQ}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{jm9NWDYTm3hLXINnznnDk → gPw1YGsDb6psvirUWKGfQ}/_ssgManifest.js +0 -0
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/* Round 216 verification: outer-ring orbit particle opacity scales
|
|
2
|
-
* with busy bucket alongside R131's speed scaling. Idle fleet → dim
|
|
3
|
-
* particles; busy fleet → bright. transitions on opacity 300ms.
|
|
4
|
-
*
|
|
5
|
-
* Bucket map: workingCount 0 → busy 0; 1-2 → 1; 3-5 → 2; 6+ → 3
|
|
6
|
-
* opacity [0.5, 0.7, 0.85, 1.0]
|
|
7
|
-
*
|
|
8
|
-
* Test scenarios (cyber dark, orbit particles only render in dark):
|
|
9
|
-
* A. 0 working sessions (4 idle): busy=0, opacity≈0.5
|
|
10
|
-
* B. 2 working sessions (2 working+2 idle): busy=1, opacity≈0.7
|
|
11
|
-
* C. 6 working sessions: busy=3, opacity≈1.0
|
|
12
|
-
* Every orbit particle has style.transition: 'opacity 300ms'
|
|
13
|
-
* Every orbit <g> exposes data-topo-orbit-opacity matching the
|
|
14
|
-
* bucket value (test verifies derivation + DOM agreement).
|
|
15
|
-
*/
|
|
16
|
-
import { chromium } from 'playwright';
|
|
17
|
-
import { readFileSync } from 'node:fs';
|
|
18
|
-
|
|
19
|
-
const TOKEN = JSON.parse(readFileSync('/home/vansin/.anet/config.json', 'utf8')).token;
|
|
20
|
-
const browser = await chromium.launch({ headless: true });
|
|
21
|
-
|
|
22
|
-
async function pageFor(workingN) {
|
|
23
|
-
const ctx = await browser.newContext({ viewport: { width: 1500, height: 1500 } });
|
|
24
|
-
await ctx.addCookies([{ name: 'anet_dashboard_session', value: `v3:${TOKEN}`, domain: '127.0.0.1', path: '/' }]);
|
|
25
|
-
await ctx.addInitScript(() => {
|
|
26
|
-
try { localStorage.setItem('anet-theme', 'cyber'); sessionStorage.setItem('anet_v3_auth', '1'); } catch {}
|
|
27
|
-
});
|
|
28
|
-
const fresh = new Date(Date.now() - 60 * 1000).toISOString();
|
|
29
|
-
const totalSessions = Math.max(workingN, 4);
|
|
30
|
-
await ctx.route('**/api/hub/status*', async (route) => {
|
|
31
|
-
const r = await route.fetch();
|
|
32
|
-
const b = await r.json();
|
|
33
|
-
const nid = (b.sessions || [])[0]?.network_id || 'default';
|
|
34
|
-
const mk = (alias, status) => ({
|
|
35
|
-
alias, status, model: 'claude-opus-4', runtime: 'claude-code-cli',
|
|
36
|
-
network_id: nid, project_dir: null,
|
|
37
|
-
created_at: fresh, updated_at: fresh, last_seen_at: fresh,
|
|
38
|
-
});
|
|
39
|
-
const sessions = [];
|
|
40
|
-
for (let i = 0; i < totalSessions; i++) {
|
|
41
|
-
sessions.push(mk(`node-${(i + 1).toString().padStart(2, '0')}`, i < workingN ? 'working' : 'idle'));
|
|
42
|
-
}
|
|
43
|
-
await route.fulfill({ response: r, json: { ...b, sessions } });
|
|
44
|
-
});
|
|
45
|
-
await ctx.route('**/api/hub/messages*', (r2) => r2.fulfill({ json: { messages: [] } }));
|
|
46
|
-
await ctx.route('**/api/hub/tasks*', (r2) => r2.fulfill({ json: { tasks: [] } }));
|
|
47
|
-
const page = await ctx.newPage();
|
|
48
|
-
await page.goto('http://127.0.0.1:3000/', { waitUntil: 'domcontentloaded' });
|
|
49
|
-
await page.waitForFunction((n) => document.querySelectorAll('g[data-node]').length === n, totalSessions, { timeout: 30000 });
|
|
50
|
-
await page.waitForSelector('[data-topo-orbit-bucket]', { timeout: 10000, state: 'attached' });
|
|
51
|
-
await page.waitForTimeout(300);
|
|
52
|
-
return page;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
const probe = async (page) => page.evaluate(() => {
|
|
56
|
-
return [...document.querySelectorAll('[data-topo-orbit-bucket]')].map(el => {
|
|
57
|
-
const inner = el.querySelector('circle');
|
|
58
|
-
return {
|
|
59
|
-
bucket: el.getAttribute('data-topo-orbit-bucket'),
|
|
60
|
-
bucketOpacity: el.getAttribute('data-topo-orbit-opacity'),
|
|
61
|
-
dur: el.getAttribute('data-topo-orbit-dur'),
|
|
62
|
-
circleOpacity: parseFloat(inner?.getAttribute('opacity') || ''),
|
|
63
|
-
transition: inner?.style.transition,
|
|
64
|
-
};
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
// Scenario A: 0 working → busy=0, opacity=0.5
|
|
69
|
-
const pageA = await pageFor(0);
|
|
70
|
-
const probeA = await probe(pageA);
|
|
71
|
-
await pageA.close();
|
|
72
|
-
|
|
73
|
-
// Scenario B: 2 working → busy=1, opacity=0.7
|
|
74
|
-
const pageB = await pageFor(2);
|
|
75
|
-
const probeB = await probe(pageB);
|
|
76
|
-
await pageB.close();
|
|
77
|
-
|
|
78
|
-
// Scenario C: 6 working → busy=3, opacity=1.0
|
|
79
|
-
const pageC = await pageFor(6);
|
|
80
|
-
const probeC = await probe(pageC);
|
|
81
|
-
await pageC.close();
|
|
82
|
-
await browser.close();
|
|
83
|
-
|
|
84
|
-
const near = (got, want, tol = 0.05) => Math.abs(got - want) < tol;
|
|
85
|
-
const hasOpacityT = (s) => /opacity\s+(?:300ms|0\.3s)/.test(s || '');
|
|
86
|
-
|
|
87
|
-
const results = {
|
|
88
|
-
// 4 orbit particles in each scenario (R50 phase array of 4)
|
|
89
|
-
A_four_particles: probeA.length === 4,
|
|
90
|
-
B_four_particles: probeB.length === 4,
|
|
91
|
-
C_four_particles: probeC.length === 4,
|
|
92
|
-
|
|
93
|
-
// Scenario A — idle fleet (busy=0)
|
|
94
|
-
A_bucket_0: probeA.every(p => p.bucket === '0'),
|
|
95
|
-
A_opacity_half: probeA.every(p => near(p.circleOpacity, 0.5)),
|
|
96
|
-
A_data_attr_matches: probeA.every(p => parseFloat(p.bucketOpacity) === p.circleOpacity),
|
|
97
|
-
|
|
98
|
-
// Scenario B — light load (busy=1)
|
|
99
|
-
B_bucket_1: probeB.every(p => p.bucket === '1'),
|
|
100
|
-
B_opacity_0p7: probeB.every(p => near(p.circleOpacity, 0.7)),
|
|
101
|
-
|
|
102
|
-
// Scenario C — heavy load (busy=3)
|
|
103
|
-
C_bucket_3: probeC.every(p => p.bucket === '3'),
|
|
104
|
-
C_opacity_full: probeC.every(p => near(p.circleOpacity, 1.0)),
|
|
105
|
-
|
|
106
|
-
// Brightness actually grew across buckets
|
|
107
|
-
brightness_grew: probeA[0].circleOpacity < probeB[0].circleOpacity
|
|
108
|
-
&& probeB[0].circleOpacity < probeC[0].circleOpacity,
|
|
109
|
-
|
|
110
|
-
// Transitions present in every particle of every scenario
|
|
111
|
-
A_all_have_transition: probeA.every(p => hasOpacityT(p.transition)),
|
|
112
|
-
B_all_have_transition: probeB.every(p => hasOpacityT(p.transition)),
|
|
113
|
-
C_all_have_transition: probeC.every(p => hasOpacityT(p.transition)),
|
|
114
|
-
|
|
115
|
-
// R131's existing speed scaling still derives — dur shortens as
|
|
116
|
-
// bucket grows
|
|
117
|
-
speed_scales: parseFloat(probeA[0].dur || '0') > parseFloat(probeC[0].dur || '99'),
|
|
118
|
-
};
|
|
119
|
-
const ok = Object.values(results).every(Boolean);
|
|
120
|
-
console.log(`${ok ? '✅' : '❌'} orbit opacity bucket:`, JSON.stringify(results),
|
|
121
|
-
`\n probeA (0 working):`, probeA.slice(0, 1),
|
|
122
|
-
`\n probeB (2 working):`, probeB.slice(0, 1),
|
|
123
|
-
`\n probeC (6 working):`, probeC.slice(0, 1));
|
|
124
|
-
process.exit(ok ? 0 : 1);
|
|
File without changes
|
/package/.next/static/{jm9NWDYTm3hLXINnznnDk → gPw1YGsDb6psvirUWKGfQ}/_clientMiddlewareManifest.js
RENAMED
|
File without changes
|
|
File without changes
|