Skip to content

feat(memory): drive TinyMemory's agent lifecycle around every turn - #6993

Merged
senamakel merged 127 commits into
tinyhumansai:mainfrom
senamakel:memory-lifecycle
Oct 4, 2026
Merged

senamakel merged 127 commits into
tinyhumansai:mainfrom
senamakel:memory-lifecycle

Conversation

@senamakel

@senamakel senamakel commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

Summary

  • Memory now runs TinyMemory's agent memory lifecycle (tinymemory#194, released in v1.23.0) around every agent turn, using its hooks:
    • pre-turn: the user turn is logged and a token-budgeted memory pack is recalled;
    • injection: the pack rides every model request of the turn, never persisted;
    • post-turn: the reply is logged with its tool calls;
    • compaction: recalled memory is added to the checkpoint;
    • session start: after a compacted resume, the thread's earlier turns lead the pack.
  • Belief builds run from a persisted background job queue (memory_background cron).
  • Documents live in a shared brain filed by source type (pdf, markdown, notion, github, web, …).
  • Removed legacy memory plumbing:
    • the cron-compiled context.md and its injection;
    • per-thread conversation batching, the idle flusher and the exit flush;
    • the nested per-agent namespace tree;
    • the memory_context_* and memory_conversations_get/set RPCs;
    • dead v1 leftovers: tests/memory_roundtrip_e2e.rs, examples/run_memory_reconcile.rs, and the iMessage scanner's call to the removed memory_doc_ingest.
  • Per-agent memory with a host binding:
    • each agent's conversations live at agent:<id> under a layout root, while learnings and the brain are shared;
    • teams get their own root;
    • coordinating hosts (e.g. OpenCompany) bind each agent with [memory] agent_id / root or openhuman_embed::AgentSpec::memory(MemoryBinding::new(id).root(root)).
  • New RPCs and UI:
    • RPCs: policy_get/set, pack_preview, agents_list, brain_sources/search/ingest/forget, jobs_list/run;
    • Memory page chips: engine, ask (with Pack preview), explorer, learnings (built beliefs marked), conversations, brain, background, settings.

Problem

  • memory-v2 still carried its own host machinery that TinyMemory now provides as a standard lifecycle:
    • turn batching with idle and exit flushes;
    • a periodic context.md brief that reached new threads only;
    • compaction that never consulted memory;
    • a namespace tree that did not match TinyMemory's layout.
  • Hosts reusing OpenHuman agents had no way to give each agent its own memory.
  • Hosted memory calls did not carry x-sdk-name. Every other backend caller does.

Solution

  • Crates. vendor/tinymemory moves to v1.23.1, which includes tinymemory#196. The tinymemory facade is replaced by tinymemory-api, tinymemory-tools and tinymemory-integrations.
  • memory::scope. MemoryIdentity resolves to a layout root and a memory agent id. Order: host binding, then [memory.agents.<def>] agent_id/root/recall, then team root, then the definition id.
  • memory::lifecycle:
    • hooks (pre_turn, post_turn, compaction) are bounded by timeouts and never fail a turn;
    • jobs is the persisted, de-duplicated queue, delayed by build_delay_secs and paused with the scheduler gate;
    • views serves the UI RPCs.
  • Wiring in the agent loop:
    • pre-turn runs in the session host's before_turn, concurrently with request enrichment;
    • MemoryPackMiddleware injects with push_ephemeral_instruction, so the transcript and prefix cache are untouched;
    • post-turn runs after the durable commit, under the session's own config;
    • MemoryRecallSummarizer wraps the compaction summarizer;
    • the turn's MemoryTurn rides OpenHumanRunContext.
  • memory::guard::ScrubbingEngine. It wraps every bound engine, so all write paths are scrubbed, including TinyMemory's own lifecycle writes.
  • Sync and channels:
    • source sync files items into the brain by source type and queues one belief build per source;
    • channel forget now goes through recorded channel→thread pairs, since lifecycle turn items carry no channel tag.
  • Kept and renamed:
    • the single memory tool keeps the same actions, confined to the identity's layout;
    • omit_memory_context now means "no per-turn pack for this agent";
    • the Tools panel's three dead memory toggles become one memory toggle, with legacy ids mapped.
  • Upstream. tinymemory#196 adds CortexEngine::with_default_headers / EngineSettings::headers. The hosted engine now sends the transport's attribution headers.

Submission Checklist

  • Tests added or updated:
    • unit tests for scope, hooks, jobs, views, guard, brain, channels, backfill, the middleware, the compaction summarizer and the session-host window;
    • tests/memory_v2_e2e.rs, rewritten for the new RPCs, plus a full web-chat turn. The turn asserts that the pack reaches the inference request, that both turns are logged with x-sdk-name, and that no pack is in the transcript;
    • embed AgentSpec::memory;
    • Vitest for every changed memory tab.
  • Diff coverage ≥ 80%: not measured locally yet (tests deferred, see Validation).
  • Coverage matrix updated (docs/TEST-COVERAGE-MATRIX.md rows 8.2.x).
  • Affected feature IDs listed under Related.
  • No new external network dependencies (the mock backend is used).
  • N/A Manual smoke checklist: no release-cut surface changed beyond the Memory page.
  • N/A Linked issue: none.

Impact

  • Desktop, web and CLI: every user-authored turn makes one bounded memory round trip before the model runs (default timeout 1.5 s). Turns never block on memory.
  • Prompt cache. The pack is request-only (a tail system message, or a note on the tail message for system-hoisting models), so the cached prefix and the persisted transcript are unchanged.
  • Migration:
    • retired config keys are ignored;
    • the retired memory_context_refresh cron row is removed at startup;
    • existing items stay readable (everything under the default root is in the holistic reach).
  • Breaking RPC change: memory_context_* and memory_conversations_get/set are gone. The UI is updated in this PR.

Related

  • Closes: N/A
  • Includes tinymemory#196 (attribution headers), merged and released in v1.23.1. vendor/tinymemory is pinned to that tag (4b18323).
  • Builds on tinymemory#194 (agent memory lifecycle, merged).
  • Feature IDs: memory.turn_pack (replaces memory.context), memory.documents (Brain), memory.conversations, memory.agent_namespaces.
  • Follow-ups:
    • full-suite and coverage run (deferred);
    • run app/test/playwright/specs/memory-v2.spec.ts;
    • pre-existing agent-run-turn-test 8 MB stack overflows in channels::tests::discord_integration (reproduced on main 7a671ae344).

AI Authored PR Metadata (required for Codex/Linear PRs)

Linear Issue

  • Key: N/A
  • URL: N/A

Commit & Branch

  • Branch: memory-lifecycle
  • Commit SHA: see head

Validation Run

  • pnpm --filter openhuman-app format:check: clean
  • pnpm typecheck: clean
  • Focused tests:
    • core memory, session_host, middleware, summarizer, cron, config, channels and about_app unit tests: pass;
    • memory_v2_e2e: 15/15;
    • embed runtime_agents + public_api: pass;
    • Vitest memory/pages/api/tools/conversations/i18n suites: pass.
  • Rust fmt/check: cargo fmt, cargo check --workspace --tests --examples, product-feature test build, pnpm rust:clippy, pnpm rust:layout and the feature-forwarding check are all clean.
  • Tauri fmt/check: cargo check --manifest-path crates/openhuman-app/Cargo.toml is clean.

Validation Blocked

  • command: the full cargo test -p openhuman --lib run and the Playwright memory spec.
  • error: deferred on request. Partial runs abort on agent-run-turn-test stack overflows in the discord_integration tests, which also overflow on main.
  • impact: unrelated tests may still fail; they will be run before this is marked ready.

Behavior Changes

  • Intended behavior change: memory is recalled before every turn and every turn is logged; there is no context.md any more.
  • User-visible effect:
    • the new Memory tabs (Brain, Background, Settings, Pack preview);
    • memory chips on answers show what the pack cited.

Parity Contract

  • Legacy behavior preserved:
    • engine selection and engine RPCs;
    • recall, fetch, learn, forget and explore;
    • sources and backfill;
    • the v1 import;
    • the memory tool's name and actions;
    • the MCP memory tools.
  • Guard/fallback/dispatch parity checks: memory off still answers MEMORY_OFF, and no turn depends on memory.

Duplicate / Superseded PR Handling

  • Duplicate PR(s): none
  • Canonical PR: this
  • Resolution: N/A

senamakel and others added 30 commits October 4, 2026 18:18
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…ps/connect/memory_tests.rs,crat

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Looking at the diff:
1. `Cargo.lock` changes: The `tinymemory` package is removed, and its dependencies are restructured. `tinymemory-api` version goes from 2.0.0 to 1.23.0. New packages `tinymemory-integrations` and `tinymemory-tools` appear. The old packages `tinymemory-conformance`, `tinymemory-context`, `tinymemory-cortex`, `tinymemory-documents`, `tinymemory-import`, `tinymemory-safety`, `tinymemory-sources` are removed. The main crate now depends on `tinymemory-api`, `tinymemory-integrations`, `tinymemory-tools` instead of `tinymemory`.
2. Multiple test files are deleted:
- `crates/openhuman-core/src/memory/auto_recall/auto_recall_tests.rs` (570 lines deleted)
- `crates/openhuman-core/src/memory/ops/documents_tests.rs` (323 lines deleted)
- `crates/openhuman-core/src/memory/ops/files_tests.rs` (269 lines deleted)

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The change is in `crates/openhuman-core/src/memory/sources/sync.rs`. It:
1. Removes the import of `apply_kind_defaults` from `tinymemory_integrations::sources`.
2. Adds a new local function `apply_kind_defaults` that fills per-kind read caps the user did not set: GitHub repo reads at most 10 PRs, 10 issues, 50 commits; a feed at most 20 items. The doc comment says "How much a sync pulls is host policy, so it lives here rather than in the readers."
Wait — but the new function is defined but is it called? The diff shows the function added after `reader_entry` and before `sync_one`. The diff doesn't show a call site being added... Let me check. The diff only shows the import change and the function addition. Hmm, the stat says 18 insertions, 1 deletion. The import line change is 1 insertion + 1 deletion, and the function is 17 lines (including doc comment and blank line). Let me count:
+/// Fills the per-kind read caps the user did not set: a GitHub repo reads at
+/// most 10 PRs, 10 issues and 50 commits, a feed at most 20 items. How much a

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…ests.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…s/openhuman-core/src/memory/ops

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…e diff section is empty, and th

Hmm, the diff is empty. The file is `jobs_tests.rs` in a memory lifecycle module. Since there's no diff content, I have to infer: the file appears to be added (it's listed as a file, untracked among them: none means it's tracked? Actually "Untracked among them: none" means none of the files are untracked). Stat is empty, diff is empty.
Given the filename `jobs_tests.rs`, this is a test file for lifecycle jobs. The most reasonable commit would be `test(memory): add tests for lifecycle jobs` or similar.
But wait — with an empty diff, maybe the change is trivial. The instructions say omit the description entirely for a trivial change. But we can't know it's trivial. The safest interpretation: a new test file was added for memory lifecycle jobs.
Subject: `test(memory): add tests for lifecycle jobs` — under 72 chars, imperative, lowercase.
Scope: could be `memory` or `memory-lifecycle` or omitted. The path is crates/openhuman-core/src/memory/lifecycle/jobs_tests.rs. Scope `memory` seems fine.
Description: one or two

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…_tests.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…_tests.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…run_context.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…time_session/memory_ingest.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…time_session.rs,crates/openhuma

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…time_session.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…nhuman-core/src/core/events.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…eware/memory_pack.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…ss_assembly.rs,crates/openhuman

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…eware/memory_pack_tests.rs

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…time_session.rs,crates/openhuma

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…ss_assembly.rs,crates/openhuman

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
senamakel and others added 22 commits October 4, 2026 19:28
Refresh the vendored tinymemory dependency to its latest revision and adjust the MemoryBrainTab tests to match.

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…st.tsx

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
….tsx

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…app/src/components/memory/Memor

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…oks/developing/architecture/mem

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…alog_conversation_intelligence.

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…ME.ko.md,docs/README.ur-pk.md,d

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…books/guides/personal-assistant

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…,crates/openhuman-cli/src/bin/l

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…time_session.rs,crates/openhuma

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
…time_session/memory_ingest.rs,c

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
When the memory summarizer runs compaction, it now removes any "Recalled from memory" section carried over from a previous checkpoint before appending the new recall. This prevents the summary from accumulating multiple recall sections across successive compactions, keeping the output clean and avoiding redundant context.

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

coderabbitai Bot commented Oct 4, 2026 •

Copy link
Copy Markdown
Contributor

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: d9b3eed9-f9f1-4fff-86bb-23bdbd174904
📥 Commits

Reviewing files that changed from the base of the PR and between 7a671ae and d3fc5eb.

⛔ 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 (204)
  • README.md
  • app/src/components/memory/MemoryAskTab.test.tsx
  • app/src/components/memory/MemoryAskTab.tsx
  • app/src/components/memory/MemoryBackgroundTab.test.tsx
  • app/src/components/memory/MemoryBackgroundTab.tsx
  • app/src/components/memory/MemoryBrainIngestDialog.tsx
  • app/src/components/memory/MemoryBrainSearch.tsx
  • app/src/components/memory/MemoryBrainTab.test.tsx
  • app/src/components/memory/MemoryBrainTab.tsx
  • app/src/components/memory/MemoryContextTab.test.tsx
  • app/src/components/memory/MemoryContextTab.tsx
  • app/src/components/memory/MemoryConversationsTab.test.tsx
  • app/src/components/memory/MemoryConversationsTab.tsx
  • app/src/components/memory/MemoryHitRow.tsx
  • app/src/components/memory/MemoryLearningsTab.test.tsx
  • app/src/components/memory/MemoryLearningsTab.tsx
  • app/src/components/memory/MemoryPackPreview.tsx
  • app/src/components/memory/MemorySettingsTab.test.tsx
  • app/src/components/memory/MemorySettingsTab.tsx
  • app/src/components/memory/MemorySyncedSources.test.tsx
  • app/src/components/memory/MemorySyncedSources.tsx
  • app/src/components/memory/memoryChips.ts
  • app/src/components/memory/memoryFormat.ts
  • app/src/components/memory/memoryHelpers.test.ts
  • app/src/components/memory/memoryLifecycleLabels.ts
  • app/src/components/routing/BrainRedirect.test.tsx
  • app/src/components/routing/BrainRedirect.tsx
  • app/src/components/settings/panels/ToolsPanel.tsx
  • app/src/components/settings/settingsRouteElements.test.tsx
  • app/src/components/settings/settingsRouteElements.tsx
  • app/src/features/conversations/aui/ChatMemoryChips.test.tsx
  • app/src/features/conversations/aui/ChatMemoryChips.tsx
  • app/src/features/conversations/aui/toolkit.tsx
  • app/src/features/conversations/tools/toolSpecs.ts
  • app/src/lib/i18n/ar.ts
  • app/src/lib/i18n/bn.ts
  • app/src/lib/i18n/de.ts
  • app/src/lib/i18n/en.ts
  • app/src/lib/i18n/es.ts
  • app/src/lib/i18n/fr.ts
  • app/src/lib/i18n/hi.ts
  • app/src/lib/i18n/id.ts
  • app/src/lib/i18n/it.ts
  • app/src/lib/i18n/ko.ts
  • app/src/lib/i18n/pl.ts
  • app/src/lib/i18n/pt.ts
  • app/src/lib/i18n/ru.ts
  • app/src/lib/i18n/zh-CN.ts
  • app/src/pages/Memory.tsx
  • app/src/pages/__tests__/Memory.test.tsx
  • app/src/services/api/memoryApi.test.ts
  • app/src/services/api/memoryApi.ts
  • app/src/services/rpcMethods.ts
  • app/src/utils/toolDefinitions.test.ts
  • app/src/utils/toolDefinitions.ts
  • app/test/e2e/helpers/shared-flows.ts
  • app/test/e2e/specs/navigation-settings-panels.spec.ts
  • app/test/e2e/specs/user-journey-settings-round-trip.spec.ts
  • app/test/playwright/specs/memory-v2.spec.ts
  • app/test/playwright/specs/navigation-settings-panels.spec.ts
  • app/test/playwright/specs/user-journey-settings-round-trip.spec.ts
  • crates/openhuman-app/src/core_process.rs
  • crates/openhuman-app/src/imessage_scanner/mod.rs
  • crates/openhuman-cli/Cargo.toml
  • crates/openhuman-cli/src/bin/library_profile/harness.rs
  • crates/openhuman-core/Cargo.toml
  • crates/openhuman-core/src/agent/session_host/runtime_session.rs
  • crates/openhuman-core/src/agent/session_host/runtime_session/memory_ingest.rs
  • crates/openhuman-core/src/agent/session_host/runtime_session/memory_ingest_tests.rs
  • crates/openhuman-core/src/agent/tinyagents/harness_assembly.rs
  • crates/openhuman-core/src/agent/tinyagents/harness_assembly_tests.rs
  • crates/openhuman-core/src/agent/tinyagents/harness_context_ladder.rs
  • crates/openhuman-core/src/agent/tinyagents/host/run_context.rs
  • crates/openhuman-core/src/agent/tinyagents/memory_summarizer.rs
  • crates/openhuman-core/src/agent/tinyagents/memory_summarizer_tests.rs
  • crates/openhuman-core/src/agent/tinyagents/middleware.rs
  • crates/openhuman-core/src/agent/tinyagents/middleware/memory_pack.rs
  • crates/openhuman-core/src/agent/tinyagents/middleware/memory_pack_tests.rs
  • crates/openhuman-core/src/agent/tinyagents/mod.rs
  • crates/openhuman-core/src/agent/tinyagents/turn_runner.rs
  • crates/openhuman-core/src/channels/controllers/ops/connect/memory.rs
  • crates/openhuman-core/src/channels/controllers/ops/connect/memory_tests.rs
  • crates/openhuman-core/src/channels/runtime/startup/start_channels.rs
  • crates/openhuman-core/src/config/schema/memory.rs
  • crates/openhuman-core/src/config/schema/memory_tests.rs
  • crates/openhuman-core/src/config/schema/mod.rs
  • crates/openhuman-core/src/core/events.rs
  • crates/openhuman-core/src/core/runtime/builder.rs
  • crates/openhuman-core/src/cron/system_jobs.rs
  • crates/openhuman-core/src/cron/system_jobs_tests.rs
  • crates/openhuman-core/src/flows/bus/run_digest.rs
  • crates/openhuman-core/src/flows/bus_subscriber_tests.rs
  • crates/openhuman-core/src/flows/bus_tests.rs
  • crates/openhuman-core/src/flows/memory_tools.rs
  • crates/openhuman-core/src/flows/memory_tools_tests.rs
  • crates/openhuman-core/src/flows/tinyflows/memory_adapter.rs
  • crates/openhuman-core/src/flows/tinyflows/memory_adapter_tests.rs
  • crates/openhuman-core/src/integrations/composio/ops/sync.rs
  • crates/openhuman-core/src/memory/README.md
  • crates/openhuman-core/src/memory/auto_recall/auto_recall_tests.rs
  • crates/openhuman-core/src/memory/backfill.rs
  • crates/openhuman-core/src/memory/backfill_tests.rs
  • crates/openhuman-core/src/memory/brain.rs
  • crates/openhuman-core/src/memory/brain_tests.rs
  • crates/openhuman-core/src/memory/bus.rs
  • crates/openhuman-core/src/memory/bus_tests.rs
  • crates/openhuman-core/src/memory/channels.rs
  • crates/openhuman-core/src/memory/channels_tests.rs
  • crates/openhuman-core/src/memory/context.rs
  • crates/openhuman-core/src/memory/context_tests.rs
  • crates/openhuman-core/src/memory/conversations/buffer.rs
  • crates/openhuman-core/src/memory/conversations/buffer_tests.rs
  • crates/openhuman-core/src/memory/conversations/mod.rs
  • crates/openhuman-core/src/memory/conversations/mod_tests.rs
  • crates/openhuman-core/src/memory/engine.rs
  • crates/openhuman-core/src/memory/engine_tests.rs
  • crates/openhuman-core/src/memory/error.rs
  • crates/openhuman-core/src/memory/error_tests.rs
  • crates/openhuman-core/src/memory/exit.rs
  • crates/openhuman-core/src/memory/exit_tests.rs
  • crates/openhuman-core/src/memory/explore.rs
  • crates/openhuman-core/src/memory/explore_tests.rs
  • crates/openhuman-core/src/memory/guard.rs
  • crates/openhuman-core/src/memory/guard_tests.rs
  • crates/openhuman-core/src/memory/import.rs
  • crates/openhuman-core/src/memory/import_tests.rs
  • crates/openhuman-core/src/memory/lifecycle/hooks.rs
  • crates/openhuman-core/src/memory/lifecycle/hooks_tests.rs
  • crates/openhuman-core/src/memory/lifecycle/jobs.rs
  • crates/openhuman-core/src/memory/lifecycle/jobs_tests.rs
  • crates/openhuman-core/src/memory/lifecycle/mod.rs
  • crates/openhuman-core/src/memory/lifecycle/mod_tests.rs
  • crates/openhuman-core/src/memory/lifecycle/views.rs
  • crates/openhuman-core/src/memory/lifecycle/views_tests.rs
  • crates/openhuman-core/src/memory/mod.rs
  • crates/openhuman-core/src/memory/ops.rs
  • crates/openhuman-core/src/memory/ops/documents_tests.rs
  • crates/openhuman-core/src/memory/ops/files_tests.rs
  • crates/openhuman-core/src/memory/ops/sync_tests.rs
  • crates/openhuman-core/src/memory/ops_tests.rs
  • crates/openhuman-core/src/memory/query/ingest_document_tests.rs
  • crates/openhuman-core/src/memory/schemas.rs
  • crates/openhuman-core/src/memory/schemas/defs.rs
  • crates/openhuman-core/src/memory/schemas/handlers.rs
  • crates/openhuman-core/src/memory/schemas_tests.rs
  • crates/openhuman-core/src/memory/scope.rs
  • crates/openhuman-core/src/memory/scope_tests.rs
  • crates/openhuman-core/src/memory/sources/composio.rs
  • crates/openhuman-core/src/memory/sources/composio_tests.rs
  • crates/openhuman-core/src/memory/sources/mod.rs
  • crates/openhuman-core/src/memory/sources/mod_tests.rs
  • crates/openhuman-core/src/memory/sources/rpc_tests.rs
  • crates/openhuman-core/src/memory/sources/sync.rs
  • crates/openhuman-core/src/memory/sources/sync_tests.rs
  • crates/openhuman-core/src/memory/status.rs
  • crates/openhuman-core/src/memory/sync_events_bridge_tests.rs
  • crates/openhuman-core/src/memory/test_fixtures.rs
  • crates/openhuman-core/src/memory/tool_memory/capture_tests.rs
  • crates/openhuman-core/src/memory/tools.rs
  • crates/openhuman-core/src/memory/tools/goals_tests.rs
  • crates/openhuman-core/src/memory/tools/store_tests.rs
  • crates/openhuman-core/src/memory/tools/tool_memory/guard_tests.rs
  • crates/openhuman-core/src/memory/tools_tests.rs
  • crates/openhuman-core/src/memory/tree/tree_runtime/cli_tests.rs
  • crates/openhuman-core/src/memory/types.rs
  • crates/openhuman-core/src/platform/about_app/catalog_conversation_intelligence.rs
  • crates/openhuman-core/src/platform/about_app/catalog_tests.rs
  • crates/openhuman-core/src/security/scrub.rs
  • crates/openhuman-core/src/tools/user_filter.rs
  • crates/openhuman-core/src/tools/user_filter_tests.rs
  • crates/openhuman-embed/src/agent/build.rs
  • crates/openhuman-embed/src/agent/mod.rs
  • crates/openhuman-embed/src/agent/spec.rs
  • crates/openhuman-embed/src/lib.rs
  • crates/openhuman-embed/tests/runtime_agents.rs
  • docs/README.de.md
  • docs/README.ja-JP.md
  • docs/README.ko.md
  • docs/README.ur-pk.md
  • docs/README.zh-CN.md
  • docs/TEST-COVERAGE-MATRIX.md
  • docs/library-benchmarking.md
  • docs/specs/memory-v2.md
  • examples/run_memory_reconcile.rs
  • gitbooks/developing/architecture/README.md
  • gitbooks/developing/architecture/agent-harness.md
  • gitbooks/developing/architecture/frontend.md
  • gitbooks/developing/architecture/memory.md
  • gitbooks/developing/cef.md
  • gitbooks/features/memory.md
  • gitbooks/features/native-tools/memory-tools.md
  • gitbooks/features/personalization.md
  • gitbooks/features/platform.md
  • gitbooks/features/privacy-and-security.md
  • gitbooks/guides/move-to-new-pc.md
  • gitbooks/guides/personal-assistant.md
  • gitbooks/guides/privacy-sensitive-data.md
  • gitbooks/guides/recover-failed-installation.md
  • scripts/ci/check-openhuman-rust-layout.mjs
  • tests/in_process/config_auth_app_state_connectivity_e2e.rs
  • tests/memory_cortexdb_live.rs
  • tests/memory_roundtrip_e2e.rs
  • tests/memory_v2_e2e.rs
  • vendor/tinymemory
 _________________________
< Will debug for carrots. >
 -------------------------
  \
   \   (\__/)
       (•ㅅ•)
       /   づ
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

Update the vendored tinymemory submodule to 1.23.1 and refresh Cargo.lock
so the tinymemory-api, tin

Auto-committed-on: dragonfly
Co-authored-by: Medulla <medulla@tinyhumans.ai>
@senamakel
senamakel marked this pull request as ready for review October 4, 2026 17:03
@tinysweeper

tinysweeper Bot commented Oct 4, 2026 •

Copy link
Copy Markdown

Tiny Sweeper review

⚠️ Review failed for d3fc5eb318c9. the review of #6993 did not finish within 900s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant