MCPcopy Create free account
hub / github.com/cursor/plugins / parseTreeStateJson

Function parseTreeStateJson

orchestrate/skills/orchestrate/scripts/schemas.ts:590–612  ·  view source on GitHub ↗
(text: string, source: string)

Source from the content-addressed store, hash-verified

588}
589
590export function parseTreeStateJson(text: string, source: string): TreeState {
591 let value: unknown;
592 try {
593 value = JSON.parse(text);
594 } catch (err) {
595 const message = err instanceof Error ? err.message : String(err);
596 throw new PlanValidationError(`${source} is not valid JSON: ${message}`);
597 }
598 const state = parseUnknownWithSchema({
599 schema: TreeStateSchema,
600 value: normalizeLegacyStateValue(value),
601 source,
602 recoveryHint: `Fix rootSlug/tasks enough to traverse ${source}.`,
603 });
604 const rootSlug = taskNameSchema.safeParse(state.rootSlug);
605 return {
606 rootSlug: rootSlug.success ? rootSlug.data : null,
607 tasks: state.tasks.flatMap(task => {
608 const parsed = TreeTaskSchema.safeParse(task);
609 return parsed.success ? [parsed.data] : [];
610 }),
611 };
612}
613
614export function formatZodIssues(issues: z.ZodIssue[]): string {
615 return issues

Callers 3

crawlBranchFunction · 0.90
schemas.test.tsFile · 0.90

Calls 2

parseUnknownWithSchemaFunction · 0.85

Tested by

no test coverage detected