Skip to content

feat(probe): compare direct and supervised runtime startup - #19

Merged
skevetter merged 1 commit into
mainfrom
codex/supervisor-startup-probe
Oct 3, 2026
Merged

skevetter merged 1 commit into
mainfrom
codex/supervisor-startup-probe

Conversation

@skevetter

@skevetter skevetter commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

The existing startup probe measures plain go-plugin launches and omits the supervisor introduced for process ownership. Add an optional --supervisor-binary mode that measures the same Info and absent-workspace Find operations through the SDK supervisor, including both process launches and supervisor cleanup.

Reports add launch mode and supervisor fingerprint metadata without removing schema-v1 fields. PID identifies the directly launched process (plugin or owning supervisor). Every successful sample must report a positive process ID and completed reaping. CI builds uninstrumented helpers and retains direct and supervised 100-sample reports together on Linux, macOS, and Windows.

Validation: full race suite and vet; direct/supervised real-executable tests including handshake timeout and invalid helper paths; strict lint and all-file prek; Windows probe test cross-compilation. Local macOS arm64 measurements run both orders, 100 warm samples per operation: direct p50 about 8–9 ms, supervised p50 about 17–18 ms, with every sample reaped.

These are warm-cache measurements, not cold-cache trials or acceptance thresholds. CI runs direct first, and documentation calls out ordering effects. A representative Devsy up trace and real-runtime compatibility remain prerequisites for selecting session reuse; this change introduces no pool or runtime cutover.

Local CodeRabbit reviewed the complete six-file diff with no findings. GitHub verified the signed commit.

CI comparison evidence (run 37148682418): each artifact contains raw direct and supervised reports from the same runner and runtime fingerprint. The reports record tested merge commit 4d132ddfc7f8491eccf0e2e54875df2171d23bcf, whose PR parent is 91fa4abbab2f2f60daff4879a565a822897f0fab.

Platform Operation Direct p50 / p95 (ms) Supervised p50 / p95 (ms)
Linux amd64 Info 4.518 / 5.355 8.229 / 9.193
Linux amd64 Find 4.545 / 5.103 7.903 / 8.671
macOS arm64 Info 13.175 / 17.294 23.427 / 27.934
macOS arm64 Find 13.665 / 19.140 22.963 / 29.973
Windows amd64 Info 27.746 / 30.926 40.862 / 48.035
Windows amd64 Find 28.113 / 30.342 40.442 / 43.965

All first/warm samples report a positive launch-owner PID and completed reaping. No cold-cache or session-reuse conclusion is claimed.

Final head 91fa4ab: all applicable CI checks passed; Release Please is correctly skipped on a PR event. Greptile review has been requested but no completed SDK review is available. Hosted CodeRabbit skips this draft; the complete local CodeRabbit review found no issues. Hosted reviewer gates remain incomplete, so this draft is not being declared merge-ready.

@coderabbitai

coderabbitai Bot commented Oct 3, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 4e62669e-b714-422a-af23-9a71f965aa00
📥 Commits

Reviewing files that changed from the base of the PR and between 617a552 and 91fa4ab.

📒 Files selected for processing (6)
  • .github/workflows/ci.yml
  • README.md
  • cmd/devsy-runtime-spawn-probe/main.go
  • internal/spawnprobe/probe.go
  • internal/spawnprobe/probe_test.go
  • internal/spawnprobe/report.go
✨ Finishing Touches
✨ Simplify code
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@skevetter

Copy link
Copy Markdown
Contributor Author

@greptileai review

@skevetter
skevetter marked this pull request as ready for review October 3, 2026 19:58
@skevetter
skevetter merged commit e9ea5dc into main Oct 3, 2026
11 checks passed
@skevetter
skevetter deleted the codex/supervisor-startup-probe branch October 3, 2026 19:58
@devsy-app devsy-app Bot mentioned this pull request Oct 3, 2026
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