Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

Dokončení

typovaný výsledek a smlouva vyhodnocená řádek po řádku; pokud selže kterýkoli řádek, nic se nezapíše

typovaný výsledek a smlouva vyhodnocená řádek po řádku; pokud selže kterýkoli řádek, nic se nezapíše

Kde to žije

Stav, který vlastní

  • .ai/local/state/ledger.jsonl

Příkaz, který na to působí

majordomus finish

Vyhodnotí smlouvu o dokončení a odmítne výsledek, pokud je jakýkoli její řádek nesplněn.

  • mění stav
  • aktivní úloha volitelná
  • --json
majordomus finish --outcome <completed|partial|blocked|no_match|failed> [--verify-command "<cmd>"] [--note <file>]

Podívat se, jak odmítá a jak přijímá

Vyberte situaci a podívejte se, zda je výsledek přijat, nebo odmítnut, a z jakých důvodů. Každý zdejší scénář se spouští proti skutečnému binárnímu souboru v test/cases/34_command_fixtures.sh, takže tato stránka nemůže tvrdit chování, které nástroj nemá.

Pro tento repozitář platí

# ... and an active task scoped to lib, with work done inside that scope.
. "$FIXTURE_SETUP/installed.sh"
"$MJ" start "narrow the parser" --scope lib >/dev/null
echo work >> lib/a

Spustit

$ majordomus finish --outcome completed

Výstup obsahuje

  • SELHÁNÍ ověření
  • poznámka FAIL
  • odmítnuto

ukončení 10

Dvě řádky kontraktu nejsou splněny a obě se jmenují najednou. Pracovník, který opraví jednu a je znovu odmítnut kvůli další, by se kontrakt učil po jednom oběhu, proto se hlásí všechny příčiny společně.

Pro tento repozitář platí

# An active task scoped to lib, with a change made under docs that it never claimed.
. "$FIXTURE_SETUP/active-task.sh"
echo stray >> docs/d

Spustit

$ majordomus finish --outcome completed --verify-command test -d .ai

Výstup obsahuje

  • SELHÁNÍ rozsahu
  • mimo nárokovaný rozsah

ukončení 10

Úloha si nárokovala lib. Změna pod docs je práce, kterou si úloha nenárokovala, a je odmítnuta, ať je cokoli dalšího na místě.

Pro tento repozitář platí

# An active task with an unresolved question open against it.
. "$FIXTURE_SETUP/active-task.sh"
"$MJ" question add "does the parser need to accept tabs?" >/dev/null

Spustit

$ majordomus finish --outcome completed --verify-command test -d .ai

Výstup obsahuje

  • FAIL blockers

ukončení 10

Otevřená otázka odmítne completed, a jen completed. Tutéž úlohu lze dokončit jako blocked, což je poctivý výsledek, když odpověď není na vás.

Pro tento repozitář platí

# An active task with the note the outcome requires already written.
. "$FIXTURE_SETUP/active-task.sh"
printf '# Objective\no\n# Current State\nc\n# Next Action\nn\n' | "$MJ" handover >/dev/null

Spustit

$ majordomus finish --outcome completed --verify-command false

Výstup obsahuje

  • SELHÁNÍ ověření
  • kód 1

ukončení 10

Příkaz se spouští, netvrdí se. Jeho návratový kód a doba trvání se zaznamenají, ať vrátí cokoli, takže „ověření proběhlo“ nelze tvrdit, aniž by cokoli skutečně běželo.

Pro tento repozitář platí

# A repository with Majordomus installed and projections generated, and one commit of work.
"$MJ" init >/dev/null
"$MJ" update >/dev/null
mkdir -p lib docs
echo a > lib/a
echo d > docs/d
git add . && git commit -qm base

Spustit

$ majordomus finish --check

Výstup obsahuje

  • není co vynucovat

ukončení 0

Proto může hook pre-push spouštět finish --check bezpodmínečně: repozitář bez aktivní úlohy není selhávající repozitář.

Pro tento repozitář platí

# An active task with the note the outcome requires already written.
. "$FIXTURE_SETUP/active-task.sh"
printf '# Objective\no\n# Current State\nc\n# Next Action\nn\n' | "$MJ" handover >/dev/null

Spustit

$ majordomus finish --outcome completed --verify-command test -d .ai

Výstup obsahuje

  • dokončeno

ukončení 0

Přijato a kniha zaznamenává výsledek spolu s ověřením, které si ho zasloužilo.

Co to vynucuje

Co je zaručeno

Pravidla, která tento příkaz spouští

Doktríny, jejichž enforced_by jmenuje finish. Vynucovat pravidlo a být jím řízen jsou různé vztahy, proto se uvádějí zvlášť.

Okamžiky, na které to odpovídá

Prohledává názvy a popisy všech stránek, které tento web publikuje.