Skip to content

chore: refresh TinyBus and TinyInference for OpenHuman module - #160

Merged
senamakel merged 9 commits into
tinyhumansai:mainfrom
senamakel:tinybus-refresh
Sep 24, 2026
Merged

senamakel merged 9 commits into
tinyhumansai:mainfrom
senamakel:tinybus-refresh

Conversation

@senamakel

@senamakel senamakel commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

Summary

Merge upstream main into OpenHuman's pinned TinyMemory branch, preserving its existing split-inference changes. Refresh the vendored TinyBus and TinyInference revisions, update the split inference dependency requirements to 0.3, and regenerate Cargo.lock. This prepares a new TinyMemory module release for OpenHuman.

Related issue

None.

API or behavior changes

The existing split inference work on the pinned branch becomes part of the next TinyMemory release. The module builds against the latest TinyBus and TinyInference main revisions.

Validation

  • cargo check --manifest-path vendor/tinymemory/Cargo.toml --quiet from OpenHuman's worktree
  • Full CI and release matrix (CI)

Tests

No new tests added. The release workflow runs the module suite and platform builds.

Documentation

No new public contract; the dependency and source pins are updated.

Checklist

  • The change is focused on preparing the next OpenHuman module release
  • No new #[allow(...)], #[ignore], or relaxed lints
  • No secrets, tokens, or .env contents in the diff or the description

Summary by CodeRabbit

  • Chores
    • Updated the underlying AI model integration to use separate components for chat and embeddings.
    • Updated supporting libraries to newer versions.

senamakel and others added 8 commits September 18, 2026 16:24
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
@coderabbitai

coderabbitai Bot commented Sep 24, 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: 7ca84d7f-36a7-4b23-b76e-551ad3a263f9

📥 Commits

Reviewing files that changed from the base of the PR and between 1a03a00 and a55cfea.

⛔ Files ignored due to path filters (2)
  • Cargo.lock is excluded by !**/*.lock
  • crates/tinymemory-module/Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (18)
  • Cargo.toml
  • crates/tinymemory-core/Cargo.toml
  • crates/tinymemory-core/src/chat.rs
  • crates/tinymemory-core/src/chat_host.rs
  • crates/tinymemory-core/src/embedding_adapter.rs
  • crates/tinymemory-core/src/store/factories.rs
  • crates/tinymemory-core/src/store/factories_tests.rs
  • crates/tinymemory-core/src/test_seams.rs
  • crates/tinymemory-core/src/tree/score/embed/factory.rs
  • crates/tinymemory-core/src/tree/score/embed/mod.rs
  • crates/tinymemory-core/src/tree/tree_runtime/engine.rs
  • crates/tinymemory-core/src/tree/tree_runtime/engine_tests.rs
  • crates/tinymemory-module/Cargo.toml
  • crates/tinymemory-module/src/chat.rs
  • crates/tinymemory-module/src/chat_test.rs
  • crates/tinymemory-module/tests/module_e2e.rs
  • vendor/tinybus
  • vendor/tinyinference
 __________________________________
< Code Wars Episode IV: A New Bug. >
 ----------------------------------
  \
   \   \
        \ /\
        ( )
      .( o ).

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

@senamakel
senamakel merged commit b2a5e3a into tinyhumansai:main Sep 24, 2026
20 of 22 checks passed
@tinysweeper

tinysweeper Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Tiny Sweeper review

Tiny Sweeper reviewed this change across 6 lane(s) and found 0 active actionable finding(s). Detailed lane evidence and any incomplete work are listed below.

State: Changes requested
Priority: high
Reviewed head: 5b82e7126e5c
Updated: 1790269212 (Unix time)

Review snapshot

Change surface Files Review signal Count
Production 8 Active findings 6
Tests 5 Noted findings 0
Documentation 0 Resolved findings 1
Configuration 3 Pending checks/questions 0

Completeness: Complete
Test assessment: No supported feature-to-test mapping was available; this does not mean tests are absent or passed.

What changed

The review could not produce a supported behavioral summary; inspect the cited changed surface and lane details below.

Features

None identified with supported citations.

Tests

No supported feature-to-test mapping was produced. Test execution is not inferred.

Findings

  • medium · critique · Update the module lockfile for the renamed dependency — This standalone workspace has its own committed `crates/tinymemory-module/Cargo.lock`, and changing the direct dependency from `tinyinference` to `tinyinference-llm` changes the re (crates/tinymemory\-module/Cargo\.toml:56)
  • medium · critique · Regenerate the workspace lockfile for the split dependencies — Replacing `tinyinference` with these two direct dependencies changes the `tinymemory-core` package dependency list recorded in the committed workspace `Cargo.lock`. Because that lo (crates/tinymemory\-core/Cargo\.toml:35)
  • medium · critique · Regenerate the root lockfile for the split TinyInference crates — This changes the patched package set and their resolved sources from the old `tinyinference` package to three path packages, but the pull request contains no corresponding `Cargo.l (Cargo\.toml:81)
  • medium · tests · Commit the updated lockfiles for the renamed dependencies — Changing the direct dependency from `tinyinference` to `tinyinference-embeddings` and `tinyinference-llm` invalidates the committed `Cargo.lock` files. The root `Cargo.lock` and ` (crates/tinymemory\-core/Cargo\.toml:35)
  • high · description · Regenerate and commit the root workspace Cargo.lock — The root `Cargo.toml` replaces the single `tinyinference` path override with three new subcrate path overrides. The root workspace's `Cargo.lock` therefore needs to be regenerated (\(pull request description\))
  • high · description · Regenerate and commit the module workspace Cargo.lock — The module workspace's `Cargo.toml` replaces the `tinyinference = "0.2"` dependency with `tinyinference-llm = "0.3"` and adds path overrides for the three new subcrates. The works (\(pull request description\))

Resolved this pass

  • Update the module lockfile for the renamed dependency

Before merge

  • Address Regenerate and commit the root workspace Cargo.lock (\(pull request description\)).
  • Address Regenerate and commit the module workspace Cargo.lock (\(pull request description\)).

How this fits together

flowchart LR
  n0["...ng_settings_local_overrides_memory_config<br/>changed"]:::changed
  n1["...tings_local_with_empty_model_uses_default<br/>changed"]:::changed
  n2["start_mock_ollama<br/>changed"]:::changed
  n3["TestChatHost<br/>changed"]:::changed
  n4["effective_embedding_settings"]:::impacted
  n5["ChatHost"]:::impacted
  n6["Result"]:::impacted
  n7["effective_embedding_settings_probed"]:::impacted
  n8["...settings_keep_ollama_when_daemon_responds"]:::impacted
  n0 -->|calls| n4
  n0 -->|tests| n4
  n1 -->|calls| n4
  n1 -->|tests| n4
  n3 -->|implements| n5
  n5 -->|uses| n6
  n7 -->|calls| n4
  n8 -->|calls| n2
  n8 -->|tests| n2
  n8 -->|calls| n7
  n8 -->|tests| n7
  classDef changed fill:#0d4429,stroke:#238636,color:#e6edf3
  classDef impacted fill:#161b22,stroke:#6e7681,color:#c9d1d9
  classDef flagged fill:#5a1e02,stroke:#d93f0b,color:#ffffff
  classDef blocking fill:#67060c,stroke:#f85149,color:#ffffff
Loading
Agent review details

critique

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Reviewed 16 files; 4 findings. (1 observation(s) grouped into shared inline comments) _The code index is behind this pull request (indexed at `1142af252a15`), so retrieved context may be out of date._ _5 memory call(s) failed (model: cortex: v1/recall: timed out after 10s), so this review saw part of what the engine holds._
  • Evidence: crates/tinymemory\-module/Cargo\.toml — Update the module lockfile for the renamed dependency
  • Evidence: crates/tinymemory\-core/Cargo\.toml — Regenerate the workspace lockfile for the split dependencies
  • Evidence: Cargo\.toml — Regenerate the root lockfile for the split TinyInference crates

security

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Reviewed 16 files; 1 finding. _The code index is behind this pull request (indexed at `1142af252a15`), so retrieved context may be out of date._ _5 memory call(s) failed (model: cortex: v1/recall: timed out after 10s), so this review saw part of what the engine holds._

tests

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: This pull request correctly renames the `tinyinference` dependency into `tinyinference-embeddings`, `tinyinference-llm`, and `tinyinference-core` across the workspace. All import paths and patch entries are updated accordingly. The change is safe to merge once the workspace lockfiles are regenerated and committed; the missing lockfile updates are the only problem. _The code index is behind this pull request (indexed at `1142af252a15`), so retrieved context may be out of date._ _5 memory call(s) failed (model: cortex: v1/recall: timed out after 10s), so this review saw part of what the engine holds._
  • Evidence: crates/tinymemory\-core/Cargo\.toml — Commit the updated lockfiles for the renamed dependencies

commits

  • Conclusion: Neutral
  • Scope reviewed: all assigned evidence
  • Lane summary: Nothing sensitive found in what this pull request commits.

description

  • Conclusion: Failure
  • Scope reviewed: all assigned evidence
  • Lane summary: This pull request splits the single `tinyinference` dependency into three subcrates (`tinyinference-core`, `tinyinference-embeddings`, `tinyinference-llm`) across the root and module workspaces, and updates version requirements. However, it does not commit the regenerated `Cargo.lock` files for either workspace, which breaks reproducible builds and repeats an earlier finding. The change is otherwise correct and safe to merge once the lockfiles are added. (1 observation(s) grouped into shared inline comments) _The code index is behind this pull request (indexed at `1142af252a15`), so retrieved context may be out of date._ _5 memory call(s) failed (model: cortex: v1/recall: timed out after 10s), so this review saw part of what the engine holds._
  • Evidence: \(pull request description\) — Regenerate and commit the root workspace Cargo.lock
  • Evidence: \(pull request description\) — Regenerate and commit the module workspace Cargo.lock

e2e

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: This pull request refactors internal dependency imports from the monolithic `tinyinference` crate to its split subcrates (`tinyinference-llm`, `tinyinference-embeddings`, `tinyinference-core`). No new external surfaces (routes, commands, flags, persisted formats, messages) are introduced; the public API remains identical. The updated end-to-end test (`module_e2e.rs`) passes, and both CI jobs succeeded. The change is a safe internal rename with no behavioural gaps. 2 end-to-end jobs passed on this head. _The code index is behind this pull request (indexed at `1142af252a15`), so retrieved context may be out of date._ _5 memory call(s) failed (model: cortex: v1/recall: timed out after 10s), so this review saw part of what the engine holds._
Evidence and run details
  • Models: ladder/vectors, gpt-5.6-luna, deepseek-v4-flash
  • Spend: $0.019134
  • Tokens: 802120 input · 27522 output · 113373 cached · 741 embedding
Head State Pass summary
5b82e7126e5c ready for maintainer review 0 active finding(s), 0 resolved finding(s) (at 1790268945)
5b82e7126e5c changes requested 6 active finding(s), 1 resolved finding(s) (at 1790269212)

tinysweeper 0.1.0

@tinysweeper tinysweeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tinysweeper found nothing blocking. Approving.

             $0.0178 · 695,302 in / 23,870 out · 41,118 cached (6%) · flash, ladder/vectors, gpt-5.6-luna, deepseek-v4-flash · 741 embedded
critique:    $0.0086 · 335,024 in / 8,477 out  · 20,669 cached (6%) · gpt-5.6-luna, deepseek-v4-flash
security:    $0.0078 · 307,278 in / 6,078 out  · 16,353 cached (5%) · gpt-5.6-luna
tests:       $0.0004 · 17,207 in  / 1,977 out  · 1,536 cached (9%)  · deepseek-v4-flash
description: $0.0002 · 7,657 in   / 1,946 out  · 1,024 cached (13%) · deepseek-v4-flash
e2e:         $0.0003 · 17,735 in  / 789 out    · 1,536 cached (9%)  · deepseek-v4-flash

@tinysweeper tinysweeper Bot added the priority: p3 Whenever. Cosmetic, a nicety, or a cleanup with no user visible effect. label Sep 24, 2026

@tinysweeper tinysweeper Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting changes: 1 lane(s) blocking, worst finding is high.

Fix or reply to the findings below and push. The next review clears this automatically once they are gone — you should not need to dismiss anything by hand.

             $0.0191 · 802,120 in / 27,522 out · 113,373 cached (14%) · ladder/vectors, gpt-5.6-luna, deepseek-v4-flash · 741 embedded
critique:    $0.0100 · 406,297 in / 12,560 out · 45,652 cached (11%)  · gpt-5.6-luna, deepseek-v4-flash
security:    $0.0083 · 342,825 in / 6,537 out  · 38,025 cached (11%)  · gpt-5.6-luna
tests:       $0.0002 · 18,260 in  / 2,081 out  · 11,264 cached (62%)  · deepseek-v4-flash
description: $0.0002 · 8,710 in   / 1,971 out  · 2,048 cached (24%)   · deepseek-v4-flash
e2e:         $0.0002 · 18,788 in  / 1,026 out  · 11,264 cached (60%)  · deepseek-v4-flash

tinycortex = { version = "0.1", features = ["contacts"] }
# Provider-neutral chat request and response types carried over TinyBus.
tinyinference = "0.2"
tinyinference-llm = "0.3"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

priority medium critique confident

Update the module lockfile for the renamed dependency

This standalone workspace has its own committed crates/tinymemory-module/Cargo.lock, and changing the direct dependency from tinyinference to tinyinference-llm changes the resolved package graph. The lockfile must be regenerated and committed with this manifest; otherwise locked/reproducible builds can reject the manifest or silently rewrite the lockfile.

[RULE] stale-lockfile ·

Comment thread Cargo.toml
# both crates share one trait identity.
[patch."https://github.com/tinyhumansai/tinyinference"]
tinyinference = { path = "vendor/tinyinference/crates/tinyinference" }
tinyinference-core = { path = "vendor/tinyinference/crates/tinyinference-core" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

priority medium critique likely

Regenerate the root lockfile for the split TinyInference crates

This changes the patched package set and their resolved sources from the old tinyinference package to three path packages, but the pull request contains no corresponding Cargo.lock update. With --locked or reproducible CI builds, Cargo can reject the manifest as inconsistent or retain the old package/source entries. Regenerate and commit the root lockfile with this manifest change.

[RULE] stale-lockfile ·

# summarizer and embedding factory. Agent runtime and session behavior do not
# belong in the memory layer.
tinyinference = "0.2"
tinyinference-embeddings = "0.3"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

priority medium tests confident

Commit the updated lockfiles for the renamed dependencies

Changing the direct dependency from tinyinference to tinyinference-embeddings and tinyinference-llm invalidates the committed Cargo.lock files. The root Cargo.lock and crates/tinymemory-module/Cargo.lock must be regenerated (e.g. cargo generate-lockfile in each workspace) and committed together with this manifest change. Without them, locked/reproducible builds will reject the manifest as inconsistent, and the lockfile will otherwise be silently rewritten on the next cargo update.


Additional critique observation

priority medium confident

Regenerate the workspace lockfile for the split dependencies

[RULE] stale-lockfile

Replacing tinyinference with these two direct dependencies changes the tinymemory-core package dependency list recorded in the committed workspace Cargo.lock. Because that lockfile is not part of this change, cargo check --locked and other reproducible builds will reject the manifest as inconsistent (and an unlocked build will silently rewrite the lockfile). Regenerate and commit the workspace lockfile with this manifest change.

[RULE] stale-lockfile ·

@tinysweeper tinysweeper Bot added priority: p1 Next. Wrong behaviour a user will hit, or a security weakness behind a condition. and removed priority: p3 Whenever. Cosmetic, a nicety, or a cleanup with no user visible effect. labels Sep 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority: p1 Next. Wrong behaviour a user will hit, or a security weakness behind a condition.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant