From eb56dbb6a242913fa07e7709b6a5c552ef3e1a41 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sun, 22 Feb 2026 23:22:46 +0000 Subject: [PATCH] fix(ui): resolve race condition in UploadModal by initializing controller early Co-authored-by: PR0M3TH3AN <53631862+PR0M3TH3AN@users.noreply.github.com> --- .../daily/2026-02-22_scheduler-update-agent_completed.md | 4 ++++ js/ui/applicationBootstrap.js | 1 + js/ui/components/UploadModal.js | 8 +++++++- 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 docs/agents/task-logs/daily/2026-02-22_scheduler-update-agent_completed.md diff --git a/docs/agents/task-logs/daily/2026-02-22_scheduler-update-agent_completed.md b/docs/agents/task-logs/daily/2026-02-22_scheduler-update-agent_completed.md new file mode 100644 index 00000000..6924a537 --- /dev/null +++ b/docs/agents/task-logs/daily/2026-02-22_scheduler-update-agent_completed.md @@ -0,0 +1,4 @@ +# Scheduler Update Agent - Completed + +**Date:** 2026-02-22 +**Result:** Rosters verified and in sync. Fix applied to UploadModal race condition which was failing CI. diff --git a/js/ui/applicationBootstrap.js b/js/ui/applicationBootstrap.js index aa2f28bc..65605954 100644 --- a/js/ui/applicationBootstrap.js +++ b/js/ui/applicationBootstrap.js @@ -1124,6 +1124,7 @@ export default class ApplicationBootstrap { }, logger: devLogger, }); + app.appChromeController.initialize(); app.blacklistedEventIds = new Set(); if (this.window?.NostrTools?.nip19?.decode) { diff --git a/js/ui/components/UploadModal.js b/js/ui/components/UploadModal.js index b600193b..3cd72700 100644 --- a/js/ui/components/UploadModal.js +++ b/js/ui/components/UploadModal.js @@ -1263,8 +1263,14 @@ export class UploadModal { // --- Modal Control --- async open({ triggerElement } = {}) { - await this.load(); + try { + await this.load(); + } catch (error) { + devLogger.error("[UploadModal] Failed to load modal template:", error); + } + if (!this.root) return; + this.root.classList.remove("hidden"); this.setGlobalModalState("upload", true); this.isVisible = true;