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.

I2966 — Nastavení forge, které nešlo přečíst, je neznámé, nikdy ne \"nic nepovoluje\"

Číst nastavení mergů repozitáře jako neznámé, když je odpověď forge nenese, a říct to v politice integrace, v důvodu a důkazech každého zadrženého pull requestu a v diagnostice fronty, místo aby se hlásilo, že repozitář nedovoluje žádný merge commit.

HOTOVO vlna 0 · p0 · profil implementation · bezpečné souběžně

Součást development-runtime — The runtime has a development surface.

Cíl

Číst nastavení mergů repozitáře jako neznámé, když je odpověď forge nenese, a říct to v politice integrace, v důvodu a důkazech každého zadrženého pull requestu a v diagnostice fronty, místo aby se hlásilo, že repozitář nedovoluje žádný merge commit.

Proč

Truth sweep 2026-10-18 (f6, S1, ověřeno): publikované https://majordomus.dev/cockpit/integration/ a /cockpit/trains/ uváděly 'korczis/prismatic-majordomus allows no merge commit (it allows: nothing): the executor never squashes or rebases, so no pull request can be ready' a držely každý pull request jako merge_commit_not_allowed, zatímco `gh api repos/korczis/prismatic-majordomus` odpovídá allow_merge_commit, allow_squash_merge a allow_rebase_merge všechny true. integration/forge.rs četl každé nastavení pomocí `.and_then(Value::as_bool).unwrap_or(false)`, takže token, který je číst nesmí (ten z workflow Pages), změnil chybějící nastavení v odmítnutí. Je to instance třídy I2846 od 3e viditelná v alfě (neznámé není nikdy zdravé).

Aktuální stav

Opraveno v této změně: ForgeObservation.merge_methods je None, když odpověď nenese žádné ze tří nastavení; IntegrationPolicy.merge_settings_unread se z toho nastavuje; držený pull request čte merge_settings_unread s dispozicí unknown a důkazem repository_settings, že nastavení nešla přečíst; diagnostika jmenuje nepřečtená nastavení a nikdy neříká 'nepovoluje nic'.

Cílový stav

Nepřečtené nastavení mergování je na každém povrchu zobrazujícím frontu neznámé; přečtené `false` stále platí jako merge_commit_not_allowed; zaznamenaná pozorování nesoucí pole se čtou jako dřív.

Rozsah

  • apps/majordomus-cli/src/integration/forge.rs
  • apps/majordomus-cli/src/integration/mod.rs
  • apps/majordomus-cli/src/integration/classify.rs
  • apps/majordomus-cli/src/integration/model.rs
  • apps/majordomus-cli/src/integration/tests.rs
  • apps/majordomus-cli/src/integration/train.rs
  • apps/majordomus-cli/src/integration/drain.rs
  • apps/majordomus-cli/src/capability/builtin/brief.rs
  • apps/majordomus-cli/src/capability/builtin/integration.rs
  • apps/majordomus-cli/src/cockpit/pages.rs
  • apps/majordomus-cli/src/commands/prs.rs
  • docs/INTEGRATION.md

Závislosti

Žádné. Tento úkol je kořenem grafu.

Kritéria přijetí

  • Odpověď forge bez nastavení sloučení nedává žádné metody sloučení (neznámé) a odpověď s nimi dává to, co povolují
  • Pull request zadržený kvůli nepřečteným nastavením se čte merge_settings_unread s dispozicí unknown a nic se nesloučí
  • Diagnostika fronty říká, že nastavení merge nešlo přečíst, a nikdy, že repozitář nepovoluje nic

Validace

  • majordomus plan validate

Požadované důkazy

  • unread_merge_settings_are_unknown_and_never_allow_nothing

Důkazy

pokrývátypcommandvýsledeku commitu
unread_merge_settings_are_unknown_and_never_allow_nothingcicargo test --lib -- integration::tests::unread_merge_settings_are_unknown_and_never_allow_nothing integration::forge::tests::merge_settings_absent_from_the_answer_are_unread_and_present_ones_are_readboth ok in validate run 39192952944, job rust (2) 117890228077 (3482 passed, 0 failed), every job green at master dd4c0a87cba, which contains the fix 269bf5d67c39a5a9b7

Časová osa

zahájeno
2026-10-20T15:44:19Z
ověřeno
—
dokončeno
2026-10-20T15:44:54Z

Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.

Kanonický záznam: .ai/repo/project/issues/I2966.yaml. Přečtěte ho zpět pomocí majordomus plan show I2966.

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