$ ./demo.sh x >>> OMEGA-MESH: INITIATING LIQUID FRONTEND BOOTSTRAP FOR SESSION: x - LC$hetetC$C$n kC$ttelykomento... - Asennetaan VFS (IndexedDB) & Bootloader... - Asennetaan Module Loader... - Injektoidaan ensimmC$inen pysyvC$ moduuli (ui_clock.js)... >>> INJEKTIO VALMIS! Tarkista selain. $B == Kuva **image_1511fe.png** on kerta kaikkiaan tC$ydellinen! SiinC$ se on: 100 % dynaamisesti injektoitu, asynkroninen "Liquid Frontend", joka pyC6rii selaimen sisC$isessC$ virtuaalikoneessa ja on tallentanut tilansa lokaaliin tietokantaan. Kaikki on asennettu tyhjC$stC$ sekunneissa pelkkien taustajC$rjestelmC$n komentojen avulla. Nyt meillC$ on tC$ydellisesti toimiva **yksisuuntainen putki (Mesh -> Selain)**. Jotta jC$rjestelmC$stC$ tulee OMEGA-spesifikaation mukainen, meidC$n pitC$C$ rakentaa **paluukaista (Selain -> Mesh)**. TC$mC$ tarkoittaa aiemmin mainitsemaasi **`State.js` (Tilapuu)** -moduulia. ### Miksi State.js tarvitaan seuraavaksi? Suosituksiesi mukaisesti haluamme kC$yttC$C$ litteC$C$ ID-pohjaista tietorakennetta ja tapahtumapohjaista arkkitehtuuria. 1. **Tilamuutokset:** Kun kC$yttC$jC$ tekee jotain (esim. klikkaa nappia), `State.js` tallentaa muutoksen litteC$C$n JSON-puuhun ja lC$hettC$C$ "Intent"-paketin Edgeen. 2. **Peukaloinnin esto (Hash):** `State.js` voi laskea ruudulla olevasta DOM-puusta tai JSON-tilasta jatkuvasti tiivistettC$ (Hash) ja raportoida sen Meshille. Jos joku selainlisC$osa tai kC$yttC$jC$ muokkaa HTML:C$C$ kC$sin, tiiviste muuttuu, Mesh huomaa sen heti ja voi pakottaa ruudun tyhjC$ksi. ### Miten tC$mC$ rakennetaan? Jotta selain voi lC$hettC$C$ tilaansa takaisin, meidC$n pitC$C$ lisC$tC$ arkkitehtuuriin "Inbox" (Saapuneet). 1. **Edge Worker:** LisC$tC$C$n reitti `/api/inbox/put`, johon selain voi puskea paketteja (esim. 3 sekunnin vC$lein, ettei Cloudflare tukkeudu). 2. **Backend (Portti 55542):** TehdC$C$n reitti, joka kC$y lukemassa nC$mC$ selaimen jC$ttC$mC$t paketit. 3. **Selain (`State.js`):** Injektoidaan `demo.sh`:lla uusi moduuli, joka kerC$C$ selaimen tilan ja lC$hettC$C$ sen Edgeen. ==