Files
mdg-filius/packages/core/test/scenarios/firewall-and-loss.scenario.json
julian.kiedaischandClaude Opus 5.5 5c16cf18b4 test(core): Swift oracle — the filius-ipad core built on Linux as the reference
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>
2026-09-29 19:33:14 +00:00

195 lines
4.8 KiB
JSON

{
"seed": 18,
"nodes": [
{
"id": "00000000-0000-0000-0000-000000000401",
"kind": "pc",
"ports": [
{
"id": "00000000-0000-0000-0000-000000000411",
"label": "eth0"
}
]
},
{
"id": "00000000-0000-0000-0000-000000000402",
"kind": "router",
"ports": [
{
"id": "00000000-0000-0000-0000-000000000421",
"label": "rt1"
},
{
"id": "00000000-0000-0000-0000-000000000422",
"label": "rt2"
}
]
},
{
"id": "00000000-0000-0000-0000-000000000403",
"kind": "pc",
"ports": [
{
"id": "00000000-0000-0000-0000-000000000413",
"label": "eth0"
}
]
},
{
"id": "00000000-0000-0000-0000-000000000404",
"kind": "pc",
"ports": [
{
"id": "00000000-0000-0000-0000-000000000414",
"label": "eth0"
}
]
},
{
"id": "00000000-0000-0000-0000-000000000405",
"kind": "networkSwitch",
"ports": [
{
"id": "00000000-0000-0000-0000-000000000451",
"label": "sw1"
},
{
"id": "00000000-0000-0000-0000-000000000452",
"label": "sw2"
},
{
"id": "00000000-0000-0000-0000-000000000453",
"label": "sw3"
}
]
}
],
"links": [
{
"id": "00000000-0000-0000-0000-00000000F00A",
"sourceNode": "00000000-0000-0000-0000-000000000401",
"sourcePort": "00000000-0000-0000-0000-000000000411",
"targetNode": "00000000-0000-0000-0000-000000000405",
"targetPort": "00000000-0000-0000-0000-000000000451"
},
{
"id": "00000000-0000-0000-0000-00000000F00B",
"sourceNode": "00000000-0000-0000-0000-000000000404",
"sourcePort": "00000000-0000-0000-0000-000000000414",
"targetNode": "00000000-0000-0000-0000-000000000405",
"targetPort": "00000000-0000-0000-0000-000000000452"
},
{
"id": "00000000-0000-0000-0000-00000000F00C",
"sourceNode": "00000000-0000-0000-0000-000000000405",
"sourcePort": "00000000-0000-0000-0000-000000000453",
"targetNode": "00000000-0000-0000-0000-000000000402",
"targetPort": "00000000-0000-0000-0000-000000000421"
},
{
"id": "00000000-0000-0000-0000-00000000F00D",
"sourceNode": "00000000-0000-0000-0000-000000000402",
"sourcePort": "00000000-0000-0000-0000-000000000422",
"targetNode": "00000000-0000-0000-0000-000000000403",
"targetPort": "00000000-0000-0000-0000-000000000413"
}
],
"devices": {
"00000000-0000-0000-0000-000000000401": {
"ip": "10.1.0.2",
"mask": "255.255.255.0",
"gateway": "10.1.0.1"
},
"00000000-0000-0000-0000-000000000402": {
"ip": "10.1.0.1",
"mask": "255.255.255.0"
},
"00000000-0000-0000-0000-000000000403": {
"ip": "10.2.0.2",
"mask": "255.255.255.0",
"gateway": "10.2.0.1"
},
"00000000-0000-0000-0000-000000000404": {
"ip": "10.1.0.3",
"mask": "255.255.255.0",
"gateway": "10.1.0.1"
}
},
"interfaces": [
{
"node": "00000000-0000-0000-0000-000000000402",
"port": "00000000-0000-0000-0000-000000000421",
"ip": "10.1.0.1",
"mask": "255.255.255.0"
},
{
"node": "00000000-0000-0000-0000-000000000402",
"port": "00000000-0000-0000-0000-000000000422",
"ip": "10.2.0.1",
"mask": "255.255.255.0"
}
],
"firewalls": {
"00000000-0000-0000-0000-000000000402": {
"active": true,
"defaultPolicy": "accept",
"dropIcmp": true
},
"00000000-0000-0000-0000-000000000404": {
"active": true,
"defaultPolicy": "drop",
"dropIcmp": false
},
"00000000-0000-0000-0000-000000000401": {
"active": true,
"defaultPolicy": "drop",
"dropIcmp": true
}
},
"steps": [
{
"op": "ping",
"from": "00000000-0000-0000-0000-000000000401",
"target": "10.2.0.2",
"identifier": 30,
"sequence": 1
},
{
"op": "ping",
"from": "00000000-0000-0000-0000-000000000401",
"target": "10.1.0.3",
"identifier": 31,
"sequence": 1
},
{
"op": "ping",
"from": "00000000-0000-0000-0000-000000000404",
"target": "10.1.0.2",
"identifier": 32,
"sequence": 1
},
{
"op": "packetLoss",
"enabled": true
},
{
"op": "ping",
"from": "00000000-0000-0000-0000-000000000404",
"target": "10.1.0.1",
"identifier": 33,
"sequence": 1
},
{
"op": "packetLoss",
"enabled": false
},
{
"op": "ping",
"from": "00000000-0000-0000-0000-000000000404",
"target": "10.1.0.1",
"identifier": 34,
"sequence": 1
}
]
}