Repository navigation
refactor(tinyagents): move tinyagents implementation into its module, wire [components] toggle (#7540) - #7773
Merged
Merged
Conversation
Auto-committed-on: dragonfly
Turns now enter a wind-down phase as their deadline approaches, so the agent can wrap up gracefully instead of being cut off mid-step. Budget and deadline guards share this logic, and the new tests cover the wind-down and turn-deadline paths. Auto-committed-on: dragonfly
Reformat an over-long let binding in the default harness ceiling test so it satisfies the line width limit. No behaviour change. Auto-committed-on: dragonfly
Remove the pub(crate) re-export of SessionTurnSidecar from the host module since it is no longer referenced, keeping the module's exports limited to what is actually used. Auto-committed-on: dragonfly
…E.md,crates/openhuman-core/src/ Auto-committed-on: dragonfly
Replace the struct update shorthand with explicit fields in the context wiring test so the fixture no longer depends on Default and stays valid as the outcome type evolves. Auto-committed-on: dragonfly
The payload summarizer now builds its child run config through the harness's summary_child_config helper instead of constructing it inline, keeping the summarization limits consistent with the rest of the harness. Auto-committed-on: dragonfly
Reformat the touched modules to satisfy rustfmt, wrapping long call arguments and reordering use statements. No behaviour changes. Auto-committed-on: dragonfly
Auto-committed-on: dragonfly
The turn error mapping now calls the harness's classify_run_failure and matches on RunFailureKind instead of inspecting error variants and message text locally, so the ordering-sensitive classification lives in one place. The depth-limit helper moved out of turn_models into the harness, and tests cover the model-call cap and depth limit taking precedence over a stale provider error. Auto-committed-on: dragonfly
…the harness The turn observer, its observation types, and the compaction log projection now come from tinyagents-harness instead of living in openhuman-core, so the embedding crate can depend on them directly. The langfuse feature forwards to the harness feature, and the duplicated observer and cap-pauser test code is dropped in favour of the harness implementations. Auto-committed-on: dragonfly
…vability/cap_pauser.rs Auto-committed-on: dragonfly
…ss_assembly.rs,crates/openhuman Auto-committed-on: dragonfly
…ss_assembly/assembled.rs Auto-committed-on: dragonfly
…vability/event_projection.rs Auto-committed-on: dragonfly
…vability/event_bridge.rs Auto-committed-on: dragonfly
…e_types The observability submodule previously named cap_pauser now only holds the shared bridge types (SubagentScope and the usage/tool maps), since the cap pauser itself lives in tinyagents_harness::events. Renaming it to bridge_types keeps the module name aligned with its contents and updates the imports and README accordingly. Auto-committed-on: dragonfly
Replaced fully qualified paths for CapPauser, PauseRecorder, and turn_observer with direct imports, and condensed the comment explaining why only the top-level turn's cap pause is binding on dispatch. Auto-committed-on: dragonfly
Collapse the nested pause_at_cap check into a single let-binding and tighten the accompanying comment. The behaviour is unchanged: the pause is still recorded on the turn's dispatch guard to prevent a racing sub-agent dispatch from taking down the turn. Auto-committed-on: dragonfly
Shorten the comment explaining why the EventSink is created unconditionally, keeping the note that the bridge, cap pauser and durable journal subscribe to it and that it stays inert when nothing does. Auto-committed-on: dragonfly
The dispatch guard that records a cap pause was being installed whenever events and a handle were present, even when the turn had not actually paused at its cap. It is now only installed when pause_at_cap is set, so a delegated child reaching its own cap no longer stops the parent's fan-out. Auto-committed-on: dragonfly
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. |
Contributor
Tools now read the task recency window from an OpenHumanRunExt host extension installed on the run context instead of per-value task-locals, which do not cross module boundaries. A helper reads the window from the explicit tool carrier, returning none for direct dispatch such as CLI, JSON-RPC, or tests. Auto-committed-on: dragonfly
The morning briefing cron job now sets a task recency window on the agent, which rides the run context into Composio task-fetch tools so Linear, ClickUp, Notion and Asana only surface recently touched tasks. The window is threaded through the run context instead of a task-local, and other cron agents and chat turns leave it unset. Auto-committed-on: dragonfly
…ntext The morning briefing no longer installs a task-local recency window around its turn; the window is now read from the run context via OpenHumanRunExt. The task_recency_context module and its tests are removed since the task-local carrier is no longer needed. Auto-committed-on: dragonfly
Update the boundary baseline to match the current source layout, shifting recorded line numbers and dropping entries for the removed task recency context module. New upstream re-exports in observability and the embed observer are now tracked. Auto-committed-on: dragonfly
Dropped a leftover doc comment describing product-specific task recency scoping that no longer applies to this module. Auto-committed-on: dragonfly
Add a test asserting that a configured task recency window is exposed to tools through the host extension rather than as a task local, and that both an unset window and direct dispatch without a run context remain unrestricted. Auto-committed-on: dragonfly
The specialist agent test now reads omit_memory_context from the presentation agent's extensions field, matching where the flag moved. Auto-committed-on: dragonfly
Reformatted imports and wrapped a few long expressions across the agent prompt, orchestration, and session host modules so the tree matches rustfmt output. No behaviour changes. Auto-committed-on: dragonfly
The layout check's legacy allowances for runtime_session.rs and the session-host factory were bumped to match their current sizes, keeping the exact-limit exceptions accurate after recent additions to those files. Auto-committed-on: dragonfly
Replace the redundant `chat_model: chat_model` with field shorthand in the HostChatBackend response. No behaviour change. Auto-committed-on: dragonfly
Dropped a redundant map_err(Into::into) from the legacy cron jobs test, since the error type already converts without it. Auto-committed-on: dragonfly
Task recency is now carried on `OpenHumanRunExt` in the tinyagents host run context rather than a Composio-owned module, so the harness and Composio READMEs were corrected to point at the new location. The event bridge doc comment was also rewritten to describe the harness `OrderedSender` behaviour, which tries a synchronous send first and spills to a bounded FIFO drain task under backpressure. Auto-committed-on: dragonfly
The agent harness and memory docs now point at `context_wiring.rs` for the compression hooks and note that ladder order and sizing are owned by `ContextLadder` in `tinyagents-harness`, replacing the stale `harness_context_ladder.rs` paths. Auto-committed-on: dragonfly
This was referenced Oct 14, 2026
Closed
Closed
Closed
Tiny Sweeper review
|
This was referenced Oct 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Moves tinyagents implementation out of core into the tinyagents module (module PR tinyhumansai/tinyagents#438, merged a7c9d23c; follow-up tinyagents#441 merged 2e706e81; no release, gitlink pin only) and cuts OpenHuman over to thin host adapters. This PR is partial: the leaves below are done or in part.
Per-leaf
install_wind_down); the other middleware files remain in core.ContextLadder+summary_child_configused; repeated_failure/tool_output/failure_policy untouched.classify_run_failure; policy/outcome/finalize/response_shape/tool_policy not yet moved.OrderedSender/CallDedupe/IterationCursor, harnessCapPauser; graph_tracing/topology remain.OpenHumanRunExthost extension (106 task-local baseline entries remain).DefinitionSet<AgentExt>; one test pending re-pin (below).spawn_parallelruns ontinyagents_orchestration::parallel; spawn_parallel_graph deleted.tool_call_text.rsand dump-prompt golden remain.Part of #7540, Part of #7523, Part of #7740, Part of #7594 #7598 #7600 #7602 #7609 #7612 #7619 #7621 #7605 #7627 #7727. Closes #7616.
Verification
cargo check (workspace, app, modules-linked --features all),
pnpm rust:layout, crate-chain, feature-forwarding, module-pins, agent-runtime-boundary all pass; clippy -D warnings clean. Vendor diff vs upstream/main is only vendor/tinyagents.Failing tests (not blocking)
agent::harness::host_definition::tests::a_legacy_wildcard_table_tool_scope_still_loads_from_a_user_definition: needs tinyagents#441; re-pin blocked on storage Storage: tinyagents/host leftovers after driver-store migration #7688.flows::...composio::tests::backend_dispatch_forwards_the_workflow_connection_id: flaky in parallel, passes alone.channels::tests::runtime_dispatch::dispatch_replies_with_timeout_notice_when_handler_exceeds_deadline: tinychannels-module fixture blocked on tinybus 0.1.4.cargo check --no-default-features -p openhumanfails at modules/mod.rs:305 (pre-existing on upstream/main).$OPENHUMAN_HOME/agents(follow-up).