Canvas: Fix worker registration request schema

Make commit information optional and nullable

Change-Id: I181a7ac53f6b1618c11443b168af27e356922ace
diff --git a/apps/canvas/back/src/index.ts b/apps/canvas/back/src/index.ts
index f14cfd1..cd18249 100644
--- a/apps/canvas/back/src/index.ts
+++ b/apps/canvas/back/src/index.ts
@@ -796,6 +796,7 @@
 		const projectId = Number(req.params["projectId"]);
 		const result = WorkerSchema.safeParse(req.body);
 		if (!result.success) {
+			console.log(JSON.stringify(result.error));
 			resp.status(400);
 			resp.write(
 				JSON.stringify({
diff --git a/apps/canvas/back/src/project_monitor.ts b/apps/canvas/back/src/project_monitor.ts
index 4b234a5..df20e05 100644
--- a/apps/canvas/back/src/project_monitor.ts
+++ b/apps/canvas/back/src/project_monitor.ts
@@ -22,12 +22,14 @@
 	address: z.string().url(),
 	status: z.optional(
 		z.object({
-			commit: z.optional(
-				z.object({
-					hash: z.string(),
-					message: z.string(),
-				}),
-			),
+			commit: z
+				.optional(
+					z.object({
+						hash: z.string(),
+						message: z.string(),
+					}),
+				)
+				.nullable(),
 			commands: z.optional(
 				z.array(
 					z.object({
diff --git a/apps/canvas/config/src/graph.ts b/apps/canvas/config/src/graph.ts
index 94708b4..604bcc4 100644
--- a/apps/canvas/config/src/graph.ts
+++ b/apps/canvas/config/src/graph.ts
@@ -286,20 +286,21 @@
 	workers: z.array(
 		z.object({
 			id: z.string(),
-			commit: z.optional(
-				z.object({
+			commit: z
+				.object({
 					hash: z.string(),
 					message: z.string(),
-				}),
-			),
-			commands: z.optional(
-				z.array(
+				})
+				.nullable()
+				.optional(),
+			commands: z
+				.array(
 					z.object({
 						command: z.string(),
 						state: z.string(),
 					}),
-				),
-			),
+				)
+				.optional(),
 		}),
 	),
 });