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.

I2871 — A file in the half whose contract excludes it is refused, naming the path and the contract

A check reads I2870's declaration, walks the layer and refuses every path that a contract excludes — control-plane state under .ai/repo, authored knowledge under .ai/local — with '<path> violates <contract>'. doctor reports it and a gate runs it; update refuses a projection target outside the repository, the mj_norm_path guard I1101 found missing.

BLOKOVÁNO vlna 2 · p0 · profil implementation · bezpečné paralelně

Součást two-folder-integration — Repozitář, který přijme Majordomus, získá dva adresáře a dva řádky a může je vrátit.

Blocked. This issue cannot start until I2870 is done. The status is derived from that, not declared.

Cíl

A check reads I2870's declaration, walks the layer and refuses every path that a contract excludes — control-plane state under .ai/repo, authored knowledge under .ai/local — with '<path> violates <contract>'. doctor reports it and a gate runs it; update refuses a projection target outside the repository, the mj_norm_path guard I1101 found missing.

Proč

The second slice of I1102. On 2026-10-21 nothing refused a cache or index written under .ai/repo, or a copy of a rule under .ai/local: doctor checks only that .ai/local is untracked and that manifest sections exist.

Aktuální stav

doctor checks .ai/local is git-ignored and nothing in it is tracked; scripts/ci/local-never-published keeps local out of the site; nothing reads a contract to judge a path.

Cílový stav

A misplaced file fails a check that names the path and the contract it violates.

Rozsah

  • apps/majordomus-cli/src
  • share/kinds.yaml
  • share/skeleton/ai/repo/README.md
  • lib/doctor.sh
  • lib/update.sh
  • test/cases/3405_a_misplaced_artifact_is_refused.sh
  • .ai/repo/project/issues/I2871.yaml

Mimo rozsah

  • Moving content between halves (I1109 and the migration issues)

Závislosti

Co na tom čeká

Kritéria přijetí

  • A file a contract excludes is refused, naming the path and the contract; a negative case places one in each half
  • update writes no path outside the repository root (the mj_norm_path guard)

Validace

  • cargo test --workspace --all-features
  • bin/majordomus doctor

Požadované důkazy

  • boundary_checked

Důkazy

Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.

Časová osa

zahájeno
—
ověřeno
—
dokončeno
—

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.

Canonical record: .ai/repo/project/issues/I2871.yaml. Read it back with majordomus plan show I2871.

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