topology-json-author
Author and validate DSDS TopologyJSON from architecture descriptions, diagrams, or UI node and edge exports. Use when converting designs into simulator-ready JSON, selecting valid component types, fil
Files3
View on GitHubSKILL.mdskills/topology-json-author/SKILL.md
GitHubTopology Json Author
Overview
Convert architecture intent into valid, deterministic TopologyJSON that the DSDS simulation engine can run. Produce complete topology objects, explicit assumptions, and clear validation notes before simulation starts.
Workflow
- Collect inputs
- Read the architecture description, existing topology JSON, or canvas export.
- Identify explicit constraints: latency goals, availability/SLOs, providers, workload shape, and failure hypotheses.
- Capture unknowns in an assumptions list instead of leaving fields implicit.
- Build the skeleton first
- Create
id,name,version,global,nodes,edges,workload,faults,invariants, andscenarios. - Set deterministic controls immediately:
global.seed,global.simulationDuration, andglobal.warmupDuration.
- Materialize nodes and edges
- Map every component to a valid
typefrom the DSDS taxonomy. - Populate node queueing and processing basics:
queue.workers,queue.capacity,processing.distribution, andprocessing.timeout. - Populate edge transport basics:
mode,protocol,latency.distribution,bandwidth, andpacketLossRate.
- Add workload, faults, and invariants
- Choose a workload pattern that matches traffic behavior (
constant,poisson,spike,diurnal,bursty,sawtooth,replay). - Add high-signal fault specs first; expand only if needed.
- Encode invariants tied to the user's goals (availability, latency, consistency, security).
- Validate before returning
- Enforce structural and semantic checks from
references/topology-json-rules.md. - Return the final JSON plus assumptions and validation warnings.
Output format
Use this order unless the user asks otherwise:
TopologyJSONAssumptionsValidation notesFollow-up questions(only if blockers remain)
References
- Read
references/topology-json-rules.mdfor required fields, DSDS checks, and a minimal starter template. - Use these repo sources as ground truth:
planning/IMPLEMENTATION_PLAN.md(Phase 0 contract)schema/complete_simulator_schema.ts(type vocabulary)canonical-catalogue/*.csv(taxonomy, failures, invariants)