Repository navigation
v0.4.0
Changelog
Added
-
.torve/config.yamlcan name the torve release a repository needs,engine: "X.Y.Z",
meaning that release up to the next minor. A command that loads the configuration
under a torve outside the range stops and names the install command for one inside
it;torve --version,guideanddoctorstill run. -
torve doctorgoes red when a seat image carries another torve version than the
host's.just imagesstamps each image with the version the host's torve reports
for the same tree. -
gates.yamlcan declare a Python project under a subdirectory,layout.root, and
top-level directories that ride with any change,layout.carried. The source-layout
gate, citation scan, spec quality report, coverage and default test paths read the
project root; the sizer counts a carried directory as no module. -
torve manager board --until-changewaits until a task's state, attempts or
escalation changes, or the night closes, then prints the changed rows and exits.
--documentnarrows the wait to one document's tasks. -
The base sandbox image carries CPython 3.14 beside 3.13, so a project on Python 3.14
runs its gates in a seat image without deriving one. -
torve guide torve upgradingstates the upgrade, and the adoption reference covers a
tool install,engine, a nested layout and the shipped hooks.
Changed
-
Breaking: torve's git commands no longer run the repository's git hooks; every
commit, rebase, checkout and push it makes setscore.hooksPath=/dev/null. A
repository that relied on a hook running on torve's commits moves that check into
its gates or its CI. -
Breaking: a repository installs torve as a uv tool rather than locking it as a
dependency, and the stubtorve initwrites calls baretorve. A repository that
keeps torve only in its lock installs it as a tool too, or the stub finds notorve. -
torve runs on forze 0.13.0. Its configuration hash moves with the pin, so telemetry
starts a new regime, and the seat images need rebuilding. -
Upgrade: the implement hooks ship in the package as
torve:hooks/implement, and
the starter implement profile equips them.torve initleaves an existing profile
alone: a repository that copied.torve/agents/hooks/implement/points its profile's
hook item there by hand and deletes the copy. -
For a project under a subdirectory, coverage reads its source prefix from the
report's Cobertura<sources>, the reviewer collapses every rider file
scope.derivednames as it doesuv.lock, and the context pack leaves out paths
tests.patternsnames.
Fixed
-
The sizer no longer counts a glob whose first segment is a wildcard, such as
**/x.py, as a module named**. -
A review, thread round or standing task minted during a served run no longer takes
the id of a task only the store holds, which removed that task's worktree and
crashed the night.torve intake,decompose,adoptandreview prtake
--partitionto number past the board's ids by hand. -
The served lane lands a task planned with
torve plan --partition. It read the task's
contract from.torve/tasks/, which such a plan never writes, so every pass failed
with "No such file or directory".
Security
- The dsh seat image runs dsh 0.1.2-rc.1. Earlier releases trusted the Host header on
dsh's local control-plane API, so code in the sandbox could run commands with full
access and lift the seat's approval policy. Rebuild the dsh image.