ofiere-openclaw-plugin 4.9.0 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/tools.ts +19 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ofiere-openclaw-plugin",
3
- "version": "4.9.0",
3
+ "version": "4.11.0",
4
4
  "type": "module",
5
5
  "description": "OpenClaw plugin for Ofiere PM - 10 meta-tools with 13-action workflow mastery covering tasks, agents, projects, scheduling, knowledge, workflows, notifications, memory, prompts, and constellation agent architecture",
6
6
  "keywords": ["openclaw", "ofiere", "project-management", "agents", "plugin"],
package/src/tools.ts CHANGED
@@ -413,6 +413,11 @@ async function handleCreateTask(
413
413
  if (params.system_prompt) cf.system_prompt = params.system_prompt;
414
414
  if (params.instructions) cf.instructions = params.instructions;
415
415
 
416
+ // Ensure assignees array is populated from agent_id for sidebar display
417
+ if (assignee && !cf.assignees) {
418
+ cf.assignees = [{ id: assignee, type: "agent" }];
419
+ }
420
+
416
421
  const insertData: Record<string, unknown> = {
417
422
  id,
418
423
  user_id: userId,
@@ -425,7 +430,7 @@ async function handleCreateTask(
425
430
  space_id: (params.space_id as string) || null,
426
431
  folder_id: (params.folder_id as string) || null,
427
432
  start_date: (params.start_date as string) || null,
428
- due_date: (params.due_date as string) || null,
433
+ due_date: (params.due_date as string) || (params.start_date as string) || null,
429
434
  tags: (params.tags as string[]) || [],
430
435
  progress: 0,
431
436
  sort_order: 0,
@@ -1093,6 +1098,19 @@ function registerScheduleOps(
1093
1098
  };
1094
1099
  const { error } = await supabase.from("scheduler_events").insert(insertData);
1095
1100
  if (error) return err(error.message);
1101
+
1102
+ // ── Backfill: sync dates to linked task ──────────────────────
1103
+ if (params.task_id) {
1104
+ try {
1105
+ const isoDate = `${params.scheduled_date}T${(params.scheduled_time as string) || "09:00"}:00Z`;
1106
+ await supabase.from("tasks").update({
1107
+ start_date: isoDate,
1108
+ due_date: isoDate,
1109
+ updated_at: new Date().toISOString(),
1110
+ }).eq("id", params.task_id as string).eq("user_id", userId);
1111
+ } catch { /* non-fatal: scheduler event was already created */ }
1112
+ }
1113
+
1096
1114
  return ok({ message: `Event "${params.title}" scheduled for ${params.scheduled_date}`, id: evtId });
1097
1115
  }
1098
1116
  case "update": {