PIPELINE
Як працює компіляція
Збірка йде зрозумілим ланцюжком. Якщо щось ламається, лог показує stage, файл, рядок і причину, щоб проблему можна було виправити без здогадок.
Parse
Компілятор читає entrypoint і PHP-файли, перевіряє синтаксис і будує дерево програми.
Autoload
Піднімаються Composer-карти і класи проєкту; зайві файли не потрапляють у збірку, якщо аналіз це доводить.
Analyze
Аналізуються типи, reachable-код, виклики, властивості, масиви, superglobals і можливі runtime-fallback-и.
Generate Go
PHP-конструкції перетворюються на Go: прямі виклики, typed locals, швидкі array/string helpers і runtime тільки там, де потрібна PHP-семантика.
Go build
Згенерований проєкт збирається стандартним go build у бінарник.
Artifact
Результат пакується з manifest, checksum, логами і README_RUN.
Як читати stage у лозі
Parse означає синтаксис або require, FinalCheck — невідомі класи/функції, Codegen — генерацію Go, GoBuild — помилку вже в згенерованому Go-проєкті.
php2go: stage=Analyze static analysis
php2go: stage=Codegen generate Go
php2go: stage=GoBuild command=go build -mod=mod
compile_report: ok