Skip to content

Updates to the Thorium project integrations. - #59

Open
mistachkin wants to merge 1 commit into
mainfrom
mistachkin_thorium_updates
Open

Updates to the Thorium project integrations.#59
mistachkin wants to merge 1 commit into
mainfrom
mistachkin_thorium_updates

Conversation

@mistachkin

Copy link
Copy Markdown
Contributor

No description provided.

@mistachkin mistachkin self-assigned this Mar 2, 2026
@mistachkin mistachkin added the enhancement New feature or request label Mar 2, 2026
@mistachkin
mistachkin marked this pull request as ready for review March 9, 2026 15:56
pranavpatilsce pushed a commit that referenced this pull request Mar 17, 2026
Exclude PRs #4 and #5 (browser automation) from the consolidated PR
per decision. Scope is now 5 open PRs: #14, #20, #26, #52, #59.

https://claude.ai/code/session_0198fK1vBAc4JYrswHgR9a44
nsluss pushed a commit that referenced this pull request Mar 18, 2026
* docs: add consolidation plan for open PRs

Analyzes all open PRs and branches, identifies overlaps, and outlines
merge strategy for consolidating into a single PR.

https://claude.ai/code/session_0198fK1vBAc4JYrswHgR9a44

* docs: remove browser-connect from consolidation plan

Exclude PRs #4 and #5 (browser automation) from the consolidated PR
per decision. Scope is now 5 open PRs: #14, #20, #26, #52, #59.

https://claude.ai/code/session_0198fK1vBAc4JYrswHgR9a44

* docs: exclude agent-services (PR #14) from consolidation plan

Scope is now 4 open PRs: #20, #26, #52, #59.

https://claude.ai/code/session_0198fK1vBAc4JYrswHgR9a44

* docs: add cross-repo migration plan (reef + pi-vers)

Phases 0-6 covering lieutenant migration to reef, VM registry
promotion, SQLite VM tree, config consolidation, reef-as-bootloader,
and hierarchical reef network (stretch).

https://claude.ai/code/session_0198fK1vBAc4JYrswHgR9a44

* docs: add reef session prompt for cross-repo coordination

Self-contained instructions to paste into a Claude Code session
on the reef repo, covering Phases 1-5 of the migration plan.

https://claude.ai/code/session_0198fK1vBAc4JYrswHgR9a44

* feat: align pi-vers substrate for vers-fleets

* fix: update pi repo link to new pi-mono location

The pi coding agent repo moved from github.com/mariozechner/pi-coding-agent
to github.com/badlogic/pi-mono/tree/main/packages/coding-agent.

Updated the README link. Note: the npm package name (@mariozechner/pi-coding-agent)
has NOT changed, so all import statements, install commands, and type imports
remain correct as-is.

* fix: return full VM IDs in tool output text

Tool output content text was truncating VM IDs via .slice(0, 12),
causing downstream tools (vers_vm_delete, etc.) to receive IDs the
API rejects.

Fix: use full UUIDs in all tool output text that flows between tool
calls. Keep .slice(0, 12) only in pure UI contexts (status bar,
/vers command select menus, SSH key file paths) where IDs are for
human display only.

Changed in vers-vm.ts:
- vers_vms active VM indicator now shows full ID

Changed in vers-swarm.ts:
- agentSummary() used by vers_swarm_status/spawn/discover
- All spawn/teardown/discover result messages

Fixes #46

* fix: handle ControlPersist exit in SSH master setup

With ControlPersist=yes, the SSH foreground process forks a background
daemon to maintain the control socket and then exits with code 0. The
previous code treated any exit before the 5s timer as a failure, causing
vers_vm_use to always fail on the first call with 'SSH master exited
(code 0): unknown error'.

Fix: when the process exits with code 0, verify the control socket is
alive via 'ssh -O check' before treating it as a failure. If the socket
is alive (ControlPersist daemon is running), mark the master as active
and resolve successfully.

* fix: add 5s timeout to registry fetch calls to prevent indefinite hangs

Adds AbortSignal.timeout(5000) to all registry POST/DELETE/GET calls
in vers-lieutenant.ts and vers-swarm.ts. Without these, a down or
unreachable infra VM causes the entire tool call to hang forever.

* fix: respect PI_CODING_AGENT_DIR and add VERS_HOME for state/config paths

All four vers extensions (vers-vm, vers-vm-copy, vers-swarm, vers-lieutenant)
were hardcoding ~/.pi and ~/.vers for config and state directories. This breaks
when PI_CODING_AGENT_DIR is set (e.g. to ~/.lp_pi/agent).

Changes:
- Add getPiAgentDir() helper to all extensions, mirroring pi's own getAgentDir()
  logic (reads PI_CODING_AGENT_DIR env var, falls back to ~/.pi/agent)
- Add getVersHome() helper: checks VERS_HOME env var, then uses
  <pi-agent-dir>/../vers as default (e.g. ~/.lp_pi/vers or ~/.pi/vers)
- Update loadApiKey / loadVersKeyFromDisk in all extensions to check
  getVersHome() first, with legacy ~/.vers fallback
- Update lieutenant state persistence to use getVersHome()/lieutenants.json
- Update local lieutenant workspaces to getVersHome()/lieutenants/<name>/
- Update syncPiConfig in vers-swarm to read from getPiAgentDir()

* fix: harden vers ssh transport

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: lt-fix-pi-link <lt-fix-pi-link@vers.bot>
Co-authored-by: joseph-pi <joseph@hdresearch.com>
Co-authored-by: Joseph <joseph@textql.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant