Если кому надо то вот дока
requirejs.org/docs/api.html#circular
Или решение для конкретного случая, когда Task требуется на этапе выполнения, а не на этапе декларирования состоит в том, чтобы объявить в замыкании имя Task, а запись в него элемента нужного компонента доверить той-же require
define('model/stage', [
'common/model'
], function(
Common
){
var Stage = {};
var Task; // объявляем имя в замыкании
require(['model/task'],function(module){ // просим загрузить нам указанный модуль, когда появится возможность
Task = module; // записываем в объявленное имя наш полученный модуль, но само собой, нет гарантии когда это произойдет
});
. . .