test(corpus): 23 .fls files and the Swift reader's view of them

The oracle gains a corpus mode; run.sh now stops on a failed build
instead of running a stale binary. Swift reads all 23 files but drops
Java gateways labelled 'Heimrouter' and nodes whose bounds are written
through XMLEncoder back-references.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-29 19:36:37 +00:00
co-authored by Claude Opus 5.5
parent 5c16cf18b4
commit 8866df5f21
29 changed files with 490 additions and 2 deletions
+15
View File
@@ -0,0 +1,15 @@
# .fls-Korpus
Projektdateien, an denen Lesen und Schreiben gemessen werden. Alle GPL.
| Ordner | Herkunft |
| --- | --- |
| `java-examples/` | `gitlab.com/filius1/filius`, `beispiele/` @ `6640354` (Filius 2.14.0) |
| `java-tests/` | ebenda, `src/test/resources/` |
| `ipad-fixtures/` | `filius-ipad`, `ios/FiliusPadTests/Fixtures/FLS/` @ `3b5ded0` |
`corpus.swift.json` schreibt das Swift-Orakel (`npm run oracle`): was der
Swift-Leser aus jeder Datei macht. **Swift ist hier kein Schiedsrichter** —
er verwirft den Java-Gateway unter der Beschriftung `Heimrouter` samt seinen
Kabeln und Geräte, deren Position XMLEncoder über eine Rückverweis-Kette
schreibt (s. Plan §13, M2). Schiedsrichter für das Dateiformat ist Java.
+427
View File
@@ -0,0 +1,427 @@
{
"ipad-fixtures\/dns_server.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 2,
"notebook" : 1,
"pc" : 5
},
"links" : 7,
"nodes" : 8,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.0-SNAPSHOT (11.03.2012)",
"warnings" : [
]
},
"ipad-fixtures\/Public_and_Private_Networks_2_EN.fls" : {
"documentation" : 12,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 2,
"pc" : 2,
"router" : 1
},
"links" : 4,
"nodes" : 6,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.9.4 (20.07.2025)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 1: unresolved port references 'Port1' and 'Port3'",
"Skipped FILIUS cable 4: unresolved port references 'Port9' and 'Port2'"
]
},
"ipad-fixtures\/zwei_rechnernetze_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 2,
"notebook" : 2,
"pc" : 1,
"router" : 1
},
"links" : 5,
"nodes" : 6,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.3.1.3 (29. Januar 2011)",
"warnings" : [
]
},
"java-examples\/anwendung_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 2,
"pc" : 1
},
"links" : 3,
"nodes" : 4,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 2.1.0 (11.10.2022)",
"warnings" : [
]
},
"java-examples\/dhcp_test_scenario.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 3,
"pc" : 2
},
"links" : 3,
"nodes" : 6,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.8.0 (15.03.2025)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 4: unresolved port references 'Port6' and 'Port8'",
"Skipped FILIUS cable 5: unresolved port references 'Port9' and 'Port7'"
]
},
"java-examples\/dns_server.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 2,
"notebook" : 1,
"pc" : 5
},
"links" : 7,
"nodes" : 8,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.0-SNAPSHOT (11.03.2012)",
"warnings" : [
]
},
"java-examples\/einfaches_rechnernetz_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 3,
"notebook" : 4,
"pc" : 5
},
"links" : 11,
"nodes" : 12,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.4.5 (04.11.2012)",
"warnings" : [
]
},
"java-examples\/email_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 4,
"pc" : 4
},
"links" : 8,
"nodes" : 9,
"residual" : 0,
"skipped" : 0,
"version" : null,
"warnings" : [
"Email Client on 'Rechner 3' has inconsistent kontoListe map entry #2; account bean values remain authoritative.",
"Email Client on 'Rechner 3' ignored duplicate kontoListe account entry #2.",
"Email Client on 'Rechner 3' ignored duplicate kontoListe account entry #3.",
"Email Client on 'Rechner 4' ignored duplicate kontoListe account entry #2.",
"Email Client on 'Rechner 1' ignored duplicate kontoListe account entry #2.",
"Email Client on 'Rechner 2' ignored duplicate kontoListe account entry #2."
]
},
"java-examples\/Internet_Complete_with_e-Mail_Webserver_Intranet_Portforwarding_Firewall_DHCP_EN.fls" : {
"documentation" : 11,
"kinds" : {
"networkSwitch" : 3,
"notebook" : 5,
"pc" : 6,
"router" : 7
},
"links" : 20,
"nodes" : 21,
"residual" : 0,
"skipped" : 4,
"version" : "Filius version: 2.9.4 (20.07.2025)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS node with missing bounds coordinates",
"Skipped FILIUS node with missing bounds coordinates",
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped malformed Java GUIDocuItem with missing type or geometry.",
"Skipped malformed Java GUIDocuItem with missing type or geometry.",
"Skipped malformed Java GUIDocuItem with missing type or geometry.",
"Skipped FILIUS cable 13: unresolved port references 'Port35' and 'Port39'",
"Skipped FILIUS cable 14: unresolved port references 'Port36' and 'Port40'",
"Skipped FILIUS cable 18: unresolved port references 'Port44' and 'Port7'",
"Skipped FILIUS cable 19: unresolved port references 'Port45' and 'Port5'",
"Skipped FILIUS cable 24: unresolved port references 'Port32' and 'Port50'",
"Skipped FILIUS cable 26: unresolved port references 'Port34' and 'Port33'"
]
},
"java-examples\/Internet_Komplett_mit_eMail_Webserver_Intranet_Portforwarding_Firewall_DHCP_DE.fls" : {
"documentation" : 9,
"kinds" : {
"networkSwitch" : 3,
"notebook" : 4,
"pc" : 6,
"router" : 7
},
"links" : 19,
"nodes" : 20,
"residual" : 0,
"skipped" : 5,
"version" : "Filius version: 2.9.4 (20.07.2025)",
"warnings" : [
"Skipped FILIUS node with missing bounds coordinates",
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS node with missing bounds coordinates",
"Skipped FILIUS node with missing bounds coordinates",
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped malformed Java GUIDocuItem with missing type or geometry.",
"Skipped malformed Java GUIDocuItem with missing type or geometry.",
"Skipped malformed Java GUIDocuItem with missing type or geometry.",
"Skipped FILIUS cable 2: unresolved port references 'Port2' and 'Port6'",
"Skipped FILIUS cable 13: unresolved port references 'Port34' and 'Port33'",
"Skipped FILIUS cable 14: unresolved port references 'Port35' and 'Port39'",
"Skipped FILIUS cable 15: unresolved port references 'Port36' and 'Port40'",
"Skipped FILIUS cable 19: unresolved port references 'Port44' and 'Port7'",
"Skipped FILIUS cable 20: unresolved port references 'Port45' and 'Port5'",
"Skipped FILIUS cable 26: unresolved port references 'Port51' and 'Port32'"
]
},
"java-examples\/internetwork_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 4,
"notebook" : 3,
"pc" : 3,
"router" : 3
},
"links" : 12,
"nodes" : 13,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.1.0 (11.10.2022)",
"warnings" : [
"Skipped FILIUS node with missing bounds coordinates",
"Skipped FILIUS cable 1: unresolved port references 'Port17' and 'Port0'"
]
},
"java-examples\/man-in-the-middle.fls" : {
"documentation" : 3,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 3,
"pc" : 3
},
"links" : 6,
"nodes" : 7,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 2.5.1 (23.10.2023)",
"warnings" : [
]
},
"java-examples\/modem_beispiel.fls" : {
"documentation" : 0,
"kinds" : {
"notebook" : 1,
"pc" : 1,
"remoteLink" : 2
},
"links" : 2,
"nodes" : 4,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.5.4 (08.12.2013)",
"warnings" : [
"Imported Java Modem 'Modem (Zugreifend)' as Remote Link pair 'java-modem-port-12345' (mode=CLIENT [2], ip=localhost, port=12345); host socket transport was replaced by deterministic in-project pairing by normalized port, and cross-host identity is not preserved.",
"Imported Java Modem 'Modem (Zugangspunkt)' as Remote Link pair 'java-modem-port-12345' (mode=SERVER [1], ip=localhost, port=12345); host socket transport was replaced by deterministic in-project pairing by normalized port, and cross-host identity is not preserved."
]
},
"java-examples\/multicast_server.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 2,
"pc" : 1
},
"links" : 3,
"nodes" : 4,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 2.4.1 (07.06.2023)",
"warnings" : [
]
},
"java-examples\/nat_with_mapped_port.fls" : {
"documentation" : 9,
"kinds" : {
"networkSwitch" : 4,
"notebook" : 3,
"pc" : 3,
"router" : 3
},
"links" : 10,
"nodes" : 13,
"residual" : 0,
"skipped" : 2,
"version" : "Filius version: 2.8.0 (15.03.2025)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 8: unresolved port references 'Port2' and 'Port24'",
"Skipped FILIUS cable 9: unresolved port references 'Port23' and 'Port6'",
"Skipped FILIUS cable 10: unresolved port references 'Port19' and 'Port22'",
"Skipped FILIUS cable 11: unresolved port references 'Port21' and 'Port11'"
]
},
"java-examples\/nat.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 1,
"pc" : 1
},
"links" : 1,
"nodes" : 3,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.5.1 (23.10.2023)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 1: unresolved port references 'Port2' and 'Port1'",
"Skipped FILIUS cable 2: unresolved port references 'Port0' and 'Port4'"
]
},
"java-examples\/private_and_public_network.fls" : {
"documentation" : 7,
"kinds" : {
"networkSwitch" : 2,
"notebook" : 2,
"pc" : 1
},
"links" : 3,
"nodes" : 5,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.5.1 (23.10.2023)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 1: unresolved port references 'Port0' and 'Port6'",
"Skipped FILIUS cable 2: unresolved port references 'Port7' and 'Port5'"
]
},
"java-examples\/private_und_public_networks_mit_provider_DE.fls" : {
"documentation" : 10,
"kinds" : {
"networkSwitch" : 2,
"notebook" : 2,
"pc" : 3,
"router" : 2
},
"links" : 7,
"nodes" : 9,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.9.4 (20.07.2025)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 1: unresolved port references 'Port0' and 'Port6'",
"Skipped FILIUS cable 2: unresolved port references 'Port7' and 'Port5'"
]
},
"java-examples\/Public_and_Private_Networks_2_EN.fls" : {
"documentation" : 12,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 2,
"pc" : 2,
"router" : 1
},
"links" : 4,
"nodes" : 6,
"residual" : 0,
"skipped" : 1,
"version" : "Filius version: 2.9.4 (20.07.2025)",
"warnings" : [
"Skipped unsupported FILIUS node type 'Heimrouter' in konfiguration.xml",
"Skipped FILIUS cable 1: unresolved port references 'Port1' and 'Port3'",
"Skipped FILIUS cable 4: unresolved port references 'Port9' and 'Port2'"
]
},
"java-examples\/webserver.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 1,
"notebook" : 1,
"pc" : 1
},
"links" : 2,
"nodes" : 3,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.5.1 (13.02.2013)",
"warnings" : [
]
},
"java-examples\/zwei_rechnernetze_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 2,
"notebook" : 2,
"pc" : 1,
"router" : 1
},
"links" : 5,
"nodes" : 6,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.3.1.3 (29. Januar 2011)",
"warnings" : [
]
},
"java-tests\/einfaches_rechnernetz_komplett.fls" : {
"documentation" : 0,
"kinds" : {
"networkSwitch" : 3,
"notebook" : 4,
"pc" : 5
},
"links" : 11,
"nodes" : 12,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.4.5 (04.11.2012)",
"warnings" : [
]
},
"java-tests\/empty.fls" : {
"documentation" : 0,
"kinds" : {
},
"links" : 0,
"nodes" : 0,
"residual" : 0,
"skipped" : 0,
"version" : "Filius version: 1.9.0 (02.05.2020)",
"warnings" : [
]
}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.