Megbízott vezérigazgatói átmenet · build status

NRÜ átmeneti tervező

Heti terv, megbeszélések, leirat és elemzés a tízhetes átmenethez. A ledger az authority; ez az oldal abból generálódik.

generated 2026-08-10 02:36 UTC tree b5d7866 (uncommitted changes present) 44 slices from docs/BUILD-LEDGER.md

Overall

43%complete
19 complete20 on production, no suite5 in progress 44 total

Phases

Phase A — a tervező

N1 – N9 · 9 slices

4 complete · 5 on production, no suite

Phase B — a felület

N10 – N16 · 7 slices

7 on production, no suite

Phase C — éles üzem

N17 – N19 · 3 slices

2 complete · 1 on production, no suite

Phase D — leirat és elemzés

N20 – N27 · 8 slices

1 complete · 3 on production, no suite · 4 in progress

Phase E — kontaktok

N28 – N31 · 4 slices

2 complete · 2 on production, no suite

Phase F — szerkesztés és átadás

N32 – N40 · 9 slices

8 complete · 1 on production, no suite

Phase G — hozzáférés

N41 – N43 · 3 slices

2 complete · 1 on production, no suite

Egyéb

N44 · 1 slice

1 in progress

Every module

SliceNameStatusThe ledger’s note
Phase A — a tervező
N1Adatmodell és tároláscompleteHetek, projektek, munkatársak, feladatok, megbeszélések egyetlen JSON dokumentumban. A kezdeti tartalom hivatkozási épségét minden futáskor ellenőrzi a teszt.
N2Megosztott API-rétegcompleteapi.js web-szabványos Request→Response; server.js (fájl) és worker.js (KV) csak adapter. A helyi és az éles változat nem tud elcsúszni.
N3Heti tervon productionÁllapotváltás kattintással, hét-léptetés, fogd-és-vidd. A fogd-és-vidd kézzel, valódi DragEvent-tel igazolva; nincs rá script.
N4Projektekon productionFeladatok, megbeszélések és a projekthez rendelt kontaktok egy helyen.
N5Munkatársakon production95 kontakt, kereső, kétszintű csoportosítás, ragadós adatlap.
N6Megbeszélésekon productionNapirend, előkészítő ellenőrzőlista, résztvevők, jegyzetek, döntések.
N7Döntésből feladaton productionEgy gombbal feladat lesz a döntésből, viszi a projektet és a hetet.
N8Mentés és visszatöltéscompleteExport/import kör tesztelve, a nem-gyűjtemény kulcsok (szótár) megmaradnak.
N9Önellenőrzéscompletenpm test — adatépség, CRUD, jelszókapu, sorrend, séma, telefonszám. 2026-08-10: a hét-folytonosság ellenőrzése ezredmásodperc-kivonással készült, és az óraátállítás hetén (25 óra két éjfél közt) hamisan bukott. Naptári napléptetésre cserélve, plusz minden hét hosszát is méri.
Phase B — a felület
N10Teljes magyar nyelvon productionFelület, kezdeti tartalom, súgó, szerverüzenetek. A tárolt állapot- és prioritásértékek szándékosan angolok maradtak.
N11Tipográfiai skálaon productionHárom méret (11/14/18), a másodlagos szöveget szín, a mikrócímkéket nagybetű különbözteti meg.
N12Mobil elrendezéson productioniPhone 11 (414 pt) mérve: nincs vízszintes görgés, a táblázat kártyákká alakul, 40 pt koppintás.
N13Fejléc és menüanimációon productionNagybetűs menü, alsó vonal 0,15 mp átmenettel — az event.clinic site mintája.
N14Beállítások, fogaskerékon productionMentés/visszatöltés, szótár, súgó a főmenüből kivéve.
N15Törlés elrejtéseon productionÖsszecsukott „Veszélyes műveletek"; zárt állapotban nem is kattintható (találatvizsgálattal mérve). Feladat csak megnyitva törölhető.
N16Csoportosítás és összecsukáson productionSzervezet → egység, magyar ábécérend, nyilak, ragadós adatlap, görgetés-megőrzés újrarajzoláskor.
Phase C — éles üzem
N17Cloudflare Worker és KVcompleteA felület szövegmodulként a Workerbe fordul, nem statikus eszközként — így a jelszókapu az oldalra is érvényes.
N18JelszókapucompleteSüti HttpOnly + Secure + SameSite=Strict, a jelszót nem tartalmazza. Hamisított süti elutasítva. A Worker jelszó nélkül semmit nem szolgál ki és a tárolóba sem ír.
N19nruceo.event.clinicon productionEgyéni domain, HTTPS. Telepítés után szórványos Cloudflare 1104 jelentkezhet néhány percig — propagáció, magától elmúlik.
Phase D — leirat és elemzés
N20Böngészős hangfelvételon productionMediaRecorder, biztonságos kapcsolat kell (localhost vagy https).
N21Több hangfájl feltöltésecompleteSorrendhelyes összefűzés, hozzáfűzés sosem felülírás, hibás fájl nem akasztja meg a mögötte lévőket — mind tesztelve.
N22Soniox átiraton productionÉlesben lefutott: két munka completed, 30 806 és 10 498 karakter.
N23Beszélők szétválasztásain progressJavítva 2026-08-08, azóta nem futott le újra. A régi kód a Soniox sima text mezőjét részesítette előnyben, és eldobta a token szintű beszélőadatot — 41 358 karakter érkezett nulla beszélőjelöléssel. Most a tokenek élveznek elsőbbséget. Egy új felvétel igazolná.
N24Szigorú magyar és szótárin progressTelepítve 2026-08-08, azóta nem futott le újra. language_hints_strict bekapcsolva; a context.terms a valódi kontakt- és projektnevekből épül, plusz a kézi szólista. A felismerés minőségére még nincs mérés.
N25Meglévő leirat beillesztéseon productionBeillesztés vagy szövegfájl (.txt, .md); Word nem olvasható, másolni kell belőle.
N26Claude elemzésin progressLefutott élesben, de 0 döntést és 0 feladatjavaslatot adott (1301 karakteres összefoglaló mellett). A valószínű ok az N23/N24 rossz minőségű leirata, amit azóta javítottunk — újrafuttatás nélkül ez feltételezés, nem tény.
N27Résztvevők felismerésein progressA séma és a beillesztés kész és telepítve; egyetlen valódi hívás sem futott le rajta. Csak hozzáad, sosem vesz ki, és zárt listából választhat.
Phase E — kontaktok
N28NRÜ névsorcomplete49 fő a hivatalos listából, nyolc szervezeti egység, telefonszám/e-mail/szobaszám. Generálva, nem kézzel gépelve.
N29Külső kontaktokon production46 fő a levelezésből, kilenc külső szervezet. 16 rekordnál csak e-mail-cím ismert — a nevet szándékosan nem vezettük le a címből.
N30Szervezet és projekt szerinti bontáson productionHáromféle csoportosítás; a projektkapcsolat kétirányú (személynél jelölhető, projektnél listázódik).
N31Telefonszám egységesítéscomplete+36 30 335 8792 alak. A mentés útjába építve, tehát új szám is rendbe jön. Tíz eset tesztelve, a 06-os, 0036-os, vezetékes és külföldi alakkal együtt.
Phase F — szerkesztés és átadás
N32Mentetlen módosítás őrzésecompleteGépeléskor a rekord „mentetlen" lesz; továbblépéskor rákérdez, ablakbezáráskor a böngésző kérdez. A jelölés a küldés ELŐTT kerül le, és hiba esetén visszakerül. Mért korlát: a mezők kilépéskor amúgy is mentődnek, ezért a figyelmeztetés ritkán szólal meg — biztonsági háló, nem a mentés fő útja.
N33Mentés gomb csak változáskorcompleteA gomb és a „Mentetlen módosítás" felirat alapból nincs jelen; leütésre jelenik meg, mentés után eltűnik. Böngészőben mérve: mentetlenül hidden=true, gépelés után false.
N34Szervezet és egység elkülönítéseon productionHáttérsáv a csoportfejléceken: a szervezet sötétebb (#e7ebf1), az egység halványabb (#f1f4f8), a nevek fehéren. Bal oldali kiemelő csík.
N35Mobil névsor kártyák nélkülcomplete414 pt-en mérve: a névsor függőleges lista marad (a többi lapé vízszintes csík), a csoportfejlécek ragadósak, a sávok teljes szélességűek, nincs vízszintes görgés, 44/54 pt koppintás. Korábban a szervezet és az egység is külön csempévé vált, és elszakadt a hozzá tartozó nevektől.
N36Projektek a menü végéncompleteSorrend: Heti terv, Munkatársak, Megbeszélés, Átadás-átvétel, Projektek.
N37Több felelős egy feladatoncompleteownerPersonIds tömb; a régi ownerPersonId tükörként megmarad és az elsőt mutatja. A felhozatal minden olvasásnál lefut, tehát a régi mentés és az éles adat is igazodik. A választóban a kattintás kapcsolgat, mert a natív Ctrl-kattintás néma adatvesztés annak, aki nem ismeri.
N38Napirend és döntések soronkéntcompleteEnter új sort nyit, Shift+Enter sortörést; a ✕ töröl, az üresre törölt sor magától kiesik (kivéve, ha feladat tartozik hozzá). A mezők a tartalommal nőnek és zsugorodnak — 33→75 px, illetve a jegyzeteknél 120→558→120 px, valódi nézetablakban mérve.
N39Döntésenkénti felelős és feladatcompleteMinden döntés saját felelőst kap; a belőle készült feladat viszi a felelőst és a megbeszélés projektjét, ezért megjelenik a munkatárs és a projekt feladatai között is. Végigpróbálva.
N40Átadás-átvétel modulcompleteHét fajta tétel (állapot, döntés, kockázat, kapcsolat, folyamat, dokumentum, feljegyzés), „kész az átadásra" jelölés és számláló, mellékletek húzd-és-ejtsd módon. A melléklet tartalma külön tárolóba kerül (KV-kulcs, illetve helyben külön fájl), NEM a db dokumentumba: egyben a KV 25 MB-os kulcsmérete pár melléklet után elfogyna. A tétel törlése a tartalmat is elviszi — teszttel igazolva.
Phase G — hozzáférés
N41Jogosultsági mátrixcompleteauthz.js: 17 kulcs <család>.<levél> alakban, öt szerep. Az event.clinic konvencióit követi, hogy a két rendszer később összeilleszthető legyen. A korlátozás a kiszolgálón él, minden végponton; a felület elrejtése csak kényelem.
N42Személyes adatok maszkolásacompleteA tiltott mező KIMARAD a válaszból, nem nullázódik — a null azt állítaná, nincs adat. Véd: más telefonszáma, e-mailje, szobaszáma, jegyzete; és a megbeszélés leirata, elemzése, jegyzete. A saját adatlapját mindenki teljesen látja. Amit nem lát, azt nem is írhatja felül.
N43E-mailes belépési linkon productionEgyszer használatos, fél óráig élő token, csak hasítva tárolva; aláírt munkamenet-süti szerveroldali lista nélkül. Brevón megy ki, az event.clinic végpontjával és feladójával. Éles hívás még nem futott le rajta: a BREVO_API_KEY nincs beállítva a Workeren (lásd Q8). A token- és aláírás-logika teszttel fedve.
Egyéb
N44Tükrözés az event.clinic adatbázisábain progressdb/001-nru-schema.sql + scripts/sync-to-eventclinic.mjs. Additív nru séma, hat tábla, minden soron raw jsonb a teljes eredeti rekorddal. Egyirányú és idempotens; a forrásból eltűnt sort törli is. A DEV adatbázisra felvive és lefuttatva (12 hét, 5 projekt, 95 fő, 40 feladat, 2 megbeszélés), a törléskövetés hamis sorral igazolva. Az ÉLES event.clinic adatbázishoz nem nyúltunk — az a tulajdonos döntése (Q9).

What “done” means here

Done means a verification script exited zero on the committed tree. Not that somebody opened the screen and it looked right, and not that an agent reported success. Every slice marked complete above has a script in scripts/ that exits 0 against the code as committed; a slice whose script has not exited 0 in a single run is not complete here, whatever else was built. Nem tud semmit igazolni, ami élő Soniox- vagy Anthropic-hívást igényel.

Run every gate at once:
npm test

Run it locally

# 0 · függőségek, egyszer
cd ~/Documents/nru-transition-planner && npm install
# 1 · a tervező helyben
cd ~/Documents/nru-transition-planner && npm start   # :4747
# prove the tree before believing any status above
cd ~/Documents/nru-transition-planner && npm test
# telepítés élesbe
cd ~/Documents/nru-transition-planner && npx wrangler deploy

Helyben nincs jelszó; élesben a fogaskerék alatt van a mentés, a szótár és a súgó.

Screens with data

Screen
Open at
What is on it
Heti terv
landing
http://localhost:4747/#planner
Az aktuális héttel nyílik, előre-hátra léptethető
Projektek
list + detail
http://localhost:4747/#projects
Feladatok, megbeszélések és a projekthez rendelt kontaktok
Munkatársak
list + detail
http://localhost:4747/#people
95 kontakt, szervezet → egység bontásban, keresővel
Megbeszélés
signature
http://localhost:4747/#meetings
★ Leirat, elemzés, résztvevők — a termék lényege
Beállítások
diagnostic
http://localhost:4747/#settings
Mentés/visszatöltés, felismerési szótár, súgó
Éles változat
production
https://nruceo.event.clinic/
Jelszó mögött, Cloudflare KV-vel