feat(fls): import the e-mail programs into the editor model

The e-mail client and server of every host come into the model (core:
EmailClientConfiguration, EmailServerConfiguration, EmailMessage), from
Java's view:

- the server's accounts are those of /mailserver/konten.txt, as Java reads
  them at every simulation start; without the file those of the bean list,
  which Java would drop;
- the client's account is that of /konten.txt; without it the first of an
  older file's kontoListe, which FILIUS 2.14 no longer reads;
- messages are numbered per program in folder order, as Swift does; the
  sent folder's are sent; a date is taken only when the file gives one.

Departures from Swift: accounts and messages stay where Swift drops what
fails its checks; first and last name stay apart; a port that is no number
is the default, with a warning. On the corpus the model matches Swift's on
all 13 files; the one Swift error is named (it numbers a mailbox's messages
as their received time and writes that into the konten.txt it rewrites).

The Swift dump now carries the e-mail state, and the file system
comparison leaves out only Swift's hidden state files (and the directories
it makes for them) instead of all of /mail, /mailserver and /peer2peer.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-30 07:36:05 +00:00
co-authored by Claude Opus 5.5
parent 8f9930f1ff
commit 1efbb8a660
11 changed files with 1404 additions and 27 deletions
+842
View File
@@ -5644,6 +5644,26 @@
266
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "rechner3@senior.de",
"inbox" : [
],
"name" : "Rechner 3",
"nextMessageID" : 1,
"password" : "rechner3",
"pop3Host" : "141.99.50.233",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "141.99.50.233",
"smtpPort" : 25,
"username" : "rechner3"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -5695,6 +5715,26 @@
375
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "rechner4@senior.de",
"inbox" : [
],
"name" : "Rechner 4",
"nextMessageID" : 1,
"password" : "rechner4",
"pop3Host" : "141.99.50.233",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "141.99.50.233",
"smtpPort" : 25,
"username" : "rechner4"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -5746,6 +5786,26 @@
59
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "rechner1@filius.de",
"inbox" : [
],
"name" : "Rechner 1",
"nextMessageID" : 1,
"password" : "rechner1",
"pop3Host" : "141.99.50.232",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "141.99.50.232",
"smtpPort" : 25,
"username" : "rechner1"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -5797,6 +5857,26 @@
161
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "rechner2@filius.de",
"inbox" : [
],
"name" : "Rechner 2",
"nextMessageID" : 1,
"password" : "rechner2",
"pop3Host" : "141.99.50.232",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "141.99.50.232",
"smtpPort" : 25,
"username" : "rechner2"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -6094,6 +6174,29 @@
285
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "rechner1",
"username" : "rechner1"
},
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "rechner2",
"username" : "rechner2"
}
],
"domain" : "filius.de",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -6144,6 +6247,29 @@
414
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "rechner3",
"username" : "rechner3"
},
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "rechner4",
"username" : "rechner4"
}
],
"domain" : "senior.de",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -6575,6 +6701,26 @@
169
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "herbert@gmx.com",
"inbox" : [
],
"name" : "Herbert Schmidt",
"nextMessageID" : 1,
"password" : "herbert1234",
"pop3Host" : "mail.gmx.com",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "mail.gmx.com",
"smtpPort" : 25,
"username" : "herbert"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -6791,6 +6937,26 @@
274
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "frimp@webmail.com",
"inbox" : [
],
"name" : "Frimp Mueller",
"nextMessageID" : 1,
"password" : "frimp1234",
"pop3Host" : "mail.webmail.com",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "mail.webmail.com",
"smtpPort" : 25,
"username" : "frimp"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -7279,6 +7445,29 @@
417
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "herbert1234",
"username" : "herbert"
},
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "george1234",
"username" : "george"
}
],
"domain" : "gmx.com",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -7329,6 +7518,21 @@
684
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "frimp1234",
"username" : "frimp"
}
],
"domain" : "webmail.com",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -7476,6 +7680,26 @@
840
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "george@gmx.com",
"inbox" : [
],
"name" : "George Brown",
"nextMessageID" : 1,
"password" : "george1234",
"pop3Host" : "mail.gmx.com",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "mail.gmx.com",
"smtpPort" : 25,
"username" : "george"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -8406,6 +8630,103 @@
165
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "herbert@gmx.de",
"inbox" : [
],
"name" : "Herbert Schmidt",
"nextMessageID" : 4,
"password" : "herbert1234",
"pop3Host" : "mail.gmx.de",
"pop3Port" : 110,
"sent" : [
{
"bcc" : [
],
"body" : "Huhu! \n\nHi Frimp!\n\nDein \nHerbert",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Herbert Schmidt",
"herbert@gmx.de"
],
"id" : 1,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "Hallo Frimp!",
"to" : [
[
null,
"frimp@webmail.de"
]
]
},
{
"bcc" : [
],
"body" : "Hallo Frimp!\n\nFrimp Müller <frimp@webmail.de> schrieb:\n> Huhu! \n> \n> Hi Herbert!\n> \n> Dein \n> Frimp\n> ",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Herbert Schmidt",
"herbert@gmx.de"
],
"id" : 2,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "RE: Hallo Herbert!",
"to" : [
[
null,
"frimp@webmail.de"
]
]
},
{
"bcc" : [
],
"body" : "jetzt?!\n\nFrimp Mueller <frimp@webmail.de> schrieb:\n> Hi Herbert Again!\n> \n> Herbert Schmidt <herbert@gmx.de> schrieb:\n> > Hallo Frimp!\n> > \n> > Frimp Müller <frimp@webmail.de> schrieb:\n> > > Huhu! \n> > > \n> > > Hi Herbert!\n> > > \n> > > Dein \n> > > Frimp\n> > >\n> >\n> ",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Herbert Schmidt",
"herbert@gmx.de"
],
"id" : 3,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "RE: RE: RE: Hallo Herbert!",
"to" : [
[
"Frimp Mueller",
"frimp@webmail.de"
]
]
}
],
"smtpHost" : "mail.gmx.de",
"smtpPort" : 25,
"username" : "herbert"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -9054,6 +9375,29 @@
417
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "herbert1234",
"username" : "herbert"
},
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "george1234",
"username" : "george"
}
],
"domain" : "gmx.de",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -9104,6 +9448,21 @@
649
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "frimp1234",
"username" : "frimp"
}
],
"domain" : "webmail.de",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -9251,6 +9610,26 @@
826
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "george@gmx.de",
"inbox" : [
],
"name" : "George Brown",
"nextMessageID" : 1,
"password" : "george1234",
"pop3Host" : "mail.gmx.de",
"pop3Port" : 110,
"sent" : [
],
"smtpHost" : "mail.gmx.de",
"smtpPort" : 25,
"username" : "george"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -11349,6 +11728,258 @@
264
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "alice@senior.de",
"inbox" : [
{
"bcc" : [
],
"body" : "test",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Rechner 1",
"rechner1@filius.de"
],
"id" : 1,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : false,
"receivedAtMilliseconds" : null,
"subject" : "test",
"to" : [
[
null,
"rechner3@senior.de"
]
]
},
{
"bcc" : [
],
"body" : "",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Bob 1",
"bob@filius.de"
],
"id" : 2,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : false,
"receivedAtMilliseconds" : null,
"subject" : "test3",
"to" : [
[
null,
"alice@senior.de"
]
]
},
{
"bcc" : [
],
"body" : "test bl\n",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Bob 1",
"bob@filius.de"
],
"id" : 3,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : false,
"receivedAtMilliseconds" : null,
"subject" : "test bl",
"to" : [
[
null,
"alice@senior.de"
]
]
}
],
"name" : "Alice 3",
"nextMessageID" : 10,
"password" : "alice",
"pop3Host" : "141.99.50.233",
"pop3Port" : 110,
"sent" : [
{
"bcc" : [
],
"body" : "Hallo Bob,\n\nschön von dir zu hören.\n\nGruß\nAlice",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 4,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "Beste Grüße",
"to" : [
[
null,
"Bob@filius.de"
]
]
},
{
"bcc" : [
],
"body" : "test",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 5,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "test",
"to" : [
[
null,
"bob@filius.de"
]
]
},
{
"bcc" : [
],
"body" : "\n\nBob 1 schrieb:\n> ",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 6,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "RE: test3",
"to" : [
[
null,
"bob@filius.de"
]
]
},
{
"bcc" : [
],
"body" : "\n\nBob 1 schrieb:\n> ",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 7,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "RE: test3",
"to" : [
[
null,
"bob@filius.de"
]
]
},
{
"bcc" : [
],
"body" : "huhu bob!\n\nBob 1 <bob@filius.de> schrieb:\n> test bl\n> ",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 8,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "RE: test bl",
"to" : [
[
"Bob 1",
"bob@filius.de"
]
]
},
{
"bcc" : [
],
"body" : "Hi BoB!",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 9,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "Hi Bob!",
"to" : [
[
null,
"bob@filius.de"
]
]
}
],
"smtpHost" : "141.99.50.233",
"smtpPort" : 25,
"username" : "alice"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -11444,6 +12075,14 @@
],
"recursiveResolutionEnabled" : false
},
"emailServer" : {
"accounts" : [
],
"domain" : "eve.de",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"dnsServer",
"emailServer",
@@ -11496,6 +12135,128 @@
120
],
"system" : {
"emailClient" : {
"drafts" : [
],
"email" : "bob@filius.de",
"inbox" : [
{
"bcc" : [
],
"body" : "Bob 1 schrieb:\n>",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 1,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : false,
"receivedAtMilliseconds" : null,
"subject" : "RE: test3",
"to" : [
[
null,
"bob@filius.de"
]
]
}
],
"name" : "Bob 1",
"nextMessageID" : 5,
"password" : "bob",
"pop3Host" : "141.99.50.232",
"pop3Port" : 110,
"sent" : [
{
"bcc" : [
],
"body" : "test",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Rechner 1",
"rechner1@filius.de"
],
"id" : 2,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "test",
"to" : [
[
null,
"rechner3@senior.de"
]
]
},
{
"bcc" : [
],
"body" : "",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Bob 1",
"bob@filius.de"
],
"id" : 3,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "test3",
"to" : [
[
null,
"alice@senior.de"
]
]
},
{
"bcc" : [
],
"body" : "test bl",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Bob 1",
"bob@filius.de"
],
"id" : 4,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : true,
"receivedAtMilliseconds" : null,
"subject" : "test bl",
"to" : [
[
null,
"alice@senior.de"
]
]
}
],
"smtpHost" : "141.99.50.232",
"smtpPort" : 25,
"username" : "bob"
},
"installedPrograms" : [
"emailClient",
"webBrowser"
@@ -11793,6 +12554,72 @@
382
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
{
"bcc" : [
],
"body" : "huhu bob!\n\nBob 1 <bob@filius.de> schrieb:\n> test bl\n>\n",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 1,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : false,
"receivedAtMilliseconds" : 1,
"subject" : "RE: test bl",
"to" : [
[
"Bob 1",
"bob@filius.de"
]
]
},
{
"bcc" : [
],
"body" : "Hi BoB!\n",
"cc" : [
],
"deliveryIdentity" : null,
"from" : [
"Alice 3",
"alice@senior.de"
],
"id" : 2,
"isMarkedForDeletion" : false,
"isNew" : true,
"isSent" : false,
"receivedAtMilliseconds" : 2,
"subject" : "Hi Bob!",
"to" : [
[
null,
"bob@filius.de"
]
]
}
],
"name" : "Vorname Nachname",
"password" : "bob",
"username" : "bob"
}
],
"domain" : "filius.de",
"nextMessageID" : 3,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]
@@ -11843,6 +12670,21 @@
405
],
"system" : {
"emailServer" : {
"accounts" : [
{
"mailbox" : [
],
"name" : "Vorname Nachname",
"password" : "alice",
"username" : "alice"
}
],
"domain" : "senior.de",
"nextMessageID" : 1,
"pop3Port" : 110
},
"installedPrograms" : [
"emailServer"
]