Skip to content

I1986 — The vendored rule package says nothing that is only true of this repository

Rewrite the baseline rules that describe Majordomus's own history as rules about any adopter. Mark their x-majordomus.tests as upstream proofs so an adopter is not pointed at test/cases it does not have, and give the package manifest a real source revision.

DONE wave 0 · p2 · implementation profile · parallel safe

Part of adopter-upgrades — An adopting repository survives a Majordomus upgrade, and what the tool vendors into it is adopter-neutral.

Objective

Rewrite the baseline rules that describe Majordomus's own history as rules about any adopter. Mark their x-majordomus.tests as upstream proofs so an adopter is not pointed at test/cases it does not have, and give the package manifest a real source revision.

Why

In share/standard/majordomus/rules/{adr-integrity,lifecycle-observed,completion-gates,record-changed-files,publication-currency,schema-integrity}.v1.md, 'this repository' means Majordomus. Their tests name test/cases paths absent in OSCILLA. The vendored manifest says source_revision 0.6.0 although OSCILLA vendored it from 0.12. A second adopter saw the same on 2026-10-08: in prismatic-platform, `rules vendor update` moved a 0.6.0 baseline to the 0.14.0 package (3 rules added, 4 changed) and `rules vendor status` still printed 'distribution: 1 (0.6.0)', so the label cannot tell the two packages apart.

Current state

As above at e08aec8651.

Desired state

Adopter-neutral rule text; tests resolvable or explicitly upstream; source_revision equals the release that produced the package.

Scope

  • share/standard/majordomus
  • scripts/rules-package
  • test/cases

Dependencies

None. This issue is a root of the graph.

Acceptance criteria

  • No vendored rule's text names this repository's own incidents as the adopter's
  • scripts/rules-package write stamps the producing release as source_revision

Validation

  • bin/majordomus plan validate
  • MJ_TEST_JOBS=4 bash test/run.sh <the case this issue adds>

Evidence required

  • neutral_rule_text
  • source_revision_stamped

Evidence

coverstypecommandresultat commit
neutral_rule_texttestMJ_TEST_JOBS=2 bash test/run.sh 3022_the_rule_package_is_stamped_and_adopter_neutraltests: 1 passed, 0 failed: no vendored rule says 'this repository'; every dated incident names Majordomus (run 2026-10-14 14:52Z on master 0dff496d1c plus this change)0dff496
source_revision_stampedtestMJ_TEST_JOBS=2 bash test/run.sh 3022_the_rule_package_is_stamped_and_adopter_neutraltests: 1 passed, 0 failed: stamped from the crate manifest (0.25.0), a stale stamp refused (run 2026-10-14 14:52Z on master 0dff496d1c plus this change)0dff496

Timeline

started
2026-10-14T14:52:58Z
verified
—
completed
2026-10-14T14:53:20Z

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

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

Searches the titles and descriptions of every page this site publishes.