Skip to content

Every candidate derived from an observation carries a route — platform, enforcement, generator, documentation or project — derived from its subject's structure and never from its wording, and in a repository that adopted the tool its own share/ routes project

A candidate derived from an observation says which owner should look first — platform, enforcement, generator, documentation or project — read from its subject's structure and never from its words. In a repository that adopted the tool, the project's own share/ is the project's, and a project's defect is never routed into the tool's governance.

declared statusdeclared status: guaranteed Declared deterministic and blocking, implemented, and naming the behavioural test that is to prove it. Whether a recorded run supports it is the evidence verdict, shown beside it.

recorded evidencerecorded evidence: not run Declared guaranteed, and not supported by a recorded run: the test is named, and no passing run of the current inputs is recorded. how evidence is recorded

platform is a command:, capability: or rule:majordomus.* subject, a path under the vendored rules, or the tool's own share/ only when it lies inside the repository; enforcement is another rule: or a gate:; generator a path the scope declares generated or .gitattributes marks merge=derived; documentation a path under docs/; anything else is project. The route decides nothing; promotion and rejection stay acts. ADR 0118.

What it means

A candidate derived from an observation says which owner should look first — platform, enforcement, generator, documentation or project — read from its subject's structure and never from its words. In a repository that adopted the tool, the project's own share/ is the project's, and a project's defect is never routed into the tool's governance.

How it works

In this order: a command:, capability: or rule:majordomus.* subject, a path under the vendored rules directory, or a path under the tool's own share/ only when that directory lies inside the repository, routes platform; another rule: or a gate: routes enforcement; a path the scope declares generated (out.generated paths or names) or .gitattributes marks merge=derived routes generator; a path under docs/ routes documentation; anything else routes project. Two observations about one subject in different words carry the same route. The derivation writes no event it reads, so a derivation never starts another.

How to see it

majordomus knowledge observe --kind friction --subject command:finish "finish discards the verifier's output"
majordomus knowledge observe --kind drift --subject docs/CLI.md "the start syntax lacks --issue"
majordomus session end
majordomus knowledge candidates             # about command:finish  route platform ...; about docs/CLI.md  route documentation ...

What it does not cover

The route decides nothing: it opens no issue, writes no rule and sends nothing to another repository. Turning a routed candidate into work is an act and a later milestone.

Why it exists

A candidate with no owner is read by nobody, and ADR 0091 rejected classifying by wording. .ai/repo/adrs/0118-a-session-leaves-what-it-observed-and-one-candidate-per-defect-is-routed.md derives the owner from structure, so the same subject always routes the same way, on any machine.

Detail rendered from docs/claims/a-candidate-is-routed-by-what-it-is-about.md.

From the statement to the proof

  1. 1 · the public statement

    Every candidate derived from an observation carries a route — platform, enforcement, generator, documentation or project — derived from its subject's structure and never from its wording, and in a repository that adopted the tool its own share/ routes project

    Made on Layer.

  2. 2 · the canonical claim

    a-candidate-is-routed-by-what-it-is-aboutdeclared status: guaranteed in docs/CLAIMS.yaml

    Defined in read it on this site · docs/KNOWLEDGE.md

  3. 3 · the implementation

    lib/knowledge.sh · majordomus knowledge

  4. 4 · the test and the scenarios

    Test: test/cases/982_a_candidate_is_routed_by_what_it_is_about.sh

  5. 5 · the recorded runs

    recorded evidence: not run how evidence is recorded

Verify it yourself

The test runs in a disposable temporary repository and asserts the behaviour, not a string in the source.

from a clone of the repository
bash test/run.sh 982_a_candidate_is_routed_by_what_it_is_about

Where this claim is used

responsibilities it covers

Related claims same implementation

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