Skip to content

Scope

start takes the paths a task may touch; check and finish fail on files outside them; other worktrees' overlapping claims are reported

start takes the paths a task may touch; check and finish fail on files outside them; other worktrees' overlapping claims are reported

Where it lives

State it owns

  • .ai/local/state/current.yaml

The command that acts on it

majordomus check

Is the current task still consistent with its policy, its scope and this checkout?

  • read-only
  • active task required
  • --json
majordomus check [--explain] [--overlap] [--checkpoint] [--rule <id>] [--json]

See it refuse, and accept

check is read-only and answers three questions at once: does the record still describe this checkout, is the work inside the claimed scope, and is anything blocking acceptance.

Given this repository

# ... 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

Run

$ majordomus check

Output contains

  • OK scope
  • 0 failing

exit 0

Every finding is printed, not only the failures, so the report says what was checked rather than only what went wrong.

Given this repository

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

Run

$ majordomus check

Output contains

  • FAIL scope
  • docs/d

exit 10

check names the individual file, because the useful question is which change to move or claim — not merely that something is wrong.

What enforces it

What is guaranteed

Rules this command runs

Doctrines whose enforced_by names check. Enforcing a rule and being governed by one are different relations, so they are listed separately.

The moments this answers

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