magicblock-labs / magicblock-labs/redsuite

Unify owned-process lifecycle state

Open
#99 0 comments 0 reactions 1 assignee View on GitHub

@bzawisto is already working on this.

Since Sep 11, 2026.

Dominant language
Rust
Stars
1
Forks
0
Avg merge
3h 58m
Merged PRs (30d)
48

Description

## Outcome

Private ERs and verifiers share child-process ownership and teardown bookkeeping.

## Scope

[Private ERs](https://github.com/magicblock-labs/redsuite/blob/06c80157f8bc87c39ac48fd59367a8e9280d2db9/crates/redsuite-core/src/topology/private.rs#L118) and [verifiers](https://github.com/magicblock-labs/redsuite/blob/06c80157f8bc87c39ac48fd59367a8e9280d2db9/crates/redsuite-core/src/topology/replicated.rs#L160) duplicate child/PID state, termination, resource-record updates, and drop handling. Their already-stopped finish behavior differs.

Introduce a small internal owned-process component. Keep readiness, identity leases, verifier reconnection, and storage-reset policy in their respective topology types. This follows the completed module decomposition in #36; preserve Linux behavior and coordinate macOS process support with #126.

## Acceptance criteria

- [ ] Process ownership and resource-record transitions have one implementation.
- [ ] Explicit finish handles running and already-stopped processes consistently, including intended storage cleanup.
- [ ] Relaunch and teardown failures remain visible in resource auditing.
- [ ] Graceful shutdown, hard-kill, restart timing, and topology-specific reset semantics remain intact.
- [ ] Keep the ownership refactor narrow; do not introduce a broad topology redesign or preclude the macOS support tracked in #126.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.