diff --git a/opal-web/src/lib/components/TaskDetail.svelte b/opal-web/src/lib/components/TaskDetail.svelte
index d8dd6d4..986817f 100644
--- a/opal-web/src/lib/components/TaskDetail.svelte
+++ b/opal-web/src/lib/components/TaskDetail.svelte
@@ -402,6 +402,12 @@
{/if}
+ {:else}
+
+
startEdit('scheduled')}>
+ Scheduled
+ Set...
+
{/if}
@@ -425,6 +431,12 @@
{/if}
+ {:else}
+
+ startEdit('wait')}>
+ Wait
+ Set...
+
{/if}
@@ -448,6 +460,12 @@
{/if}
+ {:else}
+
+ startEdit('until')}>
+ Until
+ Set...
+
{/if}
diff --git a/opal-web/src/routes/+page.svelte b/opal-web/src/routes/+page.svelte
index 1bbb41e..ec20157 100644
--- a/opal-web/src/routes/+page.svelte
+++ b/opal-web/src/routes/+page.svelte
@@ -37,6 +37,11 @@
// Subscribe to store
const unsubscribe = tasksStore.subscribe(value => {
tasks = value;
+ // Keep selectedTask in sync with store changes
+ if (selectedTask) {
+ const updated = value.find(t => t.uuid === selectedTask.uuid);
+ if (updated) selectedTask = updated;
+ }
});
onMount(() => {
@@ -197,10 +202,6 @@
async function handleUpdate(uuid, updates) {
try {
await tasksStore.updateTask(uuid, updates);
- // Keep selectedTask fresh
- if (selectedTask?.uuid === uuid) {
- selectedTask = { ...selectedTask, ...updates };
- }
} catch (error) {
console.error('Failed to update task:', error);
}