Repository navigation
feat(embed): replace the local agent loop with native OpenHuman workers - #13
Conversation
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Warning Review limit reached
This review includes 115 billable files and costs up to $28.75. View limit details
Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f055708775
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Tiny Sweeper review
|
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…leanup Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Replace Medulla’s in-process agent loop with one daemon-owned OpenHuman embed runtime. Native
openhumanworkers keep their existing routing and event entry point, use native session storage, and receive per-turn cwd, scrubbed subprocess environments, grant-checked fleet/workflow tools, workflow skills, command hooks, inline approvals, usage budgets, and awaited abort/idle cleanup.Delete the old agent/history/tool loop, local provider adapter, direct tinyagents submodule/dependencies, and obsolete embedded-core environment handling in the same change. Existing thread files are deliberately not imported. Claude, Codex, OpenCode and their subprocess transports remain supported; native OpenHuman must be selected explicitly and requires a configured inference route and model.
Depends on tinyhumansai/openhuman#7305. The vendored feature commit
4bf97045b2supplies the scoped embed APIs; the submodule URL stays canonical. This is the sole Medulla PR for issue #12. The workflow umbrella companion, https://github.com/tinyhumansai/workflow-medulla/pull/31, updates cross-repository contracts and removes the obsolete serve-chain harness.Validation:
make ci: 4,699 tests passed (13 existing ignored tests), formatting, Clippy with warnings denied, and the locked all-target build.cargo llvm-cov --locked --no-clean -p medulla --test feature_embed_agents --summary-only: native fixture passed, including idle child cleanup.make e2e-native: real native daemon, encrypted UDP coordination, loopback mock inference.make cross-repo: 18 spanning tests and five prerequisite unit tests using the actual backend package and Rust native adapter.Linux measurements and raw data are published in the OpenHuman prerequisite, with the exact measured source revision and cgroup conditions. The 500-agent median meets the 3.54 MiB marginal-RSS target; the 50- and 100-agent medians exceed it, and the swap-disabled 500-agent sample narrowly exceeds it. These are mock-provider measurements on a shared build host, not production provider/tool capacity. The named historical probe executables were unavailable; native integration and OpenHuman route/hook tests exercise their seams instead.
Tinyagents/tinyinference remain only inside the transitive OpenHuman/workflow dependency graph; the adapter uses the exact embed-exported tool traits. Workflow-engine and backend-client pins remain independent. Budgets stop between model calls and do not reserve tokens across concurrent in-flight calls. Supervised native approval requests require an attached input surface and otherwise fail closed; the explicit permission-bypass option is honored. Command Stop hooks dispatch by event regardless of tool matchers.
An additional
cargo check --locked -p medulla --no-default-featureshits existing ungated workflow references in unchangedharness_transcriptandconfig/types/orchestration.rs. The normal workspace gate above passes; this optional SDK feature combination is not claimed green.Closes #12