Fresh history cut from cynarAI/evoo antigravity-handoff/project-timeline (Voice First + project timeline). Brand docs/titles as evOo; keep @rakazo/* packages as tech debt. Excludes node_modules, caches, secrets, voice blobs.
44 lines
1.0 KiB
TypeScript
44 lines
1.0 KiB
TypeScript
import * as z from "zod";
|
|
|
|
export const Id = z.string().min(1);
|
|
export const IsoDate = z.string().datetime({ offset: true });
|
|
|
|
export const ActorSchema = z.object({
|
|
userId: Id,
|
|
spaceId: Id,
|
|
email: z.string().email(),
|
|
isDeploymentOwner: z.boolean(),
|
|
});
|
|
export type Actor = z.infer<typeof ActorSchema>;
|
|
|
|
export const BOT_COLORS = [
|
|
"#3EC5A8",
|
|
"#F5A03C",
|
|
"#6A6BF5",
|
|
"#9B5CF6",
|
|
"#3B82F6",
|
|
"#F2622A",
|
|
"#D9508A",
|
|
] as const;
|
|
|
|
export const RunStatus = z.enum([
|
|
"queued",
|
|
"leased",
|
|
"running",
|
|
"waiting_input",
|
|
"waiting_takeover",
|
|
"completed",
|
|
"failed",
|
|
"cancelled",
|
|
]);
|
|
export type RunStatus = z.infer<typeof RunStatus>;
|
|
|
|
export const EffectStatus = z.enum(["intended", "completed", "failed", "ambiguous", "reconciled"]);
|
|
export type EffectStatus = z.infer<typeof EffectStatus>;
|
|
|
|
export const MemoryScope = z.enum(["bot", "user"]);
|
|
export type MemoryScope = z.infer<typeof MemoryScope>;
|
|
|
|
export const SandboxKind = z.enum(["docker", "e2b", "daytona", "box", "desktop", "fake", "none"]);
|
|
export type SandboxKind = z.infer<typeof SandboxKind>;
|