feat: tighten desktop presence loop and refine admin-web UX
Desktop Client Build / Resolve Build Metadata (push) Successful in 43s
Frontend CI / Frontend (push) Successful in 3m46s
Backend CI / Backend (push) Failing after 7m52s
Desktop Client Build / Build Desktop Client (push) Successful in 27m13s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 59s
Desktop Client Build / Resolve Build Metadata (push) Successful in 43s
Frontend CI / Frontend (push) Successful in 3m46s
Backend CI / Backend (push) Failing after 7m52s
Desktop Client Build / Build Desktop Client (push) Successful in 27m13s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 59s
- Shrink desktop presence TTL to 30s and heartbeat to 15s so unexpected client exits surface within one TTL even if the explicit offline call is missed; keep migration default aligned. - Trust a known presence miss in resolveDesktopClientOnline instead of falling back to the recent-heartbeat heuristic, so a still-cached LastSeenAt cannot mask an offline client. - Release the runtime session before clearing renderer desktop sessions on shutdown to avoid leaving stale leases behind. - Auto-refresh the MediaView account list every 5s and revamp card layout (inline platform badge, status tags, UID row, meta box). - Let the brand-question AI wizard accept multiple seed topics via a tag-style input; candidates from each topic are merged and deduped. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1061,8 +1061,8 @@ if (!hasSingleInstanceLock) {
|
||||
|
||||
void Promise.race([
|
||||
(async () => {
|
||||
await clearRendererDesktopSessions()
|
||||
await releaseRuntimeSession()
|
||||
await clearRendererDesktopSessions()
|
||||
})(),
|
||||
new Promise<void>((resolve) => setTimeout(resolve, 1500)),
|
||||
]).finally(() => {
|
||||
|
||||
Reference in New Issue
Block a user