Skip to main content

Module semcheck

Module semcheck 

Source
Expand description

weave land --check sem: the merged tree is verified by sem check before anything is published.

sem check --base <tip> --json runs in the directory holding the merged tree (the agent’s repository with --onto, the lander’s worktree with --queue). It returns the verdict of the project’s own compiler, type checker, linter and tests on the whole project, rechecking incrementally only where that is provably the same verdict. Exit 0 lands; exit 1 (fail), exit 2 (could not decide), any other exit, unreadable output, or no sem at all refuses: the check is never skipped once asked for.

Turned on by --check sem, or by default with .weave/config (git-config syntax) in the repository root:

[land]
    check = sem
    checkers = ts,lint,tests   # optional: passed as --checkers

--check none turns a configured default off for one run.

Structs§

Check
What --check sem runs.

Enums§

Outcome
How a check ended.

Functions§

certificate
The document weave records for a check: what was checked and sem check’s own certificate (input trees, tool versions, mode per checker).
config_default
land.check and land.checkers from <repo>/.weave/config.
render
The sem check result in words for the agent: every checker’s verdict, mode and reasons, then its diagnostics (the first 100 per checker).
resolve
--check (sem | none) over the repository default in .weave/config.
run
Run sem check --base <tip> --json in dir, whose HEAD has tree tree (the tree to be published). A pass counts only if sem checked exactly that tree: untracked files in dir would make its verdict one about another tree.
summary
One line per checker for a passing check.