Decompose the reviewed architecture specs into taskgraph-managed tasks: - 2 setup tasks (project init, test infrastructure) - 4 schema tasks (enums, node attrs, edge attrs, graph schemas) - 1 error hierarchy task - 6 graph tasks (FlowGraph class, 3 construction paths, queries, validation) - 5 analysis tasks (type-compat, build-type-edges, ordering, template-validation, defaults) - 5 component tasks (Operation, Sequential, Parallel, Conditional, Map) - 2 host config tasks (GraphologyHostConfig, ReactiveHostConfig) - 4 reactive tasks (WorkflowRoot, node-status, max-concurrency, retry-semantics) - 3 review tasks (foundation, reactive-and-hosts, complete-library) - 5 meta cluster tasks (schema, graph, component, reactive, analysis layers) - 1 API exports task Validated with taskgraph: zero cycles, 38 tasks, 12 parallel generations. Critical path: 12 tasks through reactive execution layer.
1.6 KiB
1.6 KiB
id, name, status, depends_on, scope, risk, impact, level
| id | name | status | depends_on | scope | risk | impact | level | ||
|---|---|---|---|---|---|---|---|---|---|
| schema/graph-schemas | Define SerializedGraph factory and OperationGraphSerialized/CallGraphSerialized schemas | pending |
|
narrow | low | component | implementation |
Description
Define the generic SerializedGraph factory function that produces graphology native JSON format schemas, and the two specialized serialization types for operation graphs and call graphs.
Acceptance Criteria
src/schema/graph.tsexportsSerializedGraphfactory functionSerializedGraph<N, E, G>: generic factory producingType.Objectwithattributes(GraphAttrs),options({type: "directed", multi: false, allowSelfLoops: false}),nodes(Array of {key, attributes}),edges(Array of {key, source, target, attributes})OperationGraphSerialized:SerializedGraph(OperationNodeAttrs, OperationEdgeAttrs, Type.Object({}))— no graph-level attributesCallGraphSerialized:SerializedGraph(CallNodeAttrs, CallEdgeAttrs, Type.Object({}))— no graph-level attributesFlowGraphSerializedtype alias for the general case (used byfromJSON)- Edge key convention documented:
${source}->${target}for simple cases,${source}->${target}:${edgeType}for call graph depends_on edges src/schema/index.tsre-exports graph schemas- Unit tests:
Value.Check()against valid and invalid serialized graph data
References
- docs/architecture/schema.md — SerializedGraph factory, FlowGraphSerialized variants, edge key convention
Notes
To be filled by implementation agent
Summary
To be filled on completion