Main Layout в мультимодульном приложении phalconphp

C одномодульным приложением все просто, Action View — app/views/controller/, Main Layout — app/views/index.phtml.
С мультимодульным возникает проблема с использованием общего Main Layout для всего приложения.

В мультимодульном мы имеем папку bundles или modules, кому как нравится. Складываем для каждого модуля все, с ним связанное — как минимум это контроллеры и представления. Из action вызывается соответствующее представление, затем по восходящей — контроллера и модуля. И я не нашел ни намека на представление всего приложения. Единственная настройка на которую падало подозрение — метод setMainView, но он лишь задает название для main layout уровня модуля (main.volt, index.volt, все что придет в голову).
В каждом модуле в представление засовывать полный шаблон — это не дело. Определенные изменения шаблона в таком случае обещают быть весьма увлекательными.
Самый простой вариант, что приходит в голову:
Создаем в корне сайта папку app, в которой будем хранить настройки сайта, скомпилированные шаблоны volt, файлы, к которым закрыт прямой доступ из public и папочку layouts, в которую положим наш основной шаблон сайта index.volt, а также общие елементы страниц, header.volt, footer.volt, leftmenu.volt
К элементам страниц путь зададим через настройку

$di->setShared('view', function() use($config) {
	$view = new \Phalcon\Mvc\View();
	$view->setPartialsDir('../../../app/layouts/');
});

Выяснил опытным путем, что данная настройка понимает только относительные пути, абсолютный путь ей подсовывать бессмысленно.

Ну и по поводу самого главного — main layout приложения — в main layout каждого модуля вписываем всего одну строчку

{% include "./../../../app/layouts/main.volt" %}

Просто инклюдим основной шаблон. Никаких дополнительных затрат это не вызовет — для main layout модуля генерируется не просто строчка инклюда, а полностью вставляется компилированный шаблон приложения.