Repository navigation
v0.7.0
Changelog
Added
-
torve spec checkwarns, for a document nothing has landed from, on each LOCKED
row of adepends_ondocument that one of its phases' scopes touches. A phase that
contradicts such a row shows before the document is accepted, not when its executor
halts on it. -
torve spec checkwarns when a document's title is too long for its typed
pull request title, naming its length and the room after<gitmoji> <type>(<scope>):. Shortened before acceptance, the title is the squash
subject as written. The· n/m phasescount gives way rather than cut it. -
torve ledgerprices a subscription seat's attempts from their token counts
when its provider record names the model'slist_price, and marks the figure
~: what the tokens would cost, not an amount billed. The attempt's own cost
stays unreported, and a night's dollar budget does not count it. -
torve manager note --urgenthalts a running attempt: a Claude seat under a
broker stops at its next tool call, any other when its session ends. The task
escalates askilled, its gates never run, and its tree stays on its branch.
Changed
-
torve runs on forze 0.16.2, whose durable run tables are unchanged, so no
migration is owed. The configuration hash moves with the pin, so telemetry
starts a new regime, and this release's seat images carry the new forze. -
The spec-writer skill and the adopting reference say how a phase gets more time or
the stronger model: a seat variant with its ownagent_timeoutand
sandbox_timeout, named by the phase'stier_variantor reached through
character_routing. -
The scope gate names a file outside the scope whose change is whitespace alone,
such as a final newline or trailing spaces, asoutside allow, whitespace only.
It still fails, and the retry is told to undo the change rather than widen the scope. -
Upgrade: upgrade every host that shares a store together, and run the 0.7.0
seat images: 0.6.4 cannot read an urgent note's record, and only the new claude
image hands the provider's context window to the seat. -
Upgrade: the implement hooks gain
urgent_note.py, run before every tool call.
A profile equippingtorve:hooks/implementgets it with the package; a repository
with its own copy of.torve/agents/hooks/implement/copies it again.torve init
refreshes.torve/schemas/for the provider record'slist_price.
Fixed
-
A document pull request whose last phase lands green is published ready even
when the forge does not list the new completion status yet. A forge that
refuses to mark it ready is recorded aslane_pr_refused, no longer silently. -
The next phase of a document whose remote branch was rebased onto a moved
base no longer escalatesmerge_conflictwhen this checkout still holds the
old hashes. A copy whose landings the remote already has is reset to the
remote, and the phase lands onto it. -
A served night no longer closes as drained while a task that can still run is
queued or escalated, such as work waiting on an escalation. It keeps polling
until its wall-clock end, so the work runs once the escalation is resolved. -
A task whose manager was killed mid-attempt no longer stays
runningafter
torve reapexpires its run. The next pass escalates itlease_expired, so
torve manager resolveandtorve plan --refreshreach it. -
torve manager boardshows a review row its run already concluded as
consumed, astorve statusdoes, instead ofqueuedforever. The JSON
board is unchanged. -
The night guide and the operator skill name
torve plan --partitionas the
step that puts a freshly accepted document on the board. The manager's import
pass reads contract files and never plans a document. -
A task minted into the store no longer answers "no task" from
torve why
without--partition. With a store configured,why,status,context,
serveandmcpread the fleet manifest's partition for the root, else
scm.repo, and fall back to the files when that record lacks the task. -
An attempt's work commit is titled by its phase, not by its intent cut
mid-word, and a review round's names a lone finding's file with the path
whole. A subject still too long is cut between words, never inside backticks
or a path, and the commit body keeps the whole text. -
A phase's contingent paths, the context pack and a review round's paired tests no
longer take in copies from a git worktree or clone nested in the repository, such as
an agent harness's under.claude/worktrees/. -
The intake lint reads the drafting worktree's files. It read none, because that
worktree sits under.wt/, so a draft that left out its module's test file passed. -
Git works inside an attempt's Docker sandbox:
git status,diffandlog
read a read-only copy of the attempt's HEAD and index. The copy carries none
of the host's git config or other branches, and nothing in the sandbox can
write a ref. -
A Claude seat running a non-Claude model compacts at the window its provider
record states instead of at 200,000 tokens. Rebuild the claude sandbox image
to pick it up.