shwrk harness

Workflow

The harness expects non-trivial change to flow through OpenSpec, land as Conventional Commits, and pass a fresh-eyes review before merge.

OpenSpec

Non-trivial changes go through the OpenSpec cycle:

/opsx:propose  →  /opsx:apply  →  /opsx:verify  →  /opsx:archive

Conventional Commits

Commit messages are enforced by the commit-msg hook:

type(scope)?(!)?: subject

Types: feat, fix, docs, style, refactor, perf, test, build, chore, ci, revert. Examples:

The version bump at release time is derived from these commits by git-cliff.

Review, proportional to risk

After /opsx:verify, and before any non-trivial PR:

Reviewer proportionality. Skip both for trivial changes — a typo, a log line, a one-liner you can describe in a single sentence. Match the review to the risk: don't run a full evaluation on a comment fix, and don't skip it on a change that touches auth, money, or data shape.

After the PR opens

Raw make check output is posted to the PR automatically as a comment (chunked if it is large), so reviewers see the exact gate result with no clicking through CI.