Repository navigation
[tiny-modules] tinyskills: move scaffolding, fetch/scan retry and discovery walking into tinyskills #7577
Copy link
Copy link
Closed
Labels
refactorStructural code change without a primary behavior change.Structural code change without a primary behavior change.rust-coreCore Rust runtime in src/: CLI, core_server, shared infrastructure.Core Rust runtime in src/: CLI, core_server, shared infrastructure.skillsQuickJS skills runtime, manifests, sync, and skill tooling in src/openhuman/skills/.QuickJS skills runtime, manifests, sync, and skill tooling in src/openhuman/skills/.subtaskSubtask of a larger tracked effort.Subtask of a larger tracked effort.
Description
Parent: #7532
Context
The module defines the ⟦tj:<hash>⟧ recovery marker and owns the declarations of the juice_* tools. The host still parses the marker itself, in normalize_handle and classify_handle_arg. It also defines the tool-name strings locally: RETRIEVE_TOOL_NAME, LEGACY_TINYJUICE_RETRIEVE_TOOL_NAME and REPL_TOOL_NAMES.
What moves
crates/openhuman-core/src/inference/tokenjuice/repl_tools.rs(399):normalize_handle(160),HandleArg(173),classify_handle_arg(182) + testscrates/openhuman-core/src/inference/tokenjuice/mod.rs(438):RETRIEVE_TOOL_NAME(19),LEGACY_TINYJUICE_RETRIEVE_TOOL_NAME(20)repl_tools.rs:14REPL_TOOL_NAMES
What stays in OpenHuman
ModuleReplTool/TokenjuiceRetrieveToolimpls and artifact authorisation- MlHost callback (
generate.rs,modules/tokenjuice_host.rs), install from config, RPC (schemas.rs,config_patch.rs)
Upstream target
- Repo
tinyhumansai/tinyjuice, cratetinyjuice-bus:handle::{parse, classify}pure functions andtools::{RETRIEVE, LEGACY_RETRIEVE, REPL_TOOLS}constants besiderepl_tool_declarations; bump contract version. - Tracks tinyjuice#59.
Host adapter after the move
Host tools call tinyjuice_bus::handle::* and reference tool names via bus constants; ~15 agent/harness files that match on juice_* names switch to the constants.
Acceptance criteria
- Iterate locally against the on-demand compiled module (E0 [tiny-modules] E0: module source modes — load modules from release, linked or source build (no release per change) #7524
linked/sourcemodes are for local dev and testing only, never CI) - Upstream PR merged in
tinyhumansai/tinyjuicefirst (fmt, clippy-D warnings, tests, coverage gate) - Submodule release published; registry record (
version,release_url, everyPlatformAssetdigest copied verbatim from the release'schecksum.toml) and gitlink re-pinned to that release before this OpenHuman PR's CI can pass (node scripts/ci/check-module-pins.mjs) - Tests that exercise only the moved logic move with it; host-adapter / composition tests stay here
- Old core code and its tests deleted in the same PR — no shim, re-export or alias left behind
- No contract type redeclared in OpenHuman; members called through
tinyjuice-busconstants; contract version bumped if the bus changed -
scripts/ci/module-boundaries.json/docs/module-boundary-inventory.mdupdated -
pnpm rust:layout,cargo check --manifest-path Cargo.toml,cargo check --manifest-path crates/openhuman-app/Cargo.toml, affectedpnpm debug rust <filter>green - Regression test proving the behaviour is unchanged end-to-end through the host adapter
- Regression test: handle parsing accepts/rejects the same inputs (marker, bare hash, legacy forms) before/after;
rg '"juice_(retrieve|find|extract|summarize)"' crates/openhuman-corefinds no literals outside tests
Depends on
#7524 (E0 module source modes, for local iteration)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
refactorStructural code change without a primary behavior change.Structural code change without a primary behavior change.rust-coreCore Rust runtime in src/: CLI, core_server, shared infrastructure.Core Rust runtime in src/: CLI, core_server, shared infrastructure.skillsQuickJS skills runtime, manifests, sync, and skill tooling in src/openhuman/skills/.QuickJS skills runtime, manifests, sync, and skill tooling in src/openhuman/skills/.subtaskSubtask of a larger tracked effort.Subtask of a larger tracked effort.
Activity
senamakel commentedon Oct 13, 2026
Module side merged: tinyhumansai/tinyskills#33 (merge 5f0361e). Released https://github.com/tinyhumansai/tinyskills/releases/tag/v0.4.0 (tag 27cf6d0, no .crate asset; cargo package cannot resolve the tinytools git dep, fix in tinyskills#34). Note:
search::projecttakes the sanitiser as a parameter (host passes tinytools_std sanitize_for_llm) to keep reqwest out of the crate. Host adapter swap and gitlink repin to v0.4.0 remain.senamakel commentedon Oct 13, 2026
Done in #7681 (merged, b80e23c); module PR tinyhumansai/tinyskills#33, release v0.4.0.