Repository navigation
fix(deps): update dependency @cyberuni/agent-harness to ^0.6.0 - #161
Merged
Merged
Conversation
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^0.5.0→^0.6.0Release Notes
cyberuni/agent-harness (@cyberuni/agent-harness)
v0.6.0Compare Source
Minor Changes
f8913de: Addacquire,release, andexplainto@cyberuni/agent-harness/worktrees.acquire({ holder, branch?, base?, available?, max? })leases an idle worktree of ours and recycles it (read-tree --reset -u <base>, thenclean -fd, which keepsnode_modules), or creates one at the next free<parent>/<repo>.worktrees/<repo>-<n>slot through an injectable creator. The lease is an exclusive-created git worktree lock, read back after the claim.release(lease)gives it back only when the lease id still matches and never recycles.explain()gives the skip reason for every worktree. A worktree with a live agent session is skipped; when the probe cannot read processes, reuse proceeds and is reported unverified unlessstrictis set. An unlocked worktree at a library slot now classifies asself.3f2a9d4: Add the@cyberuni/agent-harness/worktreessubpath. It has three entry points:primaryRootfinds the primary checkout from any folder in a repository, including a linked worktree.listWorktreeslists every worktree with its branch, HEAD, detached, prunable and lock reason, plus whether its work has landed on the default branch and whether it is dirty.readDirtychecks a worktree for uncommitted changes, can ignore paths you name, and counts untracked files even when a repo hides them.Landed detection tries, in order: ancestry, a deleted upstream, a squash merge matched by patch id, and an opt-in forge probe (
ghForgeMergedProbe).adc4d95: Add a process probe to@cyberuni/agent-harness/worktreesthat finds live agent sessions inside a worktree. It never kills anything.probeProcessesreads the process table once. Itsoccupancy(root)reportsbusy, theoccupants(every live session, with no limit on how many), thelingeringprocesses, and theunlinkedones. Lingering means no live session launched the process, so a caller can reclaim it. Unlinked means the probe cannot tell.occupants(root)lists the sessions working in one worktree.vitestarted from Claude Code are not sessions. 14 harnesses are covered: Claude Code, Codex, Copilot CLI, Cursor, opencode, Kilo, Qwen Code, Crush, Gemini CLI, Goose, OpenHands, Cline, Auggie, and the Antigravity CLI.procfsProcessSourcereads Linux/proc. On any other platform the probe is unverified and reports not busy, unless you passstrict: true.ffdc416: AddclassifyOwnerto@cyberuni/agent-harness/worktrees. It tells who owns a worktree:self(this library's lease),claude-code,codex,user(the primary checkout), orunknown. Each answer lists the research evidence it rests on. Only aselfworktree may be reused or removed.parseLeaseReasonreads the lease from a lock reason.8bcef77: AddpruneWorktreesto@cyberuni/agent-harness/worktrees. It removes the worktrees this library owns that nothing needs any more (unleased, idle, clean, and landed), then runsgit worktree prune. It is a dry run unlessapplyis set, and returns an outcome per worktree with a skip reason. It never touches the primary checkout, a foreign or locked worktree, a leased one, or one with a live agent session; when the process probe cannot read the platform it skips unlessstrict: false. It never kills a process: lingering dev services are reported so the caller can reclaim them.654ac52: AddseedWorktreeto@cyberuni/agent-harness/worktrees. It copies the gitignored files a.worktreeincludenames from the primary checkout into a new or recycled worktree, following Claude Code's semantics, and returns an inventory of what it copied and what it skipped and why. It reads the include file as data and runs no command but git; file operations go through an injectableSeedFs.Patch Changes
5d67d18:agent-harness referencenow writes its--formatoutput through@clibuilder/axiinstead of a local copy of the same contract, and no longer depends on@toon-format/toondirectly. TOON, JSON, and text output are byte-identical: axi's text renderer is the one this package carried. An unknown--formatvalue is now rejected by clibuilder before the command runs, as a usage error (exit code 2) with clibuilder's message and the command's help, where it used to exit 1 witherror: --format must be toon, json, or text.Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.