Общий контекст задачи звучит как чистая выгода: чем больше сессия знает о проекте, тем меньше приходится объяснять. Spaces в Devin Desktop именно это и дают - и именно поэтому Space легко превратить из инструмента в свалку. Space объединяет сессии, PR, релевантные файлы и контекст проекта, а новая сессия внутри него наследует накопленное знание. Пока вы видите в этом только экономию объяснений, вы не замечаете второй половины: наследуется всё, что в Space лежит, включая ошибки.
Наивный ход прямой: раз наследование удобно, свалим все сессии в один общий Space, чтобы каждая знала всё обо всём. Кажется, что так агент никогда не будет в неведении и вопросы отпадут сами. Инструмент к этому располагает - сессии легко группируются, - и первое время кажется, что чем шире общий контекст, тем умнее агент.
Ломается это на природе контекста: контекст - это не только факты, но и всё остальное, что в него попало. Документация описывает Space как объединение сессий, PR, файлов и контекста проекта с наследованием в новых сессиях, и важная деталь в том, что каждая сессия по умолчанию уже сама себе Space. То есть заранее городить общие пространства не нужно; группировка возникает по мере работы. А раз наследуется весь общий контекст, то спорная гипотеза, записанная как факт, наследуется наравне с проверенным решением.
Профессиональный механизм здесь - группировать осознанно и держать содержимое чистым. Наследование управляется настройкой devin.spaces.shareContext: новая сессия берёт контекст Space, когда оно включено. Собрать Space можно несколькими путями - перетащить одну сессию на другую в sidebar, чтобы слить их в общее пространство; нажать Cmd/Ctrl+\ для split и завести новую сессию в пустой области; открыть свежую сессию внутри текущего Space по Cmd/Ctrl+T. Но сам факт, что группировать легко, не означает, что группировать нужно всё подряд.
Почему группировать стоит только связанные ветви одной цели, а не всё сразу. Space полезен ровно настолько, насколько его общий контекст релевантен каждой входящей в него сессии. Две задачи об одной подсистеме выигрывают от общего знания; две несвязанные задачи в одном Space лишь делятся друг с другом шумом, который ни одной из них не нужен. Общий контекст - это усилитель: он усиливает и полезное, и вредное одинаково.
Цена невнимания к чистоте контекста конкретна: shared context загрязняется так же, как загрязняется любой общий ресурс. Спорную гипотезу, добавленную как факт, унаследуют все новые сессии Space и будут действовать так, будто она доказана. Устаревшее решение, не удалённое после смены направления, продолжит уводить агента по старому пути. Чем шире Space, тем дороже такая ошибка, потому что она тиражируется на всех наследников разом. Дешевле поддерживать чистоту постоянно, чем однажды вычищать общий контекст, на который уже опёрлись несколько сессий.
Оправдан общий Space там, где у нескольких сессий действительно одна цель и общее знание о ней экономит повтор. Признак такой ситуации - вы можете назвать одним предложением, чему служит этот Space и почему каждая его сессия в нём уместна. Если такого предложения не находится, перед вами не Space, а склад разнородных чатов, случайно оказавшихся рядом.
Проверять здоровье Space стоит по его закреплённому содержимому, а не по числу сессий. В общий контекст закрепляют то, что проверено и полезно всем: acceptance criteria, принятые решения, ссылки на артефакты. Оттуда удаляют устаревшее после каждой смены направления. Здоровый Space читается как краткая карта задачи; больной - как история переписки, в которой не отличить факт от догадки.
Отсюда инженерный приём: обращайтесь с общим контекстом строже, чем с личной заметкой, а не свободнее. В личной сессии неточность стоит вам одному; в Space она стоит всем наследующим сессиям. Поэтому спорное помечают как спорное или не кладут в общий контекст вовсе, а решения и критерии формулируют так, чтобы их можно было проверить, а не просто прочитать. Это приём дисциплины, а не функция продукта: система хранит что дали, ценность содержимого - на вас. Практический тест прост: прочитав только закреплённый контекст Space, посторонний должен понять задачу и не принять ни одной догадки за установленный факт.
Типичный провал - один гигантский Space, в который стекается всё, и гипотеза, записанная как факт. Симптом узнаётся легко: новые сессии стартуют с уверенными утверждениями, которых никто не проверял, а найти, откуда взялось предположение, уже нельзя. Прежде чем расширять Space, спросите, служат ли все его сессии одной цели и не лежит ли в общем контексте недоказанное как доказанное - чаще всего беспорядок именно там, а не в агенте.