JavaRush /Курсы /Claude Code SELF /Scope: где задача заканчивается

Scope: где задача заканчивается

Claude Code SELF
15 уровень , 1 лекция
Открыта

1. Scope как контракт с агентом

Олег начинает не с кода, а с вопроса, который Тёма раньше себе не задавал:

— Вот ты ИИ написал «поправь вот это». А где задача-то заканчивается? До какого места ему можно?

Тёма открывает рот — и закрывает. Сказать нечего. Он перебирает в голове, что именно написал Сане, и натыкается на дыру.

— Так я… — он мнётся. — Я ж только сказал, ЧТО сделать. Поправь вот эту штуку. А где остановиться — нигде. Ни слова. Даже в голову не пришло, что это надо проговаривать.

— Вот и ему не пришло, — кивает Олег. — Ты ему дал одну цель — он к ней попёр напрямую. И по дороге прихватил всё, что показалось «заодно будет лучше». Не потому что вредный. Потому что границы нигде не было, а где её нет — там её для него и не существует.

— В своём коде ты на это забивал, — продолжает Олег, — и правильно делал, между прочим. Потому что в своём ты и так чувствовал, куда лезть не надо: рука сама обходила. А тут чувства нет — откуда ему взяться, ты этот файл первый раз видишь. Значит, то, что раньше тебя вело само, тут придётся писать руками. Прямо словами: досюда — можно, дальше — нельзя.

Вот это «досюда можно, дальше нельзя» и называется scope — рамки задачи. И ставится он не в голове, а прямо в постановке. У Тёмы уже неделю была привычка к нормальному ТЗ — с «что сделать» и «как доказать». Сейчас в это ТЗ, похоже, добавляется третья часть, которой раньше не было: запретный блок. Не просто «почини sponsor block», а явно — работать только внутри вот этой зоны; чужую вёрстку подрядчика, соседние модули и внешний контракт не трогать вообще.

Тема, глядя на это, пытается найти знакомую аналогию, чтоб мысль легла до конца:

— Это контракт, по сути. Тебя позвали в чужую квартиру починить кран в ванной. Значит, ты чинишь кран — и всё. В спальню не заходишь, обои на кухне не трогаешь, мебель не переставляешь, даже если тебе кажется, что «вот так было бы удобнее, я ж вижу». Может, и удобнее. Но тебя про это не просили, и квартира не твоя. Рамки задачи — это договор между тобой и тем, кто позвал. Захотел шире — спроси отдельно, получи отдельное «да». А молча вышел за рамки, потому что «по дороге же» — это уже не помощь, это нарушение, даже если из лучших побуждений.

— И с ИИ-агентом то же самое, — подхватывает Олег. — Только агент про спрос вообще не подумает. Человек хоть постесняется лишнего, а этот попрёт.

Тёма дописывает запретный блок и сам подводит итог, пусть коряво:

— То есть scope — это не «что я хочу сделать». Это «докуда вообще разрешено зайти». Граница, а не желание. И её надо положить в ТЗ так же твёрдо, как саму задачу, иначе агент решит за меня — и решит вширь.

— Вот, — кивает Олег. — Теперь хоть понятно, где твой ИИ должен остановиться.

2. Топография чужого кода: где спрятаны мины

Дальше Олег даёт то, чего ни один агент Тёме не дал бы — карту местности по чужому файлу. Не философию, а конкретные грабли.

— Смотри сюда, — тычет он в кусок, который Саня бодро «причесал». — Вот этот отступ выглядит как лишний. Косметика, ничего же не значит, да? А он держит блок. Уберёшь — поедет вся колонка вправо, и спонсорские логотипы расползутся по странице, как горох. И вот тебе на ровном месте сломанная партнёрская зона, и звонок от Антона «у нас всё развалилось». В чужой вёрстке половина того, что выглядит мусором, на деле несущее. Просто ты не видишь карту, которую видел автор, когда это писал.

Тёма смотрит на этот отступ, потом на соседний — и правда не понимает, чем один важнее другого. Снаружи они близнецы, два одинаковых пробела. В своём коде он бы сразу знал, который тут зачем. Здесь — пусто, никакого чутья, только слово Олега. И это слегка пугает: вся опора на собственное чутьё, которой он гордился, тут просто не включается.

— И вот ещё, — Олег ведёт дальше. — Видишь, ИИ тут одну штуку переименовал «для красоты»? В своём коде это мелочь на две секунды. А тут эта штука торчит в пяти местах сразу, по всему файлу. И если переименовать её не везде, а только тут — половина страницы отвалится молча. Без ошибки, без красного текста, без единого крика. Просто кусок перестанет работать, а ты будешь сидеть и гадать, почему вчера было хорошо, а сегодня нет. И связь между «ИИ причесал имя» и «отвалился блок» ты найдёшь не сразу.

Тёма откидывается на стуле. Главное правило чужой квартиры выходит неуютным.

— Получается, в своём доме я бог, — говорит он. — Знаю наизусть, что несущее, что декоративное, что можно снести, а что держит потолок. А тут карты нет вообще. Значит, по умолчанию любое изменение опасно, пока не докажу обратное. Не «улучшаю по дороге, раз уж зашёл». А «трогаю ровно то, что просили, и каждый сдвиг разглядываю отдельно, как сапёр».

Презумпция перевернулась, — подтверждает Олег. — Дома всё безопасно, пока не доказано, что нет. Тут всё опасно, пока не доказано, что да.

— Получается, осторожность тут — это не занудство, — говорит Тёма. — Это просто я не вижу, где провода под штукатуркой.

Олег хмыкает почти одобрительно. И опять без подкола.

3. Проговорить задачу вслух

Тёма отворачивается от чужого кода — глаза уже не глядят. И видит: Олег выдвигает ящик, достаёт жёлтую банку из-под пива, мятую, ставит справа от монитора, на затёртый кружок в пыли.

— Ну и куда ты дел инициализацию, — говорит Олег банке. — Тут нет. Тут тоже нет. А если ты её вообще не звал, то… — он замолкает, щёлкает мышкой, кивает. — Ага. Не звал.

Банка отправляется обратно в ящик.

— Дядь Олег, а где Васька? — спрашивает Тёма. — У тебя ж тут утка стояла.

— Выкинул.

— Ваську?!

— Того. — Олег наконец поворачивается. — Двадцать лет я с ним вот так разговаривал. Задачу вслух проговоришь — она и распутывается. Меня так учили, я так работал, и работал, между прочим, неплохо. А теперь у вас ИИ. Написал две фразы — проект готов. Вот и вся моя школа.

Он кивает на задвинутый ящик.

— Выкинул, а он не выкидывается. Вот банка теперь. Смешно же, да? Мужик разговаривает с банкой. А работает.

Он разворачивается к монитору.

— Ты инициализацию искать собирался или мы тут беседуем?

4. Постановка задачи — то же ремесло

Тёма разворачивает к Олегу экран — показать, как теперь пишет агенту задание. Не «сделай красиво», а «сделай вот это, дальше не лезь, покажи дифф». С границей, с запретным блоком, с требованием доказательств. И ловит, что говорит с Олегом спокойно, на равных, а не отбивается от подколок, как весь месяц.

Олег читает — и замолкает над текстом. А пока читает, Тёма дописывает Сане ещё пару строк и спокойно, не глядя, шлёт — как давно привычное дело. Олег ловит это краем глаза: вот сидит вчерашний раздолбай, гоняет ИИ по всякому, не вспотев, и ИИ слушается. И что-то в Олеге проседает.

— Знаешь, что смешно, — говорит он вдруг, и яда в голосе нет, а есть что-то поглуше. — Я ж думал, таких, как ты, мир сметёт первыми. Наляпают на коленке, кое-как, без головы — и отвалятся. Сидел и ждал. — Он кивает на экран, где Саня молотит по Тёминому слову. — А выходит, сметёт-то таких, как я. Кто всё руками, по-честному, медленно. Я думал, у меня фора. А фора, выходит, у тебя.

Тёма открывает рот ответить шуткой — и не находит её. Олег не подкалывает и не жалуется. Просто сказал вслух то, что, видно, давно лежало.

— Это ж обычная постановка задачи, — говорит Олег чуть погодя, ровнее, словно сам себя возвращает на твёрдое основание. — Я точно так же годами джунам задачи писал. Что сделать, чего не трогать, как сдать. Граница — она граница и есть, человеку ты её ставишь или этой твоей нейросети. Никакой магии. Дисциплина. — И тише, будто себе: — Может, и не сметёт, если я тоже научусь.

— А я думал, ты про «вашу магию» опять начнёшь, — осторожно хмыкает Тёма.

— Так это и не магия. Это как раз то, что я уважаю. — Олег возвращает экран. — Старая школа - это ж про то, как читать чужое. Где не верить внешней аккуратности, почему в таких местах скорость вреднее осторожности. Я это годами копил, своим горбом, когда никаких агентов и в помине не было.

Тёма слушает и впервые не отмахивается. Весь месяц он принимал это за занудство старого айтишника — а сейчас слышит ремесло, которого у него самого нет.

И под конец Олег говорит то, чего Тёма от него никак не ждал:

— Слушай. Если эта возня в подрядческом коде займёт дольше, чем Антону хотелось бы, — я прикрою. Скажу, что так и надо. Лучше медленнее и чисто, чем быстро и опять заложить мину в чужой части портала.

Тёма смотрит на него секунду. Весь месяц Олег подкалывал его за «игрушки» — а тут вдруг готов прикрыть, и не за ИИ, а ровно за то, что Тёма решил делать аккуратно.

— Не «давай схалтурим вместе», — медленно проговаривает Тёма.

— Не. Сделаем чисто. Просто без спешки.

И от этого «сделаем» внутри теплеет иначе, чем от обычного офисного «вау» на его анимации.

1
Задача
Claude code, 15 уровень, 1 лекция
Недоступна
Fresh CLI fitness check через короткий шаблон
Fresh CLI fitness check через короткий шаблон
1
Задача
Claude code, 15 уровень, 1 лекция
Недоступна
Исправление Java-сервиса оценки пригодности multi-agent
Исправление Java-сервиса оценки пригодности multi-agent
Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ