@shapeshift-labs/frontier-loom-ui 0.1.1 → 0.1.3
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/dist/client.js +296 -31
- package/dist/client.js.map +1 -1
- package/dist/public/styles.css +266 -12
- package/dist/server.d.ts +5 -2
- package/dist/server.js +2078 -94
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
package/dist/public/styles.css
CHANGED
|
@@ -559,10 +559,10 @@ tr.risk-review td:first-child { color: var(--review); }
|
|
|
559
559
|
padding: 10px;
|
|
560
560
|
}
|
|
561
561
|
.agent-work-layout {
|
|
562
|
-
gap:
|
|
562
|
+
gap: 10px;
|
|
563
563
|
padding: 8px;
|
|
564
|
-
overflow:
|
|
565
|
-
grid-template-rows: minmax(0, 1fr);
|
|
564
|
+
overflow: auto;
|
|
565
|
+
grid-template-rows: auto minmax(0, 1fr);
|
|
566
566
|
}
|
|
567
567
|
.goal-card {
|
|
568
568
|
min-width: 0;
|
|
@@ -1231,6 +1231,235 @@ tr.risk-review td:first-child { color: var(--review); }
|
|
|
1231
1231
|
margin-top: 4px;
|
|
1232
1232
|
color: var(--muted);
|
|
1233
1233
|
}
|
|
1234
|
+
.swarm-capacity-panel {
|
|
1235
|
+
min-width: 0;
|
|
1236
|
+
display: grid;
|
|
1237
|
+
gap: 8px;
|
|
1238
|
+
border: 1px solid var(--line);
|
|
1239
|
+
border-radius: 7px;
|
|
1240
|
+
background: #0d0f10;
|
|
1241
|
+
padding: 10px;
|
|
1242
|
+
}
|
|
1243
|
+
.swarm-capacity-summary {
|
|
1244
|
+
min-width: 0;
|
|
1245
|
+
display: grid;
|
|
1246
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
1247
|
+
gap: 8px;
|
|
1248
|
+
}
|
|
1249
|
+
.swarm-capacity-summary > div {
|
|
1250
|
+
min-width: 0;
|
|
1251
|
+
display: grid;
|
|
1252
|
+
gap: 2px;
|
|
1253
|
+
border: 1px solid var(--line);
|
|
1254
|
+
border-radius: 6px;
|
|
1255
|
+
background: #090a0b;
|
|
1256
|
+
padding: 8px;
|
|
1257
|
+
}
|
|
1258
|
+
.swarm-capacity-summary span,
|
|
1259
|
+
.swarm-capacity-summary small,
|
|
1260
|
+
.swarm-lane-main small,
|
|
1261
|
+
.swarm-lane-numbers span,
|
|
1262
|
+
.swarm-lane-agents span {
|
|
1263
|
+
min-width: 0;
|
|
1264
|
+
overflow: hidden;
|
|
1265
|
+
text-overflow: ellipsis;
|
|
1266
|
+
white-space: nowrap;
|
|
1267
|
+
color: var(--muted);
|
|
1268
|
+
}
|
|
1269
|
+
.swarm-capacity-summary span {
|
|
1270
|
+
font-size: 10px;
|
|
1271
|
+
font-weight: 700;
|
|
1272
|
+
text-transform: uppercase;
|
|
1273
|
+
}
|
|
1274
|
+
.swarm-capacity-summary b {
|
|
1275
|
+
min-width: 0;
|
|
1276
|
+
overflow: hidden;
|
|
1277
|
+
text-overflow: ellipsis;
|
|
1278
|
+
white-space: nowrap;
|
|
1279
|
+
color: var(--text);
|
|
1280
|
+
font-size: 18px;
|
|
1281
|
+
line-height: 1.1;
|
|
1282
|
+
}
|
|
1283
|
+
.swarm-capacity-summary small,
|
|
1284
|
+
.swarm-lane-main small,
|
|
1285
|
+
.swarm-lane-numbers span,
|
|
1286
|
+
.swarm-lane-agents span {
|
|
1287
|
+
font-size: 11px;
|
|
1288
|
+
}
|
|
1289
|
+
.swarm-lane-strip {
|
|
1290
|
+
min-width: 0;
|
|
1291
|
+
display: grid;
|
|
1292
|
+
gap: 6px;
|
|
1293
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
1294
|
+
}
|
|
1295
|
+
.swarm-lane-row {
|
|
1296
|
+
min-width: 0;
|
|
1297
|
+
display: grid;
|
|
1298
|
+
grid-template-columns: minmax(150px, 1.2fr) minmax(126px, .8fr) minmax(126px, .9fr);
|
|
1299
|
+
gap: 8px;
|
|
1300
|
+
align-items: center;
|
|
1301
|
+
border: 1px solid var(--line);
|
|
1302
|
+
border-radius: 6px;
|
|
1303
|
+
background: #090a0b;
|
|
1304
|
+
padding: 7px 8px;
|
|
1305
|
+
}
|
|
1306
|
+
.swarm-lane-main,
|
|
1307
|
+
.swarm-lane-numbers,
|
|
1308
|
+
.swarm-lane-agents {
|
|
1309
|
+
min-width: 0;
|
|
1310
|
+
display: grid;
|
|
1311
|
+
gap: 2px;
|
|
1312
|
+
}
|
|
1313
|
+
.swarm-lane-main b {
|
|
1314
|
+
min-width: 0;
|
|
1315
|
+
overflow: hidden;
|
|
1316
|
+
text-overflow: ellipsis;
|
|
1317
|
+
white-space: nowrap;
|
|
1318
|
+
color: var(--text);
|
|
1319
|
+
font-size: 13px;
|
|
1320
|
+
}
|
|
1321
|
+
.swarm-lane-agents {
|
|
1322
|
+
display: flex;
|
|
1323
|
+
flex-wrap: wrap;
|
|
1324
|
+
justify-content: flex-end;
|
|
1325
|
+
gap: 4px;
|
|
1326
|
+
}
|
|
1327
|
+
.swarm-lane-agents code {
|
|
1328
|
+
max-width: 100%;
|
|
1329
|
+
overflow: hidden;
|
|
1330
|
+
text-overflow: ellipsis;
|
|
1331
|
+
white-space: nowrap;
|
|
1332
|
+
border: 1px solid var(--line);
|
|
1333
|
+
border-radius: 999px;
|
|
1334
|
+
background: #0d0f10;
|
|
1335
|
+
color: var(--muted);
|
|
1336
|
+
padding: 2px 6px;
|
|
1337
|
+
font-size: 10px;
|
|
1338
|
+
}
|
|
1339
|
+
.swarm-lane-empty,
|
|
1340
|
+
.swarm-lane-more {
|
|
1341
|
+
margin: 0;
|
|
1342
|
+
color: var(--muted);
|
|
1343
|
+
font-size: 12px;
|
|
1344
|
+
}
|
|
1345
|
+
.lane-work-layout {
|
|
1346
|
+
min-width: 0;
|
|
1347
|
+
min-height: 0;
|
|
1348
|
+
max-height: 100%;
|
|
1349
|
+
display: grid;
|
|
1350
|
+
grid-template-rows: auto minmax(0, 1fr);
|
|
1351
|
+
gap: 10px;
|
|
1352
|
+
padding: 8px;
|
|
1353
|
+
overflow: auto;
|
|
1354
|
+
scrollbar-gutter: stable;
|
|
1355
|
+
}
|
|
1356
|
+
.lane-roster-panel {
|
|
1357
|
+
--lane-roster-columns: minmax(180px, 1.1fr) minmax(210px, 1.2fr) minmax(116px, .55fr) minmax(260px, 1.4fr);
|
|
1358
|
+
min-width: 0;
|
|
1359
|
+
min-height: 0;
|
|
1360
|
+
max-height: 100%;
|
|
1361
|
+
display: grid;
|
|
1362
|
+
grid-template-rows: auto minmax(0, 1fr);
|
|
1363
|
+
border: 1px solid var(--line);
|
|
1364
|
+
border-radius: 7px;
|
|
1365
|
+
background: #0d0f10;
|
|
1366
|
+
overflow: hidden;
|
|
1367
|
+
}
|
|
1368
|
+
.lane-roster-head,
|
|
1369
|
+
.lane-roster-row {
|
|
1370
|
+
min-width: 0;
|
|
1371
|
+
display: grid;
|
|
1372
|
+
grid-template-columns: var(--lane-roster-columns);
|
|
1373
|
+
gap: 10px;
|
|
1374
|
+
align-items: center;
|
|
1375
|
+
}
|
|
1376
|
+
.lane-roster-head {
|
|
1377
|
+
border-bottom: 1px solid var(--line);
|
|
1378
|
+
background: #101214;
|
|
1379
|
+
padding: 7px 10px;
|
|
1380
|
+
}
|
|
1381
|
+
.lane-roster-head span {
|
|
1382
|
+
min-width: 0;
|
|
1383
|
+
overflow: hidden;
|
|
1384
|
+
text-overflow: ellipsis;
|
|
1385
|
+
white-space: nowrap;
|
|
1386
|
+
color: var(--muted);
|
|
1387
|
+
font-size: 10px;
|
|
1388
|
+
font-weight: 700;
|
|
1389
|
+
letter-spacing: 0;
|
|
1390
|
+
text-transform: uppercase;
|
|
1391
|
+
}
|
|
1392
|
+
.lane-roster-list {
|
|
1393
|
+
min-width: 0;
|
|
1394
|
+
min-height: 0;
|
|
1395
|
+
display: grid;
|
|
1396
|
+
align-content: start;
|
|
1397
|
+
overflow: auto;
|
|
1398
|
+
overscroll-behavior: contain;
|
|
1399
|
+
scrollbar-gutter: stable;
|
|
1400
|
+
}
|
|
1401
|
+
.lane-roster-row {
|
|
1402
|
+
border-bottom: 1px solid var(--line);
|
|
1403
|
+
background: #0d0f10;
|
|
1404
|
+
padding: 7px 10px;
|
|
1405
|
+
}
|
|
1406
|
+
.lane-roster-row:last-child {
|
|
1407
|
+
border-bottom: 0;
|
|
1408
|
+
}
|
|
1409
|
+
.lane-roster-row:hover {
|
|
1410
|
+
background: #111315;
|
|
1411
|
+
}
|
|
1412
|
+
.lane-cell {
|
|
1413
|
+
min-width: 0;
|
|
1414
|
+
display: grid;
|
|
1415
|
+
gap: 2px;
|
|
1416
|
+
}
|
|
1417
|
+
.lane-cell b,
|
|
1418
|
+
.lane-cell small,
|
|
1419
|
+
.lane-cell span {
|
|
1420
|
+
min-width: 0;
|
|
1421
|
+
overflow: hidden;
|
|
1422
|
+
text-overflow: ellipsis;
|
|
1423
|
+
white-space: nowrap;
|
|
1424
|
+
}
|
|
1425
|
+
.lane-cell b {
|
|
1426
|
+
color: var(--text);
|
|
1427
|
+
font-size: 13px;
|
|
1428
|
+
line-height: 1.2;
|
|
1429
|
+
}
|
|
1430
|
+
.lane-cell small,
|
|
1431
|
+
.lane-cell span {
|
|
1432
|
+
color: var(--muted);
|
|
1433
|
+
font-size: 11px;
|
|
1434
|
+
line-height: 1.2;
|
|
1435
|
+
}
|
|
1436
|
+
.lane-cell-agents {
|
|
1437
|
+
display: flex;
|
|
1438
|
+
flex-wrap: wrap;
|
|
1439
|
+
justify-content: flex-start;
|
|
1440
|
+
gap: 5px;
|
|
1441
|
+
}
|
|
1442
|
+
.lane-cell-agents code {
|
|
1443
|
+
max-width: 100%;
|
|
1444
|
+
overflow: hidden;
|
|
1445
|
+
text-overflow: ellipsis;
|
|
1446
|
+
white-space: nowrap;
|
|
1447
|
+
border: 1px solid var(--line);
|
|
1448
|
+
border-radius: 999px;
|
|
1449
|
+
background: #090a0b;
|
|
1450
|
+
color: var(--muted);
|
|
1451
|
+
padding: 2px 6px;
|
|
1452
|
+
font-size: 11px;
|
|
1453
|
+
line-height: 1.2;
|
|
1454
|
+
}
|
|
1455
|
+
.lane-roster-empty {
|
|
1456
|
+
margin: 0;
|
|
1457
|
+
min-height: 96px;
|
|
1458
|
+
display: grid;
|
|
1459
|
+
align-items: center;
|
|
1460
|
+
color: var(--muted);
|
|
1461
|
+
padding: 18px 14px;
|
|
1462
|
+
}
|
|
1234
1463
|
.agent-roster-panel {
|
|
1235
1464
|
--agent-roster-columns: minmax(128px, .72fr) minmax(300px, 2.1fr) minmax(96px, .54fr) minmax(88px, .5fr) minmax(96px, .54fr) minmax(168px, .92fr);
|
|
1236
1465
|
min-width: 0;
|
|
@@ -3101,6 +3330,24 @@ tr.risk-review td:first-child { color: var(--review); }
|
|
|
3101
3330
|
max-height: clamp(190px, 34vh, 300px);
|
|
3102
3331
|
overflow: hidden;
|
|
3103
3332
|
}
|
|
3333
|
+
.swarm-capacity-summary,
|
|
3334
|
+
.swarm-lane-strip {
|
|
3335
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
3336
|
+
}
|
|
3337
|
+
.swarm-lane-row {
|
|
3338
|
+
grid-template-columns: minmax(0, 1fr) minmax(112px, auto);
|
|
3339
|
+
}
|
|
3340
|
+
.swarm-lane-agents {
|
|
3341
|
+
grid-column: 1 / -1;
|
|
3342
|
+
justify-content: flex-start;
|
|
3343
|
+
}
|
|
3344
|
+
.lane-roster-panel {
|
|
3345
|
+
--lane-roster-columns: minmax(160px, 1fr) minmax(180px, 1fr) minmax(98px, auto);
|
|
3346
|
+
}
|
|
3347
|
+
.lane-roster-head span:last-child,
|
|
3348
|
+
.lane-cell-agents {
|
|
3349
|
+
grid-column: 1 / -1;
|
|
3350
|
+
}
|
|
3104
3351
|
.overview-card-scroll {
|
|
3105
3352
|
min-height: 0;
|
|
3106
3353
|
flex: 1 1 auto;
|
|
@@ -3124,13 +3371,15 @@ tr.risk-review td:first-child { color: var(--review); }
|
|
|
3124
3371
|
.success-summary,
|
|
3125
3372
|
.work-kpis,
|
|
3126
3373
|
.work-cost-metrics,
|
|
3127
|
-
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
|
-
|
|
3131
|
-
|
|
3132
|
-
|
|
3133
|
-
|
|
3374
|
+
.performance-summary,
|
|
3375
|
+
.optimization-signal-grid,
|
|
3376
|
+
.optimization-behavior-grid,
|
|
3377
|
+
.efficiency-summary,
|
|
3378
|
+
.swarm-capacity-summary,
|
|
3379
|
+
.swarm-lane-strip,
|
|
3380
|
+
.epic-grid,
|
|
3381
|
+
.merge-flow,
|
|
3382
|
+
.chart-grid,
|
|
3134
3383
|
.stat-grid,
|
|
3135
3384
|
.bottleneck-list,
|
|
3136
3385
|
.contribution-summary,
|
|
@@ -3148,8 +3397,10 @@ tr.risk-review td:first-child { color: var(--review); }
|
|
|
3148
3397
|
.testing-split,
|
|
3149
3398
|
.history-branch,
|
|
3150
3399
|
.history-event,
|
|
3151
|
-
|
|
3152
|
-
|
|
3400
|
+
.testing-row,
|
|
3401
|
+
.lane-roster-row,
|
|
3402
|
+
.swarm-lane-row,
|
|
3403
|
+
.task-dialog-head,
|
|
3153
3404
|
.task-dialog-section.split,
|
|
3154
3405
|
.simple-row,
|
|
3155
3406
|
.optimization-behavior-row,
|
|
@@ -3176,6 +3427,9 @@ tr.risk-review td:first-child { color: var(--review); }
|
|
|
3176
3427
|
.agent-roster-head {
|
|
3177
3428
|
display: none;
|
|
3178
3429
|
}
|
|
3430
|
+
.lane-roster-head {
|
|
3431
|
+
display: none;
|
|
3432
|
+
}
|
|
3179
3433
|
.agent-worker-card {
|
|
3180
3434
|
grid-template-columns: 1fr;
|
|
3181
3435
|
gap: 7px;
|
package/dist/server.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import http from 'node:http';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export interface FrontierLoomUiServerOptions {
|
|
3
|
+
cwd?: string;
|
|
4
|
+
run?: string;
|
|
5
|
+
collection?: string;
|
|
6
|
+
continuation?: string;
|
|
4
7
|
host?: string;
|
|
5
8
|
port?: number;
|
|
6
9
|
staticDir?: string;
|