Status van de runtimevalidatie
Vertaling van de oorspronkelijke Engelse pagina voor OmsiLaunch 0.1.0-beta3. De Engelse pagina is normatief: bij verschillen gelden de Engelse pagina en de code.
Deze pagina is de enige bewijstabel voor OmsiLaunch 0.1.0-beta3. Elke rij noemt een capability of functie en de bewijsstatus ervan. RUNTIME_VALIDATED kan verwijzen naar research/reports/OMSILAUNCH-RUNTIME-VALIDATION-MATRIX.md (matrix-id's RV-nnn, blockers BI-nnn, sessie-id's uit de uitvoeringstabel van 2026-09-20) of naar het post-Fable Round A-rapport research/reports/OMSILAUNCH-RUNTIME-VALIDATION-ROUND-A-001.md (RA-nnn); al het andere is afgeleid uit de code en de offline testsuites. De hardeningronde van 2026-09-21 (research/reports/OMSILAUNCH-SECURITY-ROBUSTNESS-REVIEW-001.md, bevindingen S-01 tot en met S-34) wijzigde het gedrag van herstel, recovery, control plane en grenzen; voor die wijzigingen bestond alleen offline bewijs. De afsluitende runtimeronde van 2026-09-23 (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md, scenario-id's zoals F01, S05, T01, kandidaten 2 en 3) heeft ze in echte sessies op de geautoriseerde installatie uitgevoerd; rijen die door die ronde zijn gepromoveerd, verwijzen naar de scenario-id's en sessie-id's daarvan. RUNTIME_VALIDATED kan dus ook naar dat rapport verwijzen.
Bewijsstatussen:
| Status | Betekenis |
|---|---|
| RUNTIME_VALIDATED | Waargenomen in een canonieke sessie die in de matrix is vastgelegd (id en sessie vermeld). |
| STATICALLY_VALIDATED | Geïmplementeerd en gedekt door offline tests (tools/OmsiLaunch.TestHost, tests/*), sinds de laatste wijziging niet waargenomen in een live sessie. |
| PARTIAL | Geïmplementeerd, maar het bewijs is onvolledig of tegenstrijdig, of het gedrag is bekend beperkt. |
| RUNTIME_VALIDATION_REQUIRED | Gedrag is gewijzigd of nooit waargenomen; moet in een echte sessie worden gevalideerd voordat het kan worden gepromoveerd. |
| UNAVAILABLE | Niet geïmplementeerd of bewust geweigerd. |
Sessielevenscyclus en transactie#
| Functie | Status | Bewijs |
|---|---|---|
Headless start NEW_MAP (world.new-map, world.presented-entrypoint, boot.headless-start) | RUNTIME_VALIDATED | Matrix "Existing Runtime Evidence"; sessies e5454061, 1e8e0548, 5f641c8d, 50a1f1ec (Grundorf) |
Start SAVED_SITUATION (world.saved-situation) | RUNTIME_VALIDATED | Opmerking bij GetCapabilitiesAsync en matrix (Berlin-Spandau, Start-formulier en Button1Click) |
session.stop: geforceerde beëindiging en exact herstel | RUNTIME_VALIDATED | Sessie 50a1f1ec: een normale stop liet geen OMSI-proces en geen journal achter |
Idempotentie bij het opstarten (herhaalde PluginStart) | RUNTIME_VALIDATED | Sessie 50a1f1ec |
Semantische overlay van options.cfg en byte-exact herstel (RV-005) | RUNTIME_VALIDATED | Sessie 1e8e0548: AIMaxCountRandom 150/200 plus behouden staart; herstelde hash A12982C3... |
| Beheerd opstartscherm plus overlaytransactie (RV-006) | RUNTIME_VALIDATED | Matrix RV-006 PASS (presentatiebatch: beheerd standaard, beheerd aangepast, Unset); sessies van Release Presentation 001 388cf5d2-7310-4301-9313-e62c4c08a346, 794cae34-a2ac-4fcf-8981-f142ac14c308, 12a74b24-6c78-4863-8ffe-947651212eeb |
| Recovery na vroegtijdig afsluiten (RV-008, geforceerde beëindiging van OMSI) | RUNTIME_VALIDATED | Post-Fable Round A-sessies 9e7cad79-9c35-4f93-bfc8-71f455513f82 (na gameplay) en dcac497e-ff35-4c97-b5e4-98b660f88032 (na world.starting, vóór gameplay): de eigenaar werd voltooid, journal en lease werden gewist, options.cfg en de oorspronkelijk afwezige toestand van het opstartscherm kwamen overeen met de snapshots. Native opstartfouten en het injecteren van een mislukt herstel blijven afzonderlijke punten. |
| Grenzen bij opstartfouten en bewust mislukt herstel (rest van RV-008) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md): opstart-timeout SF01 sessie 0b21c664-b0b2-46b2-9b6b-def536765fff en door de plugin gemelde wereldfout SF02 sessie 53358c75-469b-41d5-9ddb-cdb1d1ff828d eindigden als Failed met getypeerde codes en een exact herstel; mislukt herstel F01 sessie d4194a69-d858-42fe-97c7-ce93ccbdc3f6 (een bestand in bezit van de sessie dat tijdens de stop door een proces uitsluitend voor tests werd vergrendeld) gaf OL_E_RESTORE_FAILED, behield journal en back-up, en /recover herstelde de toestand van vóór de sessie exact. De foutproducenten zijn uitsluitend testinfrastructuur. |
Herstel van sessieartefacten voor doelen .itx en Texture\standard.ipr (S-01) | RUNTIME_VALIDATED | Round A herstelde bestaande paden in 47efd323-4ce1-400a-ac83-74893cf82f26; maakte bij een normale stop in 8d9bdedf-d7de-4c64-a8b1-627ae4deff7b een geregistreerd, oorspronkelijk afwezig doel aan en verwijderde het weer; en herhaalde dat opruimen via onderbreking van de eigenaar plus /recover in aa9a45d4-302e-4cf5-8490-f5a1c9e44b79. |
closecheck als sessieverwijdering en verwijdering van verouderde markeringen (S-13) | RUNTIME_VALIDATED | Round A-sessies, waaronder 47efd323-4ce1-400a-ac83-74893cf82f26, legden closecheck.stale-removed vast, gevolgd door restore.session-artifact-removed; er bleef geen journal achter. |
| Vroege recovery vóór het opbouwen van de overlay, uitgestelde recovery van vóór de vingerafdrukken (S-05) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) S05: de eigenaar van sessie f755ed51-b85c-4df2-b062-5bf65c768b32 werd beëindigd met een openstaand journal (maxFPS=77 live); de volgende start, sessie 291ea22b-f9b3-42a4-be07-7f0c055c7113, logde PENDING_JOURNAL_RECOVERED vóór TRANSACTION_STARTED, draaide met een eigen overlay (88) en eindigde byte voor byte identiek aan de toestand van vóór de eerste sessie. De uitgestelde tak van vóór de vingerafdrukken blijft offline (transaction.legacy-journal-ownership-migration). |
| Herstel van metadata (tijdstempels, attributen, alleen-lezen), write-through flush, opruimen van back-ups (S-12) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md): S12a sessie 40de172b-e144-4f0a-9207-09c80b5d7df7 (bekende tijdstempel van options.cfg) en S12b sessie d9e2534b-3cb3-47ef-9cbd-1b92c62a35e7 (tijdstempel plus ReadOnly): de overlay was tijdens de sessie live (ReadOnly gewist voor OMSI), en bytes, laatste schrijftijd, aanmaaktijd en attributen werden exact hersteld; er bleef geen back-upmap achter. |
/recover onder de installatielease; weigering in het venster vóór de PID (S-04) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md): S04 sessie 1fb2aad5-2985-4fa4-9c5a-6186f51d37b8: onder een levende eigenaar gaven /recovery-status en /recover OL_E_INSTALLATION_BUSY en werd een tweede start geweigerd; met de eigenaar beëindigd en OMSI nog actief werden /recover en een nieuwe start geweigerd totdat OMSI afsloot, waarna /recover exact herstelde. S04b sessie 5e57ca51-ab5e-4e94-a0d0-531735ee4057: een journal van vóór de PID (foutinjectie door het harnas) werd geweigerd zolang er een Omsi.exe vanuit de hoofdmap draaide, en werd na het afsluiten hersteld; een door die OMSI geschreven closecheck blijft behouden met OL_W_RESTORE_FOREIGN_FILE_RETAINED (gedocumenteerd, conservatief). |
Opnieuw plannen bij StartSessionAsync, OL_E_PLAN_NOT_RUNNABLE bij een verouderd plan (S-15) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) R02: met een in het manifest vermelde plugin die na het plannen was weggezet, gooide StartSessionAsync OL_E_PLAN_NOT_RUNNABLE: OL_E_PERMANENT_PLUGIN_MISSING voordat er een sessie bestond (plan 4797c9ce-6eb3-47b1-b09d-03562dd3bd44, kandidaat 2, na fix BUG-01) |
Levenscyclus van de eigenaar: stop via pipe, Ctrl+C, stop via systeemvak, OMSI dat afsluit, eigenaar beëindigd, /observe-seconds | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md): stop via pipe tijdens /observe-seconds L06 sessie 300a563e-7b0e-4f01-afbd-9e15df32c7e6; Ctrl+C L03 sessie 5e2aca54-bae2-4fc6-a106-93699e755bfc (de eigenaar eindigde 577 ms na het signaal); OMSI beëindigd L05a sessie d69658f9-16f6-43e9-8e36-682114b97e14; hoofdvenster van OMSI gesloten L05b sessie 76b11ba4-8ddb-4611-9a1c-8be317cd0337 (OMSI negeert WM_CLOSE; beëindigd door kill); stop via systeemvak T01/T03 sessies 6d827c13-caf8-4221-832a-c91d26f130e0, 7e6e805d-69c2-47a3-9fa3-4cdccbe3ccb8; eigenaar beëindigd S05. Elk pad eindigde met een exact herstel. Als de eigenaar direct wordt beëindigd, blijft Omsi.exe draaien (bewust zo ontworpen); recovery wordt geweigerd totdat het afsluit (S04). |
| ProcessExit-budget van 4 s bij het sluiten van de console of afmelden | RUNTIME_VALIDATED (console sluiten) | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) L04 sessie 559d0f1d-7d5b-4b6b-b70c-0acb272d53db: consolevenster gesloten; het herstel werd binnen het budget voltooid, de sessie bereikte Completed zonder journal; Windows beëindigde de eigenaar ongeveer 5 s na het sluiten (exitcode 0xC000013A). Afmelden is niet getest. |
| Coöperatief afsluiten via WM_CLOSE | UNAVAILABLE | Niet geïmplementeerd (productbeslissing, S-11). Afsluitende runtimeronde L05b: OMSI sloot niet binnen 30 s na WM_CLOSE naar zijn hoofdvenster. ShutdownTimeoutSeconds wordt niet gebruikt. |
Semantiek van de installatielease (semafoor Local\) | STATICALLY_VALIDATED | lease.cross-thread-release; beperkingen gedocumenteerd als geaccepteerd risico (S-18) |
| Behoud van CP1252 bij het patchen van OMSI-bestanden (S-07) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) C01 sessie 84a71235-d618-4917-9af4-c2a6025742f4: options.cfg met een CP1252-waarde met accenten (inclusief 0x80 en 0x96) gepatcht door /set; het live bestand behield de CP1252-bytes zonder EF BF BD, en het bestand was na de sessie byte voor byte identiek |
| Contentdetectie die reparsepunten overslaat (S-23) | STATICALLY_VALIDATED | Tests discovery.* |
| Bewaren van diagnostiek (50 nieuwste sessies) (S-26) | STATICALLY_VALIDATED | HostTrace.Prune |
| Tijdelijke bestandsvergrendelingen (antivirus, indexeerfunctie) bij schrijf- en verwijderacties van transacties worden ongeveer 1,5 s opnieuw geprobeerd; blijvende vergrendelingen mislukken nog steeds (correctieronde CP-10) | STATICALLY_VALIDATED | transaction.transient-lock-retried, transaction.restore-failure-recovery (blijvende vergrendeling mislukt nog steeds); twee sporadische offline fouten waargenomen vóór de fix, geen enkele in 16 uitvoeringen daarna |
Permanente plugin en platform#
| Functie | Status | Bewijs |
|---|---|---|
Profiel Omsi23004_692EBFBF (692EBFBF...6243, 8.503.440 bytes) | RUNTIME_VALIDATED | Elke matrixsessie |
Uitvoerbaar Steam LAA-bestand (7DAB063D...D759) | PARTIAL | Afsluitende runtimeronde LAA01 sessie 9ec975ca-7820-47be-b806-5f5a94aad4ab: een gecontroleerde kopie (afgeleid van het ongepatchte origineel van de installatie met IMAGE_FILE_LARGE_ADDRESS_AWARE en een opnieuw berekende PE-checksum; 8.503.440 bytes, kenmerken 0x81AE) kwam overeen met de hash, de vingerafdruk werd geaccepteerd en het plan was uitvoerbaar. De image is het originele, met DRM beveiligde uitvoerbare Steam-bestand: buiten een echte Steam-installatie draagt het de besturing over aan de Steam-client en sluit het af, zodat de sessie mislukte met OL_E_PROCESS_EXITED_EARLY en een exact herstel. Gameplay, leesacties, opdrachten en stop vereisen een echte Steam-installatie (ENVIRONMENT). |
Installatie-identiteit: lease en naam van de besturingspipe zijn afgeleid van één definitie, InstallationPaths.IdentityKey (C:\OMSI = C:\OMSI\ = C:\OMSI\. = C:\foo\..\OMSI = varianten in hoofdlettergebruik; C:\OMSI-A verschilt van C:\OMSI-B) (correctieronde CP-02, addendum A/B) | STATICALLY_VALIDATED; runtime waargenomen | lease.root-normalization, paths.installation-identity-and-containment. Afsluitende runtimeronde ID01: terwijl sessie 01bfc780-10ef-4390-b700-c08bf809a42f draaide, werden tweede starts en /recovery-status met de hoofdmap geschreven met \., een segment .., kleine letters en hoofdletters geweigerd (OL_E_SESSION_ALREADY_ACTIVE, OL_E_INSTALLATION_BUSY); de schrijfwijze met afsluitend scheidingsteken eveneens (ID01b, sessie ba3ea7c9-9826-453d-b447-81c48763e18f). |
Samenhang van het releasepakket: schone staging, build-ontvangstbewijs voor Native.x86 (inhoud, geen tijdstempel), manifest zonder BOM, integriteit van de gestagede closure en van het opnieuw uitgepakte archief, installer kopieert het manifest (correctieronde CP-01, Round A RA-007, addendum F/G/H) | STATICALLY_VALIDATED; installatie waargenomen | Test-PackagingPipeline.ps1 (samenhangende kandidaat plus 16 negatieve gevallen), runtime.release-manifest-bom, runtime.release-manifest-strict-parser. Afsluitende runtimeronde: pakketten die in de geautoriseerde installatie waren geïnstalleerd, waren in overeenstemming met hun manifesten, en elke sessie werd gepland met plugin.integrity.reference = manifest (kandidatenregister research/reports/runtime-closure/CANDIDATES.md). |
Integriteit van de plugin-closure tegen release-manifest.json (S-09) | RUNTIME_VALIDATED | Round A-sessie 47efd323-4ce1-400a-ac83-74893cf82f26; sessies uit de afsluitende runtimeronde op geïnstalleerde releasepakketten (bijvoorbeeld R01 sessie 878b5e3c-2f9d-46bf-a918-11bb2e227e55, kandidaat 3) werden gepland met plugin.integrity.reference = manifest; R02 toonde aan dat een ontbrekende vermelde plugin de start blokkeert. |
Buildvalidatie in het proces (plugin.build.invalid -> OL_E_BUILD_VALIDATION_FAILED) | RUNTIME_VALIDATED | Matrixsessies; twee eerdere sessies met plugin.build.invalid bij een verouderde plugin |
| Handoff v4 met SHA-256 | RUNTIME_VALIDATED | Integratietests handoff.*; elke sessie |
| Plugin inert zonder OmsiLaunch (geen handoff) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) P01 (gewone OMSI-start, geen OmsiLaunch-sessie; OMSI-pid 35564): de plugin-closure en de .NET-host werden geladen, OmsiLaunch.Native.x86.dll werd niet geladen, de drie native patchlocaties bevatten de ongepatchte bytes van Omsi.exe, en er verscheen geen besturingspipe, journal of diagnostiek |
DLL-zoekbeleid (AssemblyDirectory | System32) (S-24) | STATICALLY_VALIDATED | Assemblyattributen |
| Detectie van Windows 10+ x64 en weigering van andere platforms | STATICALLY_VALIDATED | CurrentWindowsX64Platform.Detect |
Runtimebesturingskanaal en control plane#
| Functie | Status | Bewijs |
|---|---|---|
| Wire-integriteit van de mailbox, sessiebinding | RUNTIME_VALIDATED | Alle runtimesessies; runtime-command.wire-guard, runtime-command.session-binding |
| Negeren van late antwoorden en geen vastgelopen kanaal na een timeout (S-08) | RUNTIME_VALIDATED | Round A-sessie 173414a5-ee53-4b10-aeb7-046f40b851e9: een externe client gaf road-vehicles.spawn na 250 ms op; een latere map.read slaagde en de canonieke stop ruimde de sessie op. Het weigeren van te grote antwoorden blijft alleen offline. |
Lokaal control plane: pipenaam per installatie, binding aan session_id, getypeerde handlerfouten, limiet van 64 KiB (S-06) | RUNTIME_VALIDATED | Round A-sessie a00c6ff8-9cc9-4bce-ae44-c4314daad7bf: ongeldig protocol, ongebonden stop, runtimeverzoek voor de verkeerde sessie en een te groot frame werden geweigerd; een daaropvolgend geldig statusverzoek en een gebonden stop slaagden. Het weigeren van te grote antwoorden blijft alleen offline. |
| Sequentieslot voor telemetrie, overslaan van gescheurde samples, identieke opeenvolgende events (S-25) | STATICALLY_VALIDATED | telemetry.sequence-samples |
API-grens weigert internal.* en verwijdert interne resultaatsleutels (S-02) | STATICALLY_VALIDATED | OmsiLaunchService.ExecuteRuntimeAsync; registervalidatie |
| Een ongeldig of te groot mailboxantwoord geeft het slot vrij; het volgende verzoek slaagt (correctieronde CP-03) | STATICALLY_VALIDATED | runtime-command.oversized-response-rejected; pluginzijde plugin-runtime.oversized-and-abandoned-responses. Niet te produceren tijdens runtime: geen enkele openbare operatie retourneert meer dan één slot (grootste ongeveer 37,8 KB, afsluitende runtimeronde R03). |
| Elk eindpad van een runtimeverzoek laat de mailbox herbruikbaar achter: getypeerde weigering, timeout, annulering door de aanroeper, hergebruikte verzoek-id, interne operatie, verkeerde sessie, ontbrekend argument (runtime); misvormde, te grote, beschadigde, verouderde en verweesde antwoorden (offline) | RUNTIME_VALIDATED (bereikbare paden) | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) R03 sessie 1134fdc3-a469-4ff5-a511-9964ed65e7cd: elke fout was getypeerd en het volgende geldige verzoek slaagde. Paden met beschadigde antwoorden kunnen niet van buitenaf worden geproduceerd en blijven offline (runtime-command.terminal-paths-leave-channel-usable). |
Te groot antwoord van het control plane beantwoord als OL_E_CONTROL_RESPONSE_TOO_LARGE; status/events vanaf het oudste ingekort tot één frame (correctieronde CP-04) | STATICALLY_VALIDATED | control-plane.binding-and-typed-errors. Niet te produceren tijdens runtime: het grootste openbare antwoord dat in de afsluitende runtimeronde werd waargenomen, was ongeveer 37,8 KB (R03), en de eventgeschiedenis van een sessie blijft ruim onder één frame. |
Control plane blijft na verbinding nooit stil: misvormde, te grote, frames met negatieve lengte, lege, JSON null, zonder opdracht, met niet-stringargument, met ongeldig protocol, met onbekende opdracht, ongebonden en voor de verkeerde sessie; afgekapte clientframes; vastgelopen clients; clients die vertrekken vóór het antwoord | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) R04 sessie faaaf8a8-126d-4a23-a8f3-381e47c58de6 (kandidaat 2, na fix BUG-02): elk frame kreeg zijn getypeerde fout, telkens gevolgd door een geslaagde session.status; een vastgelopen client blokkeerde anderen niet; een gebonden stop die concurreerde met een lopende road-vehicles.spawn beëindigde de sessie en de aanroeper van de spawn kreeg een net einde van de stream. OL_E_TIMEOUT en metadata over afkapping blijven offline (control-plane.errors-never-silent). |
Runtime-batchharnassen (/runtime-batch, /runtime-write-batch, /d3d-batch) | INTERNAL (STATICALLY_VALIDATED) | Alleen validatieharnas (S-27) |
Runtime-operaties#
| Operatie(s) | Status | Bewijs |
|---|---|---|
time.read, time.set | RUNTIME_VALIDATED | Sessie e5454061 (schrijven, SetTime, teruglezen, herstel) |
weather.read, weather.actual.read | RUNTIME_VALIDATED | Sessie e5454061 |
weather.set | UNAVAILABLE | Geweigerd met OL_E_RUNTIME_SETTING_NOT_PERSISTENT; persistentie FAIL in sessies e5454061 en 5f641c8d; weigering PASS in 50a1f1ec |
map.read | RUNTIME_VALIDATED | Opnieuw gevalideerd na de correctie van het globale Map-slot in sessie 9dd62626-94c6-4cd7-bb6f-0288327696f4: loaded=true, 19 tiles, identiteit Grundorf, bestandsnaam, beschrijving en jaarbereik samenhangend. |
camera.read, camera.set | RUNTIME_VALIDATED | Sessie e5454061 (FOV schrijven, teruglezen, herstel) |
camera.lock, camera.unlock | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) CAM01 sessie 5dfd9b96-fa94-4060-85af-0c9d19823a73: de opgeslagen situatie Linie 5 leverde een PlayerVehicle (rv-000001); vergrendelingen op families 0, 2 en 1 werden bevestigd door teruglezen van de camera; ontgrendelen hief het beleid op |
road-vehicles.read, road-vehicles.list, road-vehicle.read | RUNTIME_VALIDATED | Sessies e5454061, 5f641c8d |
| Levensduur van RoadVehicle-handles en detectie van verouderde handles (RV-002) | PARTIAL | Geen veilige producent voor verwijdering: in drie vensters van de afsluitende runtimeronde (H01, H01b, H01c, tot 180 s, met een kloksprong) groeiden de RoadVehicle- en Human-populaties van Grundorf alleen; geen enkele openbare operatie verwijdert een object. De detectie van verouderde handles blijft offline (S-19). De generatie-/ABA-regel is runtime-gevalideerd voor D3D-textures (H02). |
road-vehicles.spawn (RV-003) | RUNTIME_VALIDATED | Sessie 5f641c8d: 2 -> 3, rv-000003 opgelost |
road-vehicles.place-random | RUNTIME_VALIDATED | Matrix: collectie 2 -> 4 |
player-vehicle.read | RUNTIME_VALIDATED | Round A RA-002 sessie 9dd62626-94c6-4cd7-bb6f-0288327696f4 (present=false); afsluitende runtimeronde CAM01 sessie 5dfd9b96-fa94-4060-85af-0c9d19823a73 las een aanwezig PlayerVehicle uit een opgeslagen situatie |
humans.read, humans.list, human.read | RUNTIME_VALIDATED | Sessie e5454061 |
timetable.read, timetable.*.list, timetable.logs.read | RUNTIME_VALIDATED | Sessie e5454061; trackitems 91 records |
Afkappen van begrensde lijsten in plaats van OL_E_RUNTIME_RESPONSE_TOO_LARGE (documentatieaudit BUG-05) | RUNTIME_VALIDATED | Hertest van de documentatieaudit op pakket 9F8CC87B..., opgeslagen situatie situations\Linie 5.osn (Berlin-Spandau): timetable.track-entries.list retourneerde 137 van 825 items en timetable.tour-entries.list 224 van 4747, met truncated=true (sessies 08df97b8-06cc-4faa-be8b-f49ca1538dce en de hertest voor de documentatieopname); vóór de fix mislukten beide met OL_E_RUNTIME_RESPONSE_TOO_LARGE (sessie f51dcb59-a723-4570-b6c5-b61e628a7993). Bewijs: research/reports/documentation-audit/runtime/. |
drivers.read, tickets.read | RUNTIME_VALIDATED | Sessie e5454061 |
vehicle.variables.list, vehicle.variable.get, vehicle.variable.set | RUNTIME_VALIDATED | Refresh_Strings 0 -> 1 -> 0 in de runtimesessie die als Runtime-Proven is vastgelegd in research/reports/OmsiHook-Parity-Wave-A-Closure-001.md (1.025 namen opgesomd, volgens OMSILAUNCH-AUTONOMOUS-BUILD-001.md); het rapport vermeldt de sessie-id niet |
vehicle.string-variables.list, vehicle.string-variable.get | RUNTIME_VALIDATED (alleen lezen) | Sessie e5454061; schrijven BI-004 UNAVAILABLE |
vehicle.constants.list, vehicle.constant.get, vehicle.curves.list, vehicle.curve.evaluate, vehicle.hofs.read | RUNTIME_VALIDATED | Sessie e5454061 |
d3d.status, d3d.texture.create, d3d.texture.describe, d3d.texture.update, d3d.texture.release, weigering van vrijgegeven handles | RUNTIME_VALIDATED | Matrix "basic D3D texture lifecycle"; capabilityopmerkingen bij runtime.d3d.* (sessie 4378899d voor het apparaatslot) |
| Events voor verlies / reset / herstel van het D3D-apparaat, invalidatie van de generatie (RV-007) | RUNTIME_VALIDATED (resetting/restored) | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) D01 sessie fc07946e-58dd-4ddc-af7e-10c7e61a899a: een tijdelijke wijziging van de weergavemodus (testproducent, nooit openbaar, geen synthetische resetaanroep) liet OMSI zijn apparaat twee keer resetten. d3d.resetting/d3d.restored werden uitgezonden, de generatie ging bij elke cyclus omhoog, een verzoek tijdens de reset kreeg OL_E_D3D_RESET_IN_PROGRESS, de texture van vóór het verlies werd geweigerd met OL_E_D3D_STALE_RESOURCE_HANDLE en nieuwe textures werkten. OMSI ging rechtstreeks naar DEVICENOTRESET, waardoor geen afzonderlijke overgang lost werd geproduceerd. Eén poging liet OMSI crashen in DSound.dll (wijziging van het audio-eindpunt van het beeldscherm; de eigenaar herstelde exact). |
events.read / events watch | RUNTIME_VALIDATED | Elke sessie (door telemetrie aangestuurde levenscyclus) |
internal.road-vehicles.make-basic | INTERNAL | Onbereikbaar via openbare interfaces |
Startfuncties#
| Functie | Status | Bewijs |
|---|---|---|
/set en de profielsleutel settings (configuration.options.semantic) | RUNTIME_VALIDATED | RV-005 |
| Sessieprofielen (strikte compiler, conflicten, padbeperking incl. reparsepunten S-17) | RUNTIME_VALIDATED (bereik profielstart) | Round A RA-009, Test-Beta3SessionProfile.ps1, 2026-09-22: beheerd opstartscherm, uitgeschakelde internettextures en preset graphics.maxFPS=30; options.cfg hersteld, fixture intact, geen journal/lease/proces. |
Laden van /spec (limiet van 1 MiB, onbekende eigenschappen geweigerd, timeouts gerespecteerd) (S-20) | STATICALLY_VALIDATED | Tests cli.* |
Beheerd opstartscherm PTB/ENG/DEU/FRA | RUNTIME_VALIDATED | RV-006 |
Internettextures Disabled (onderdrukking van de downloader in het proces) | STATICALLY_VALIDATED | Telemetriepad internet-textures.suppressed; niet vermeld in de matrix |
Doelbewaking voor .itx van internettextures (Round A RA-011/RA-012, correctieronde CP-05, addendum E): canonieke hoofdmap, canoniek doel, relatief pad, segmentregels; alleen een mapsegment met de naam texture onder de hoofdmap komt in aanmerking (mytexture, texture_backup, texture2 en texture in de absolute hoofdmap niet); traversal-, absolute, hoofdmaprelatieve en junctiondoelen geweigerd; schrijfwijzen vallen samen tot één canoniek transactiepad | STATICALLY_VALIDATED | presentation.itx-target-root-normalization, presentation.itx-target-guard-rejections |
Internettextures Override | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md): I01 sessie 6eac2dac-c7e9-49a1-acbf-2a5d59c1c0d3: de downloader van OMSI stuurde HEAD en GET naar een loopbackserver voor een bestaand en een oorspronkelijk afwezig doel, schreef beide, en na de canonieke stop werd het afwezige doel verwijderd en het bestaande byte-exact hersteld; I02 sessie a8f2b720-e41a-4e34-86bf-125bf519a5bd: hetzelfde nadat eigenaar en OMSI waren beëindigd, via /recover. |
/date, /time, /year, weervlaggen, vlaggen voor het spelersvoertuig (STATICALLY_PARTIAL) | UNAVAILABLE | De planner maakt het plan niet uitvoerbaar (OL_E_CAPABILITY_UNAVAILABLE); de plugin weigert datum-/tijdmodi anders dan Unset |
/entrypoint:<identity> (BI-001) | PARTIAL | Plan niet uitvoerbaar (RUNTIME_PARTIAL) |
/last (LastMapState, BI-006) | UNAVAILABLE | UNSUPPORTED_FOR_CURRENT_PROFILE |
Toetsenbord-/controlleroverlays van InputSpec (BI-005) | UNAVAILABLE | Parsers bestaan; niet toegepast |
Headless toewijzing van PlayerVehicle (BI-007), SetActualDateTime (BI-002), ICAO-weerbesturing (BI-003), schrijven van stringvariabelen (BI-004), verplaatsing over tiles heen (BI-008) | UNAVAILABLE | Geblokkeerd totdat de implementatie is afgerond |
Detectie met /list (content.*) | STATICALLY_VALIDATED; runtime waargenomen | discovery.fixture; de afsluitende runtimeronde gebruikte /list:situations op de geautoriseerde installatie (identiteiten inclusief niet-ASCII situations\Nur für Fortgeschrittene.osn) |
/quiet, /serve | UNAVAILABLE | ACCEPTED_FOR_COMPATIBILITY / CURRENTLY_NO_EFFECT |
Diagnostiekvlaggen (/log, /logall, /omsi-logall, /verbose, /trace*) | PARTIAL | Meegegeven in DiagnosticsSpec; effect beperkt tot de hosttrace |
Windows-host en systeemvak#
| Functie | Status | Bewijs |
|---|---|---|
Systeemvakindicator (OmsiLaunchW.exe): pictogram in het systeemvak (meldingsgebied), status, "End session" met bevestiging en Cancel, herstart van Verkenner (Explorer), dialoogvensters die open staan terwijl een stop binnenkomt, stop tijdens /observe-seconds, foutdialoogvensters (S-16) | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) op kandidaat 3 (na fix BUG-04): T01 sessie 6d827c13-caf8-4221-832a-c91d26f130e0 (pictogram gevonden in Shell_TrayWnd, statusvenster in pt-BR, herstart van Verkenner voegde het pictogram opnieuw toe, Cancel hield de sessie in stand, End session beëindigde haar in 607 ms en verwijderde het pictogram); T02 sessie 0939a151-bf03-4ca9-8294-8b0088df7d30 (status- en bevestigingsvenster open tijdens een stop via pipe); T03 sessie 7e6e805d-69c2-47a3-9fa3-4cdccbe3ccb8; T04 sessie 8ddc4cc9-3089-4c0c-b062-f0c526ce0e4a (foutdialoogvensters voor argumentfout, geen actieve sessie en sessiefout, met codes). Shim-exitcodes 100-106 werden niet geproduceerd. |
Herstart met /silent die 0 retourneert wanneer de host is gestart | RUNTIME_VALIDATED | Afsluitende runtimeronde (research/reports/runtime-closure/FINAL-RUNTIME-VALIDATION-REPORT.md) T04 sessie 8ddc4cc9-3089-4c0c-b062-f0c526ce0e4a (kandidaat 3, na fix BUG-03): de launcher retourneerde 0 en een aanroeper die de uitvoer ervan opving, kreeg na 0,4 s het einde van de stream terwijl de OmsiLaunchW-sessie zonder consolevenster draaide; de sessie stopte met een exact herstel |
| Exitcodes 100-106 van de bootstrapper-shim, dynamische padbuffer (S-21) | STATICALLY_VALIDATED | Test-ReleaseIdentity.ps1 |
Hertest van de documentatieaudit (afsluiting van de documentatie voor 0.1.0-beta3)#
Pakket 9F8CC87B238A677F7238C262E8FE0496832263B6C0A58083409EB485C03C6F17 op de geautoriseerde installatie, waarbij BUG-05, BUG-06, BUG-07 en de smoketest zijn herhaald op het definitieve pakket B8462ED6C596843E778C33DF4E93EBA3ACC875B7E43B011D60E5A21A16032E35 (R01 sessie 56cdee4b-9160-49fc-b0fd-5134ff9fe2d0, sessie voor de documentatieopname 40046805-5337-48fc-90dd-e7d3500ed3b4); bewijs in research/reports/documentation-audit/runtime/ en research/reports/OMSILAUNCH-BETA3-FINAL-DOCUMENTATION-AUDIT.md.
| Item | Status | Bewijs |
|---|---|---|
OmsiLaunchW.exe meldt een niet-uitvoerbare start (BUG-06) | RUNTIME_VALIDATED | /new ... /date:2026-09-20 onder OmsiLaunchW.exe: dialoogvenster Requested capability unavailable: world.explicit-date / Code: OL_E_CAPABILITY_UNAVAILABLE, exitcode 1, geen OMSI-proces (doc-bug06-dialog.json; geïnstalleerd pakket 9f8cc87b..., er wordt bewust geen sessie aangemaakt) |
| Geadverteerde CLI-routes zijn echte syntaxis (BUG-07) | RUNTIME_VALIDATED | Elk clientroutealternatief dat door de geïnstalleerde help --json en capabilities --json werd afgedrukt (32 descriptors), werd door de geïnstalleerde parser geaccepteerd; geen enkele drukte de gebruikstekst af (doc-bug07-routes.json; geïnstalleerd pakket 9f8cc87b...) |
| Elke opdrachtregel van de pagina met CLI-voorbeelden | RUNTIME_VALIDATED | 43 clientregels uitgevoerd tegen eigenaarsessie 08df97b8-06cc-4faa-be8b-f49ca1538dce (opgeslagen situatie; events watch overgeslagen omdat dit doorloopt tot Ctrl+C), eindigend met de eigen session stop van de pagina (eigenaar exitcode 0). Alle regels kwamen overeen met de pagina, behalve vehicle.constant.get met name=max_speed, een constante die die bus niet heeft; de pagina gebruikt nu antrieb_getr_version. Het profielvoorbeeld grundorf-quick liet zich niet plannen (verdubbelde backslashes in gewone YAML-scalars) en is gecorrigeerd; elke regel zonder sessie is vanuit de installatiemap uitgevoerd, startregels met /plan (doc-client-examples.json, doc-examples-no-session.json, doc-profile-example.json) |
Smoketest NEW_MAP met /observe-seconds op het definitieve pakket | RUNTIME_VALIDATED | R01 sessie 08570134-cfd8-4726-a472-5f6dd2f04c8f, schone eindtoestand (research/reports/runtime-closure/doc-R01-*) |
Geconsolideerde lijst RUNTIME_VALIDATION_REQUIRED#
De afsluitende runtimeronde van 2026-09-23 heeft de vorige wachtrij afgesloten. Die blijft leeg, op items na die op deze installatie niet veilig kunnen worden geproduceerd:
- Gameplay, leesacties, opdrachten en stop met Steam LAA: vereisen een echte Steam-installatie (omgeving; de rij hierboven is
PARTIAL). - RV-002, verwijdering van RoadVehicle en Human: geen veilige producent voor verwijdering (de rij hierboven is
PARTIAL).
Items die offline blijven omdat ze niet van buiten het product kunnen worden geproduceerd, zijn in hun rijen gemarkeerd en maken geen deel uit van de wachtrij: beschadiging van mailboxantwoorden, te grote antwoorden, afkapping van de eventgeschiedenis, de D3D-overgang lost, afmelden, shim-exitcodes 100-106 en de uitgestelde recoverytak van vóór de vingerafdrukken.
Zie ook: capabilities, bekende beperkingen, transacties en recovery, compatibiliteit.