Skip to content

Done is a contract, evaluated line by line and refused when unmet

A task starts with a declared scope and a profile; check reports whether the task is consistent with policy, scope and state; finish evaluates the policy's contract — scope respected, verification ran, state updated, no open blockers, a note present — and refuses with the reproducing command when any line fails.

A worker does not get to define its own successful completion: every line of the finish contract is printed pass or fail, and nothing is written to the record until all of them pass.

status
stable
exposed through

What it does

The outcome of a task is a typed field with a closed vocabulary, never a sentence. majordomus finish --outcome completed runs the verification command the profile requires, walks every line the policy selects, prints each as pass or fail with the command that reproduces a failure, and writes nothing when any line fails; the task stays open. An open question that names the task blocks acceptance until it is resolved, and a blocker survives a handover rather than being lost with the conversation.

no_match and failed are different facts: the thing sought does not exist, or the work could not be done. A supervisor that cannot tell them apart cannot decide whether to retry, escalate or accept, so the field decides and prose never does.

What it does not do

It does not prevent a worker from touching a file outside its scope while it works; it detects the file at check and at finish and refuses to accept the work. The regression-test line is a path heuristic and says so. Nothing here measures tokens or cost.

The commands that run it

  • majordomus start begin

    Begin one scoped task under a profile, and refuse while another is active.

  • majordomus check verify · read-only

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

  • majordomus finish conclude

    Evaluate the finish contract and refuse the outcome if any line of it is unmet.

  • majordomus question work

    Open a question that blocks acceptance, resolve it, and list what is still open.

What it answers

Operational moments from the Why catalogue that name one of this feature's mechanisms. Nothing here was assigned: a moment appears because it names a rule, a command, a capability or a claim this feature also names.

The rules that hold it

  • blockingVerification integritymajordomus.verification-integrity
  • advisoryDefine done before executingmajordomus.define-done-first
  • advisoryVerify outcomes, not activitymajordomus.verify-outcomes
  • blockingBlocker resolutionmajordomus.blocker-resolution
  • blockingNote integritymajordomus.note-integrity
  • blockingState consistencymajordomus.state-consistency
  • blockingEvery finding carries a reproduce commandproject.finding-carries-reproduce

What is guaranteed

Executable use cases