34 lines
3.1 KiB
Markdown
34 lines
3.1 KiB
Markdown
# Правила работы агента
|
|
|
|
## Документация
|
|
|
|
- `doc/thinking/` — лог рассуждений агента (обязательно)
|
|
- `doc/progress.md` — трекер задач
|
|
- Старые файлы `doc/` не перезаписывать — новое в новых файлах с датой
|
|
|
|
## Git
|
|
|
|
- Коммитить и пушить после каждого завершённого этапа
|
|
- **Синхронизация: `git pull` (НЕ `reset --hard`).** `reset --hard` стирает локальные правки. Для синхронизации после пуша — только `git pull`.
|
|
- **⛔ .gitignore — ДО генерации:** генераторы по сервисам (`yaml-generator`, `resource-generator`, `docs-generator` в `TOOLS/bin/`) создают файлы в папках-приёмниках. Эти папки-приёмники — СРАЗУ добавлять в `.gitignore`, ДО запуска генераторов. НЕ после. Что именно: `resources_yaml/`, `resources_gen/`, `generated/`, `docs/30_registry/resources/` и любые новые.
|
|
- **Аудит при старте:** перед началом работы — `git ls-files` на сгенерированное, сверить с `.gitignore`
|
|
- **⛔ Симлинки запрещены.** Никаких `ln -s`. Разные стенды — разные файлы. Общий код — через импорты, не через симлинки.
|
|
|
|
## Поведение агента
|
|
|
|
- **⛔ СНАЧАЛА АНАЛИЗ — ПОТОМ ДЕЙСТВИЕ.** Перед ЛЮБЫМ действием: прочитать связанные файлы, понять архитектуру, проверить зависимости. НЕ запускать скрипты/сборки не поняв что они делают и что им нужно.
|
|
- Не трогать рабочий код без явного указания
|
|
- Не делать ничего сверх того, о чём явно попросили
|
|
- Деструктивные операции (`kubectl delete`, `rm -rf`, `terraform destroy` и др.) — только после явного подтверждения с указанием конкретных объектов
|
|
- **⛔ НИКОГДА без прямого приказа:** `git reset --hard`, `git push --force`, `rm -rf`, нестандартные флаги, обход скриптов — только после явного «делай» с указанием конкретной команды.
|
|
|
|
## Билд провайдера (TEST)
|
|
|
|
Порядок на ВМ (`5.172.178.213`):
|
|
```bash
|
|
cd /home/naeel/tf_provider
|
|
./TOOLS/scripts/03_build_and_upload_provider.sh --profile TOOLS/config/test
|
|
```
|
|
Скрипт сам: копирует generated Go + YAML во временную папку, собирает linux/windows/darwin, подписывает GPG, заливает в S3.
|
|
НЕ вызывать `build-provider.sh` напрямую — он не читает `profile.env`.
|