Skip to content

chore(modules): re-pin tinymemory to v1.22.4 - #6924

Merged
senamakel merged 4 commits into
tinyhumansai:mainfrom
senamakel:bump-tinymemory-1.22.4
Oct 2, 2026
Merged

senamakel merged 4 commits into
tinyhumansai:mainfrom
senamakel:bump-tinymemory-1.22.4

Conversation

@senamakel

@senamakel senamakel commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Summary

Re-pins the tinymemory module to v1.22.4, which carries tinymemory#189: Memory::store now returns before its vectors are embedded.

Why

A traced bench turn (OpenHuman, current main) spent about 1.5 s after the last model response in two sequential memory autosaves (finalize_after_durable_commit). Each store waited on a cloud embedding call, 655 ms and 847 ms, and both calls failed because the harness has no real TinyHumans credential. The write still succeeded without a vector, so the wait bought nothing. With a working key each autosave still costs a network round trip on the end of every turn.

The module is loaded from the published release, not built from the gitlink, so the fix reaches OpenHuman only through this pin.

Changes

  • registry/records_memory_juice.rs: version, release URL and the 11 per-platform archives with their digests, copied from the published v1.22.4 checksum.toml (not from a local build).
  • ci-full.yml, e2e-playwright.yml, e2e-reusable.yml: the memory_version / memory_sha256 fixtures (ubuntu-22.04-x86_64 row).
  • modules/memory/capabilities.rs: ARTIFACT_CAPABILITIES_PIN to 1.22.4. git diff v1.22.2..v1.22.4 over the capability files is empty, so the advertised families are unchanged.
  • Cargo.lock, crates/openhuman-app/Cargo.lock, and the vendor/tinymemory gitlink (v1.22.4, ddabd24).
  • module-pin-exemptions.json: drops the tinymemory exemption, since the registry pin and the submodule now agree exactly and the gate rejects a stale one.

Verification

  • cargo test -p openhuman --lib -- modules::registry passes, and so does the_capability_list_matches_the_pinned_release.
  • node scripts/ci/check-module-pins.mjs no longer reports tinymemory. It still reports other modules in my checkout (stale exemptions for tinydocs, tinywallet and others); I did not touch those.
  • Not yet measured: the effect on the bench tail. I'll post the A/B numbers here once the bundle is rebuilt on this branch.

Summary by CodeRabbit

  • Updates
    • Updated the bundled TinyMemory component to version 1.22.4 across supported platforms and automated test workflows.
    • The new version returns from store before generating embedding vectors.

senamakel and others added 4 commits October 2, 2026 17:42
Update the tinymemory module dependency to version 1.22.4 across all CI workflow files, Cargo.lock files, and the registry record. This includes updating the version string, release URL, and all platform-specific archive filenames and SHA-256 checksums to match the new release.

Auto-committed-on: macbook
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Updates the pinned artifact version from 1.22.2 to 1.22.4 and extends the comment to note that the new release makes `store` return before its vectors are embedded, with no change to the advertised capability families.

Auto-committed-on: macbook
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The tinymemory module was removed from the pin exemptions list because its legacy test-file rename commits have been released, making the pin no longer necessary.

Auto-committed-on: macbook
Co-authored-by: Medulla <medulla@tinyhumans.ai>
@tinysweeper

tinysweeper Bot commented Oct 2, 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: Incomplete
Priority: none
Reviewed head: 9375fd60cef0
Updated: 1790944134 (Unix time)

Review snapshot

Change surface Files Review signal Count
Production 2 Active findings 0
Tests 0 Noted findings 0
Documentation 0 Resolved findings 0
Configuration 4 Pending checks/questions 14

Completeness: Incomplete
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

No active actionable findings.

Pending checks: Rust E2E (mock backend), Build Playwright E2E Artifact, E2E (Playwright / web lane), Desktop E2E (full suite, 3 OS)

Could not review: .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs

Before merge

  • Complete the critique review for .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs.
  • Complete the security review for .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs.
  • Wait for Rust E2E (mock backend), Build Playwright E2E Artifact, E2E (Playwright / web lane), Desktop E2E (full suite, 3 OS).

How this fits together

flowchart LR
  n0["artifact_serves"]:::impacted
  n1["artifact_capabilities"]:::impacted
  n2["capabilities_for"]:::impacted
  n3["assume_full_capabilities"]:::impacted
  n0 -->|calls| n3
  n1 -->|calls| n2
  n1 -->|calls| n3
  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: Neutral
  • Scope reviewed: incomplete; unanswered: .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs
  • Lane summary: Reviewed 0 files; 0 findings. 5 files could not be reviewed: .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs.

security

  • Conclusion: Neutral
  • Scope reviewed: incomplete; unanswered: .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs
  • Lane summary: Reviewed 0 files; 0 findings. 5 files could not be reviewed: .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs.

tests

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Bumps the pinned tinymemory version from 1.22.2 to 1.22.4 across CI workflows, the registry record, and the capabilities constant, and removes an associated exemption. The change is purely data – version strings and checksums – with no new logic; the existing test that asserts the capabilities list matches the pin will pass because the pin is updated in lockstep. No test file needed to be changed. _Code retrieval was unavailable (model: ladder embeddings returned 402 Payment Required: {"error":"Insufficient USD or Diem balance to complete request. Visit https://venice\.ai/settings/api to add credits."}), so this review saw the diff alone._ _Memory held nothing relevant to this change._

commits

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

description

  • Conclusion: Success
  • Scope reviewed: all assigned evidence
  • Lane summary: Re-pins the tinymemory module to v1.22.4 across registry records, CI workflow fixtures, capabilities pin, and submodule reference, and removes the now-redundant module-pin exemption. The change is sound and consistent with the repository's pinning convention. _Code retrieval was unavailable (model: ladder embeddings returned 402 Payment Required: {"error":"Insufficient USD or Diem balance to complete request. Visit https://venice\.ai/settings/api to add credits."}), so this review saw the diff alone._ _Memory held nothing relevant to this change._

e2e

  • Conclusion: Neutral
  • Scope reviewed: all assigned evidence
  • Lane summary: Bumps tinymemory module from v1.22.2 to v1.22.4, updating the capability pin, registry record, workflow artifact references, and removing a stale pin exemption. The behavioural change (store returns before vectors are embedded) is an internal optimisation that does not alter the external contract; the existing end-to-end memory round-trip test covers the store/recall path and will catch regressions. No new end-to-end test is required. The CI changes are mechanical copies of the registry pin, and the removed exemption tightens a consistency check. No findings. Waiting on end-to-end jobs: `Rust E2E (mock backend)`, `Build Playwright E2E Artifact`, `E2E (Playwright / web lane)`, `Desktop E2E (full suite, 3 OS)`.
  • Unresolved questions/checks: Rust E2E (mock backend), Build Playwright E2E Artifact, E2E (Playwright / web lane), Desktop E2E (full suite, 3 OS)
Evidence and run details
  • Models: deepseek/deepseek-v4-flash
  • Spend: $0.004034
  • Tokens: 34310 input · 6075 output · 2048 cached · 0 embedding
Head State Pass summary
9375fd60cef0 incomplete 0 active finding(s), 0 resolved finding(s) (at 1790944134)

tinysweeper 0.1.0

@coderabbitai

coderabbitai Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

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

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 75eb8dcf-eb8e-4a51-a661-8ebb4e41dac2

📥 Commits

Reviewing files that changed from the base of the PR and between ce1a859 and 9375fd6.

⛔ Files ignored due to path filters (2)
  • Cargo.lock is excluded by !**/*.lock
  • crates/openhuman-app/Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (7)
  • .github/workflows/ci-full.yml
  • .github/workflows/e2e-playwright.yml
  • .github/workflows/e2e-reusable.yml
  • crates/openhuman-core/src/modules/memory/capabilities.rs
  • crates/openhuman-core/src/modules/registry/records_memory_juice.rs
  • scripts/ci/module-pin-exemptions.json
  • vendor/tinymemory
💤 Files with no reviewable changes (1)
  • scripts/ci/module-pin-exemptions.json

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review.


📝 Walkthrough

Walkthrough

TinyMemory references now use version 1.22.4. The registry metadata, capability pin, vendor submodule, and CI workflows were updated. The TinyMemory pin exemption was removed.

Changes

TinyMemory release update

Layer / File(s) Summary
Update TinyMemory release references
crates/openhuman-core/src/modules/registry/records_memory_juice.rs, crates/openhuman-core/src/modules/memory/capabilities.rs, vendor/tinymemory, scripts/ci/module-pin-exemptions.json
The registry record and capability pin now reference version 1.22.4. The registry record updates URLs, filenames, and checksums for the existing platform assets. The vendor submodule points to a new commit, and the pin exemption was removed.
Update CI workflow pins
.github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml
The E2E jobs use TinyMemory 1.22.4 and its updated SHA-256 checksum.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Suggested reviewers: yellowsnnowmann

Merge Risk: ⚪ Minimal · up to 9375f

The TinyMemory release references are aligned, with no identified issue requiring resolution before merge.

Security Architecture Review

Security architecture risk: 🔵 Low · up to 9375f

The update preserves the advertised capabilities and release-selection structure. No introduced security defect was established, but the released implementation was unavailable, leaving background embedding behavior during deletion, shutdown and permission changes unverified.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — The changed completion boundary affects stored user and assistant conversation content handled by the selected memory dependency. The available evidence does not establish a new tenant boundary, additional privilege or broader cloud destination.

Trust Boundaries and Controls

  • observed — The host passes conversation text and thread identity through the memory abstraction and awaits its result. That ordering does not establish how embedding work started by the dependency retains identity, observes permission changes or stops after deletion.

Hardening Proposals

  • proposed — Before relying on the new completion boundary, verify the released implementations preserve durable-write-before-return and define embedding-task identity, ownership, update/delete ordering, cancellation, retry and shutdown recovery, including behavior after authorization or provider configuration changes.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: re-pinning TinyMemory to version 1.22.4.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 2…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


A rabbit checks the pinned release,
New hashes settle in their place.
CI fetches the updated store,
Across each platform, checksum sure.
The bunny hops, then shuts the door.

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

@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, but could not review everything, so this is not an approval: .github/workflows/ci-full.yml, .github/workflows/e2e-playwright.yml, .github/workflows/e2e-reusable.yml, crates/openhuman-core/src/modules/memory/capabilities.rs, crates/openhuman-core/src/modules/registry/records_memory_juice.rs.

             $0.0040 · 34,310 in / 6,075 out · 2,048 cached (6%)  · deepseek/deepseek-v4-flash
tests:       $0.0009 · 8,164 in  / 958 out   · 0 cached (0%)      · deepseek/deepseek-v4-flash
description: $0.0009 · 8,038 in  / 1,054 out · 0 cached (0%)      · deepseek/deepseek-v4-flash
e2e:         $0.0013 · 11,439 in / 2,156 out · 1,536 cached (13%) · deepseek/deepseek-v4-flash

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

Copy link
Copy Markdown
Member Author

Bench result with this pin (OpenHuman micro suite, 5 tasks x 3 rounds = 15 samples per side, deepseek/deepseek-v4.1-flash, same machine and settings):

tinymemory 1.22.2 (main) tinymemory 1.22.4 (this PR)
passed 15/15 15/15
shutdown tail median (last model response to task end) 1.57 s 0.03 s
shutdown tail range 1.49 to 2.29 s 0.02 to 0.05 s
task wall median 8.51 s 7.41 s
cold start to first call median 0.70 s 0.71 s
CPU mean per task 0.72 s 0.76 s

Cold start and CPU are unchanged, as expected: the change only removes the two embedding waits after the last model call. Caveat: the two sides were run at different times rather than interleaved, so I would read the wall median as indicative; the tail drop is far outside the run-to-run spread.

@senamakel
senamakel merged commit 7aebeb2 into tinyhumansai:main Oct 2, 2026
31 of 34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority: p3 Whenever. Cosmetic, a nicety, or a cleanup with no user visible effect.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant