tools/swift-oracle builds the unchanged Swift runtime (pinned 3b5ded0) in Docker and replays JSON scenarios; the TypeScript engine must produce the same trace events, results and end state. Five scenarios, 884 events, identical. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
196 lines
4.9 KiB
JSON
196 lines
4.9 KiB
JSON
{
|
|
"seed": 3,
|
|
"speedPercent": 50,
|
|
"nodes": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000301",
|
|
"kind": "pc",
|
|
"ports": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000311",
|
|
"label": "eth0"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000302",
|
|
"kind": "router",
|
|
"ports": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000321",
|
|
"label": "rt1"
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000322",
|
|
"label": "rt2"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000303",
|
|
"kind": "router",
|
|
"ports": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000331",
|
|
"label": "rt1"
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000332",
|
|
"label": "rt2"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000304",
|
|
"kind": "pc",
|
|
"ports": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000314",
|
|
"label": "eth0"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000305",
|
|
"kind": "pc",
|
|
"ports": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-000000000315",
|
|
"label": "eth0"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"links": [
|
|
{
|
|
"id": "00000000-0000-0000-0000-00000000F006",
|
|
"sourceNode": "00000000-0000-0000-0000-000000000301",
|
|
"sourcePort": "00000000-0000-0000-0000-000000000311",
|
|
"targetNode": "00000000-0000-0000-0000-000000000302",
|
|
"targetPort": "00000000-0000-0000-0000-000000000321"
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-00000000F007",
|
|
"sourceNode": "00000000-0000-0000-0000-000000000302",
|
|
"sourcePort": "00000000-0000-0000-0000-000000000322",
|
|
"targetNode": "00000000-0000-0000-0000-000000000303",
|
|
"targetPort": "00000000-0000-0000-0000-000000000331"
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-00000000F008",
|
|
"sourceNode": "00000000-0000-0000-0000-000000000303",
|
|
"sourcePort": "00000000-0000-0000-0000-000000000332",
|
|
"targetNode": "00000000-0000-0000-0000-000000000304",
|
|
"targetPort": "00000000-0000-0000-0000-000000000314"
|
|
},
|
|
{
|
|
"id": "00000000-0000-0000-0000-00000000F009",
|
|
"sourceNode": "00000000-0000-0000-0000-000000000305",
|
|
"sourcePort": "00000000-0000-0000-0000-000000000315",
|
|
"targetNode": "00000000-0000-0000-0000-000000000303",
|
|
"targetPort": "00000000-0000-0000-0000-000000000332"
|
|
}
|
|
],
|
|
"devices": {
|
|
"00000000-0000-0000-0000-000000000301": {
|
|
"ip": "192.168.1.10",
|
|
"mask": "255.255.255.0",
|
|
"gateway": "192.168.1.1"
|
|
},
|
|
"00000000-0000-0000-0000-000000000302": {
|
|
"ip": "192.168.1.1",
|
|
"mask": "255.255.255.0"
|
|
},
|
|
"00000000-0000-0000-0000-000000000303": {
|
|
"ip": "10.10.10.2",
|
|
"mask": "255.255.255.0",
|
|
"gateway": "10.10.10.1"
|
|
},
|
|
"00000000-0000-0000-0000-000000000304": {
|
|
"ip": "172.16.0.10",
|
|
"mask": "255.255.0.0",
|
|
"gateway": "172.16.0.1"
|
|
},
|
|
"00000000-0000-0000-0000-000000000305": {
|
|
"ip": "172.16.0.20",
|
|
"mask": "255.255.0.0"
|
|
}
|
|
},
|
|
"interfaces": [
|
|
{
|
|
"node": "00000000-0000-0000-0000-000000000302",
|
|
"port": "00000000-0000-0000-0000-000000000321",
|
|
"ip": "192.168.1.1",
|
|
"mask": "255.255.255.0"
|
|
},
|
|
{
|
|
"node": "00000000-0000-0000-0000-000000000302",
|
|
"port": "00000000-0000-0000-0000-000000000322",
|
|
"ip": "10.10.10.1",
|
|
"mask": "255.255.255.252"
|
|
},
|
|
{
|
|
"node": "00000000-0000-0000-0000-000000000303",
|
|
"port": "00000000-0000-0000-0000-000000000331",
|
|
"ip": "10.10.10.2",
|
|
"mask": "255.255.255.252"
|
|
},
|
|
{
|
|
"node": "00000000-0000-0000-0000-000000000303",
|
|
"port": "00000000-0000-0000-0000-000000000332",
|
|
"ip": "172.16.0.1",
|
|
"mask": "255.255.0.0"
|
|
}
|
|
],
|
|
"routes": {
|
|
"00000000-0000-0000-0000-000000000302": [
|
|
{
|
|
"destination": "172.16.0.0",
|
|
"mask": "255.255.0.0",
|
|
"gateway": "10.10.10.2",
|
|
"interface": "10.10.10.1"
|
|
}
|
|
]
|
|
},
|
|
"steps": [
|
|
{
|
|
"op": "ping",
|
|
"from": "00000000-0000-0000-0000-000000000301",
|
|
"target": "172.16.0.10",
|
|
"identifier": 20,
|
|
"sequence": 1
|
|
},
|
|
{
|
|
"op": "traceroute",
|
|
"from": "00000000-0000-0000-0000-000000000301",
|
|
"target": "172.16.0.10",
|
|
"identifier": 21
|
|
},
|
|
{
|
|
"op": "ping",
|
|
"from": "00000000-0000-0000-0000-000000000305",
|
|
"target": "192.168.1.10",
|
|
"identifier": 22,
|
|
"sequence": 1
|
|
},
|
|
{
|
|
"op": "speed",
|
|
"percent": 100
|
|
},
|
|
{
|
|
"op": "ping",
|
|
"from": "00000000-0000-0000-0000-000000000301",
|
|
"target": "172.16.0.10",
|
|
"identifier": 23,
|
|
"sequence": 1
|
|
},
|
|
{
|
|
"op": "ping",
|
|
"from": "00000000-0000-0000-0000-000000000301",
|
|
"target": "10.10.10.2",
|
|
"identifier": 24,
|
|
"sequence": 1
|
|
}
|
|
]
|
|
}
|