Skip to content

feat(process): add Windows Job process tree (stack 2/7)#74

Open
wanglongan587 wants to merge 12 commits into
ora-space:mainfrom
wanglongan587:pick-0717-02-process
Open

feat(process): add Windows Job process tree (stack 2/7)#74
wanglongan587 wants to merge 12 commits into
ora-space:mainfrom
wanglongan587:pick-0717-02-process

Conversation

@wanglongan587

Copy link
Copy Markdown

Summary

  • Add ora-process: ProcessSpec / process-tree traits, then Windows Job Object process tree implementation.

Stack

Test plan

  • cargo test -p ora-process

Made with Cursor

wanglongan587 and others added 9 commits July 20, 2026 11:32
Establish validated plugin identifiers and strict manifest parsing.
Add the v1 Agent and Workbench package model for later wire contracts.

Co-authored-by: Cursor <cursoragent@cursor.com>
Define the bounded five-byte frame format and cover split, coalesced,
and malformed input behavior before adding JSON-RPC messages.

Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce opaque IDs, page limits, and JSON-safe numeric leaf types so
lifecycle and Agent contract modules can share one validated value layer.
Add the closed Agent request/response/event shapes on top of leaf types so
lifecycle stream envelopes and method registry can reference one contract.
Add initialize/activate/deactivate/stream/exit DTOs and invariants so Host
and private bootstrap share one wire lifecycle contract.
Add request/response/error framing helpers on top of the binary frame codec
so Host and plugin runtimes share one JSON-RPC parse/reject matrix.
Register the closed Agent method set and invocation semantics so SDK and
runtime dispatch share one method catalog.
Close the protocol crate with cross-field Agent validators, TypeScript export
helpers, and checked-in Frame/Agent golden fixtures for drift detection.
@wanglongan587
wanglongan587 force-pushed the pick-0717-02-process branch from 7db58b7 to bf8b7bd Compare July 20, 2026 03:45
@wanglongan587
wanglongan587 marked this pull request as ready for review July 20, 2026 07:13
wanglongan587 and others added 3 commits July 20, 2026 15:26
FrameEnvelopeMismatch was unreachable because require_allowed_fields
rejected result/error/method/params first. Check shape incompatibilities
first so mismatch and unknown-field failures stay distinct.

Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce the shared process abstraction and Tokio spawner so plugin runtime
can depend on a Host-owned process API before Windows Job Object support.
Add Job-bound spawn, named-pipe stdio, and tree terminate/reap so each
plugin generation can own a killable Windows process tree.
@wanglongan587
wanglongan587 force-pushed the pick-0717-02-process branch from bf8b7bd to c5647f9 Compare July 20, 2026 07:29
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