Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions assets/design-export/MANIFEST.md
Original file line number Diff line number Diff line change
Expand Up @@ -2797,3 +2797,16 @@ Source: `web/src/routes/tabs/settings/Resources.tsx` and the Configure step of `

- +163 (Rows 08–23): `a7o9C`, `akr4I`, `b4eaUf`, `Bbnga`, `BguST`, `Burtr`, `dBILX`, `dPP50`, `e9FnC`, `eGbsg`, `EZFW0`, `f1Vga`, `FtdkI`, `GayoL`, `hLB9Z`, `hlwx3`, `Hy9r0`, `IzuY2`, `j88bl0`, `KhYNc`, `kPmoo`, `lhKzN`, `m5kOm4`, `O08uaD`, `o4LH8W`, `OC804`, `oMuyw`, `P08Uw`, `pssCT`, `QFEg9`, `QQtUD`, `Ss0Yr`, `sSISK`, `SUtGZ`, `swxkJ`, `sZtDi`, `TE2jI`, `tY6RD`, `U9xSg`, `uCA23`, `UMJli`, `V1VhGE`, `VctzT`, `w1QYmf`, `wxINm`, `X405l`, `x7MJI`, `Xn5ns`, `xvlB6`, `YN8cE`, `ZU1BG`
- +263 (Rows 24–57): `aMU7O`, `Be7ZW`, `Bq2Yg`, `bYDHC`, `C2LQE4`, `C9bR6`, `Cb3eC`, `cDiNb`, `D9QYZ`, `DBQyF`, `dhPtX`, `Dpb9f`, `DPrYX`, `dQV9N`, `dxdEi`, `DxKOh`, `e9lV4`, `EcoGD`, `EKJyM`, `epZO2`, `EWrn0`, `fbBqA`, `FBiMN`, `fK8Bi`, `FOVMf`, `g5mEpx`, `gWqMD`, `hmPL7`, `HVhmb`, `i1bLR`, `i8wib`, `IdbiB`, `iLm38`, `IMSD5`, `IyMFM`, `iYUWc`, `J5pjJ3`, `j9W8A`, `jXykV`, `K5XinZ`, `KaRFX`, `kK8Ji`, `l64bd`, `l7TRz9`, `lCTci`, `lWvcv`, `M2sA4u`, `n2qdi`, `n6Xlo`, `Ne5TA`, `nGJE1`, `NKiqf`, `nNGDX`, `O5kaV`, `oPF1n`, `p8QSPq`, `pnAbF`, `q31B6w`, `qFLfB`, `QgW58`, `QpEvu`, `r0heh`, `r139UP`, `RC3Kf`, `RodrS`, `RpHBg`, `RS0KZ`, `SUcad`, `T1wkiT`, `TBvTC`, `tr6cE`, `tSOeI`, `tTSdi`, `ugDSa`, `uMiwd`, `uoxQW`, `Uzzje`, `VfB0Y`, `Wj0V4`, `WrmU5`, `WZdnw`, `xCJlu`, `XR0f9`, `y3YcQ`, `Y5cmvI`, `yrxK2`, `Z0oyh`, `ZlLf0`, `zM0VF`, `zqzr4`

## Incremental export 2026-10-31 — Wake on connect switch in server settings Lifecycle

| Node | Name | Change |
| --- | --- | --- |
| `i1bLR` | Screen/Server Detail — Settings · Lifecycle | Re-exported (1440×1620, unchanged size; at y 46130 after the Row 26 move recorded for PR #815). New `Dz78Y` "Wake On Connect Section" in the Idle auto-sleep controls, between the wake windows and the caveat rows: an 11px "Wake on connect" label, a `Gameplane/Switch/Off` (`rh2QH`) instance with "Wake the server when a player connects", and the helper "While the server sleeps, a small pod holds its ports and wakes it when a player tries to join. Costs one extra pod per sleeping server. Games that only use UDP wake on the first attempt; the player joins on retry." |
| `A8vGwM` | Screen/Server Detail — Settings · Lifecycle (Wake on connect unavailable) | New copy of `i1bLR` to its right. The switch is dimmed (opacity 0.5), its label muted, and the helper reads "Not available for this game: its template marks every port as unable to wake the server." It shows a template whose advertised ports all set `wakeProtocol: none`, the case the operator's `wakeOnConnectEligible` never arms. |

Merging master after PR #815 conflicted on `design.pen`. The file was taken from master and this change was re-applied with Pencil, which gave the new nodes new ids: the section was `R8V6LP` and the variant `paiCe` on the branch before the merge, so `json/paiCe.json` and `screenshots/paiCe.png` were replaced by the `A8vGwM` files.

The operator has supported `spec.idle.wakeOnConnect` since v0.2.0-beta.8, but the dashboard had no control for it. No reusable component changed and Row 26 keeps its height, so no other node moved. `check-layout.js`: `NO ISSUES`. `pen-componentize` `audit.js`: nothing new on the two frames; the repeated "Field Auto-restart" and probe "row1" structures it lists predate this change.

**Exports:** JSON from `Get(id, {depth: 80, includePathGeometry: true})`, pretty-printed (zero `"..."` elisions, `python3 -m json.tool` passes). PNG from `Export(ids, "png", …, {scale: 2})`: both 2880×3240. Headless `pen interactive` session (pen.dev CLI 0.3.14), with the lucide icon font served from the `lucide-static@0.563.0` npm tarball because unpkg.com is blocked in that sandbox. Body-text checks: `"Wake the server when a player connects"` only in `i1bLR.json` and `A8vGwM.json`; `"unable to wake the server"` only in `A8vGwM.json`.
1,487 changes: 1,487 additions & 0 deletions assets/design-export/json/A8vGwM.json

Large diffs are not rendered by default.

62 changes: 62 additions & 0 deletions assets/design-export/json/i1bLR.json
Original file line number Diff line number Diff line change
Expand Up @@ -1305,6 +1305,68 @@
}
]
},
{
"type": "frame",
"id": "Dz78Y",
"name": "Wake On Connect Section",
"width": "fill_container",
"layout": "vertical",
"gap": 8,
"children": [
{
"type": "text",
"id": "y0KW6",
"name": "Label",
"fill": "$muted",
"content": "Wake on connect",
"fontFamily": "$typography/font-sans",
"fontSize": 11,
"fontWeight": "normal"
},
{
"type": "frame",
"id": "hSTTa",
"name": "Wake On Connect Row",
"width": "fill_container",
"height": 28,
"gap": 12,
"alignItems": "center",
"children": [
{
"id": "V5vz6",
"type": "ref",
"ref": "rh2QH",
"name": "Switch",
"width": 36,
"height": 20
},
{
"type": "text",
"id": "B19SxE",
"name": "Switch Label",
"fill": "$foreground/foreground",
"content": "Wake the server when a player connects",
"fontFamily": "$typography/font-sans",
"fontSize": 13,
"fontWeight": "normal"
}
]
},
{
"type": "text",
"id": "ItxAU",
"name": "Helper",
"fill": "$muted",
"textGrowth": "fixed-width",
"width": "fill_container",
"content": "While the server sleeps, a small pod holds its ports and wakes it when a player tries to join. Costs one extra pod per sleeping server. Games that only use UDP wake on the first attempt; the player joins on retry.",
"lineHeight": 1.4,
"fontFamily": "$typography/font-sans",
"fontSize": 11,
"fontWeight": "normal"
}
]
},
{
"type": "frame",
"id": "C5gXq",
Expand Down
Binary file added assets/design-export/screenshots/A8vGwM.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified assets/design-export/screenshots/i1bLR.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading