hive: remove the read-only schedules page and the old schedule store
Scheduled prompts live at swarm level (swarm-controller's /api/schedules, `swarmctl schedule`, the swarm UI's /schedules page). The hive dashboard's SCH3DUL3S tab only listed the rows left in hive-c0re's `scheduled_prompts` table so operators could copy them over; the operator confirmed everything is migrated. Removed: - the SCH3DUL3S tab, its pane, schedules.js, its CSS (including the `.rqe-source*` rules, whose only emitter was schedules.js) and the hub tile's "schedules" entry - hive-c0re's GET /api/schedules and the `scheduled_prompts` store (with its v1 column migration and test) - hive-sh4re's `schedule` wire types, which only that route used - docs describing the tab, the route and the two tables The rebuild-queue cancel route that shared the module moves to dashboard/rebuild_queue.rs under an OpenAPI tag of its own. The two sqlite tables are not dropped: nothing opens them any more, and persistence.md says they can be dropped by hand. Closes #4916
This commit is contained in:
parent
2f05e2db28
commit
78412b3d3b
22 changed files with 84 additions and 979 deletions
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
/* SYST3M panel rules (rebuild queue / meta inputs / container load)
|
||||
live in system-sections.css, shared with /core.html. A few are still
|
||||
referenced from dashboard JS (the schedules view uses `.rqe-source*`),
|
||||
so the dashboard pulls them in here. */
|
||||
referenced from the dashboard (`.rebuild-queue`), so the dashboard
|
||||
pulls them in here. */
|
||||
@import "./system-sections.css";
|
||||
@import "@hive/shared/jobq-rollup.css";
|
||||
|
||||
|
|
@ -709,113 +709,6 @@ footer .banner-thin {
|
|||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
/* ─── scheduled prompts tab ────────────────────────────────────────
|
||||
Read-only table of the schedules left in the hive's store. */
|
||||
|
||||
.schedules-table-wrap {
|
||||
overflow-x: auto;
|
||||
margin-top: 0.5em;
|
||||
}
|
||||
.schedules-table {
|
||||
min-width: 100%;
|
||||
border-collapse: collapse;
|
||||
font-size: 0.82em;
|
||||
}
|
||||
.schedules-table th,
|
||||
.schedules-table td {
|
||||
padding: 0.35em 0.6em;
|
||||
border: 1px solid var(--border);
|
||||
vertical-align: middle;
|
||||
}
|
||||
.schedules-table thead th {
|
||||
background: var(--bg-elev);
|
||||
color: var(--muted);
|
||||
font-weight: normal;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.05em;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.schedules-table-id {
|
||||
width: 3em;
|
||||
text-align: center;
|
||||
}
|
||||
.schedules-table-next-col {
|
||||
white-space: nowrap;
|
||||
}
|
||||
/* every column: sized to typical content (short durations). */
|
||||
.schedules-table-every-col {
|
||||
width: 5em;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.schedules-table-body-th {
|
||||
min-width: 12em;
|
||||
}
|
||||
/* Agent-name columns: 90° vertical text (writing-mode) so names are fully
|
||||
readable without truncation. Previously used a -45° CSS transform which
|
||||
clipped names mid-glyph. writing-mode + rotate(180deg) is in-flow and
|
||||
needs no absolute positioning or overflow hacks. */
|
||||
.schedules-table-agent-th {
|
||||
width: 28px;
|
||||
min-width: 28px;
|
||||
height: 8em;
|
||||
padding: 4px 2px !important;
|
||||
vertical-align: bottom;
|
||||
text-transform: none !important;
|
||||
letter-spacing: 0 !important;
|
||||
overflow: hidden;
|
||||
}
|
||||
.schedules-table-agent-th > div {
|
||||
font-family: ui-monospace, "JetBrains Mono", monospace;
|
||||
font-size: 0.85em;
|
||||
color: var(--fg);
|
||||
/* Rotate 90° bottom-to-top (conventional rotated column header). */
|
||||
writing-mode: vertical-rl;
|
||||
transform: rotate(180deg);
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
max-height: 7.5em;
|
||||
}
|
||||
.schedules-table-agent-th > div > span {
|
||||
display: inline-block;
|
||||
padding: 0 2px;
|
||||
}
|
||||
/* Column for an agent no longer in the live roster — its past schedules
|
||||
linger but the agent is gone. Greyed + struck through. */
|
||||
.schedules-table-agent-th--gone > div {
|
||||
color: var(--muted);
|
||||
text-decoration: line-through;
|
||||
opacity: 0.75;
|
||||
}
|
||||
.schedules-table-row-cancelled td {
|
||||
opacity: 0.55;
|
||||
}
|
||||
.schedules-table-row-paused td {
|
||||
opacity: 0.75;
|
||||
}
|
||||
.sched-paused-label {
|
||||
color: var(--yellow);
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.schedules-table-body-cell {
|
||||
max-width: 30em;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
font-family: ui-monospace, "JetBrains Mono", monospace;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.schedules-table-check {
|
||||
width: 28px;
|
||||
text-align: center;
|
||||
color: var(--green);
|
||||
padding: 0.3em 0 !important;
|
||||
}
|
||||
.schedules-table-check-cancelled {
|
||||
color: var(--muted);
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
/* Selection bar — sticky-bottom strip for bulk actions. */
|
||||
.selection-bar {
|
||||
position: fixed;
|
||||
|
|
|
|||
Loading…
Reference in a new issue