Przejdź do treści

Skills

build-the-gate-before-the-content

Kontrola dodana po tym, co ma strzec, to kontrola, którą ktoś wyłączy, żeby wydać. Zamknij ją, póki nie ma czego blokować.

WzorzecPochodzenie: cleanStatus: activev0.1.0 · Apache-2.0

Nadane przez osobę, która przeczytała kartę, a nie deklarowane przez sam plik. Karta, którą agent destyluje podczas przebiegu z niezaufaną treścią, rodzi się skażona i czeka na recenzję, zanim kiedykolwiek zostanie pobrana.

Kiedy przychodzi na myśl

  • planowanie migracji
  • start nowego obszaru
  • lint dodamy później
  • ustalanie kolejności prac

Wartość zwykle kryje się w Unikaj i Sprawdź. Rób to sekcja, którą pisze każdy.

Treść karty powyżej to tłumaczenie. Angielski oryginał jest tym, co importuje CLI, co agent czyta w czasie działania i czego dotyczy hasz poniżej.

Wyzwalacz

Masz zamiar zbudować coś, co będzie wymagało egzekwowanej w całości reguły — ograniczenia stylu, sprawdzenia świeżości, schematu, walidatora linków, budżetu. Naturalna kolejność to zbudować rzecz, a sprawdzenie dodać dopiero, gdy będzie już co sprawdzać.

Nie dotyczy to sprawdzenia dodawanego do kodu, który już istnieje; to inne i trudniejsze zadanie, a odpowiedzią jest tam grzechotka (ratchet), nie ściana.

Rób

  1. Dodaj sprawdzenie w pierwszym commicie, zanim będzie jakakolwiek treść, na której może zawieść. Przechodzi trywialnie, i o to chodzi: zaczyna życie na zielono.
  2. Nadaj mu komunikat błędu, który mówi, co uruchomić. Bramka, której wyjściem jest assert False, zostaje usunięta przez pierwszą osobę, która na nią trafi o drugiej w nocy.
  3. Napisz sprawdzenie tak, by zawodziło na pierwszym naruszeniu, a nie na setnym. Grzechotki są dla starego kodu; greenfield zaczyna od zera.
  4. Gdy sprawdzenie faktycznie zadziała, napraw treść. Za każdym razem, gdy zamiast tego zmieniasz sprawdzenie, zanotuj w commicie, który przypadek to wymusił.

Unikaj

"Włączymy to, jak strony będą napisane." Do tego czasu sprawdzenie ma już zaległości, włączenie go oznacza dzień niepowiązanych poprawek, a najtańszą ścieżką jest lista skip, która nigdy się nie kurczy.

Unikaj też rozluźniania bramki w tym samym commicie co funkcja, która ją uruchomiła. Rozluźnienie jest niewidoczne w dużym diffie, a to właśnie moment, w którym bramka przestaje nią być — więc powinno mieć własny commit z własnym wyjaśnieniem.

Sprawdź

Wprowadź naruszenie celowo i potwierdź, że build robi się czerwony — a potem je usuń. Zrób to w dniu, w którym piszesz bramkę, nie później.

Bramka, której nikt nie widział, jak zawodzi, nie jest bramką; jest plikiem, który udaje, że nią jest.

Ryzyko

Bramka napisana przed treścią zaszywa założenie o treści, która jeszcze nie istnieje, a niektóre z tych założeń okazują się błędne. Spodziewaj się, że będziesz musiał ją zawęzić raz czy dwa na początku.

To zawężanie to niebezpieczny moment. Każde z nich osłabia regułę, a reguła zawężona trzy razy bez czyjejkolwiek uwagi to reguła, która przestała pokrywać przypadek, dla którego została napisana. Przypnij każde zawężenie do zawodzącego przykładu, który je wywołał.

Jak użyć

Karta to dane. Sklonuj repozytorium i zaimportuj ją ścieżką — to, co przychodzi przez sieć, jest traktowane jako skażone i wstrzymywane do zatwierdzenia. Taki jest pożądany sposób działania i dlatego nie ma tu instalatora w jednej linijce.

git clone https://github.com/brcampidelli/chimera-agent.git
chimera skills-import chimera-agent/skills/build-the-gate-before-the-content/SKILL.md

Integralność

SHA-256 pliku w postaci opublikowanej. Importujący może sprawdzić, że otrzymał dokładnie to, co pokazała ta strona.

58c3de3bf7323fb3be38d084394e45ff97e408c20c45db31749cde2b8a13fc81

Przeczytaj kartę w repozytorium