Skip to content

workshop: P1-5 instance lock/descriptor and P1-6 CUA exact process - #86

Merged
JoshuaPurtell merged 4 commits into
v0.7from
v07/p1-instance-identity
Aug 21, 2026
Merged

workshop: P1-5 instance lock/descriptor and P1-6 CUA exact process#86
JoshuaPurtell merged 4 commits into
v0.7from
v07/p1-instance-identity

Conversation

@JoshuaPurtell

Copy link
Copy Markdown
Contributor

Summary

  • P1-5: exclusive instance.lock before tauri::Builder; descriptor-first identity; adapters share instance_paths.rs; is_live treats a fresh peer heartbeat as live; eval driver refuses overwrite when /health is another pid.
  • P1-6: running_apps returns every pid; resolve never launches and errors ambiguous_target; explicit launch verb; mutating verbs check Workshop /health; Laguna stop uses shared ProcessIdentity.

Rebased onto current v0.7 (includes W3a launcher half).

Locks: instance:: 22, recovery:: 18, eval-driver health 3, helper apps:: 5, helper full 35.

Test plan

  • cargo test --offline --lib instance::
  • cargo test --offline --lib recovery::
  • cargo test --offline --features eval-driver --lib eval_driver::tests::a_
  • cargo test --offline --manifest-path helpers/synth-computer-use/Cargo.toml

Made with Cursor

JoshuaPurtell and others added 4 commits August 21, 2026 12:58
flock the data-root lock before tauri::Builder, name the holder, and
resolve identity from the bundle descriptor first so a .dev. bundle
cannot open the canonical profile.

Co-authored-by: Cursor <cursoragent@cursor.com>
Stdio adapters share instance_paths.rs instead of each copying the
canonical Application Support fallback, so a descriptor-only launch
still finds the instance data root.

Co-authored-by: Cursor <cursoragent@cursor.com>
Treat another owner's fresh heartbeat as live so a second process
does not steal turns, and refuse to overwrite eval-driver.json when
/health still answers for a different pid.

Co-authored-by: Cursor <cursoragent@cursor.com>
running_apps returns every pid per bundle id; resolve never launches
and errors ambiguous_target when more than one copy is live. Launch
is its own allowlisted verb. Mutating verbs check Workshop /health
identity, and Laguna stop uses shared ProcessIdentity.

Co-authored-by: Cursor <cursoragent@cursor.com>
@JoshuaPurtell
JoshuaPurtell merged commit ea20ffd into v0.7 Aug 21, 2026
1 check passed
@JoshuaPurtell
JoshuaPurtell deleted the v07/p1-instance-identity branch August 21, 2026 18:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant