Layout
Ez a legfontosabb eltérés a többi modulhoz képest. Minden más modul azonnal ír lemezre minden mentéskor. A Layout kivétel:
- A Layout mindig élőben, számolt nézetként jeleníti meg, amit a Flow + Structure + Schema + Design modulokból éppen össze lehet állítani — derivált nézet, nem önálló, kézzel szerkesztett adat.
- Amíg a felhasználó nem nyomja meg a „Létrehozás" gombot, a lemezen semmi nem jön létre ebből — a UI-ban látja a leendő struktúrát, de az „csak tudás", nem fájl.
- A gombnyomáskor az engine egyszeri, determinisztikus lépésben kiírja: a
structure/tree.json-t és astructure/scaffold/fájlokat. - Ismételt gombnyomás = újraszámolás, nem duplikálás. A tartalom-alapú írás szabálya itt is érvényes: ha semmi nem változott, nincs fájlírás.
- A scaffold-generálás sosem ír felül már létező fájlt (Go-teszt védi) — ha a felhasználó vagy egy agent már elkezdett kódot írni egy scaffold-fájlba, a Generate nem törli.
(A képernyőkép pótlása folyamatban.)
Miért ez a kivétel
A Layout folyamatosan változna a többi modul minden apró szerkesztésével. Ha minden Flow-node-mozgatás azonnal átírná a célprojekt fájlstruktúráját, az zajos, visszafordíthatatlan git-history-t generálna a célprojektben. A gomb a „most már tényleg ezt akarom" pillanatot jelöli.
Scaffold header comment
Minden generált scaffold-fájl elejére komment kerül:
// Part: PART-12 · "Bejelentkező form" · Oldal · todo
// Forrás: flow-node FLW-002:n4
// User Story: DEV-003 — Bejelentkezés
// Írj ide kódot.
Meglévő vs. generálandó jelölés
A scan.BuildIndex(root) végigjárja a célprojekt fáját, és a Layout minden node-ját megjelöli:
zöld pötty a már létező fájlokra/mappákra, üres karika a generálandókra (leaf-név
szerint, monorepo-barát). A layout-page.tsx „N új · M törölt" jelzést mutat a legutóbbi
generálás óta.