Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion .github/workflows/ci-lite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -558,7 +558,13 @@ jobs:
#
# This asserts the calibration still holds. If it fails, every
# projection built on the simulator is suspect until it is fixed.
run: python3 scripts/dep-sim.py --cut-nothing --expect-names 264
#
# The number is the Linux name count of the `flows` profile, so it moves
# whenever scripts/kernel-floor.limits does and belongs in the same PR.
# 264 -> 265 on 2026-08-21: the tinymemory #76/#77 bump adds exactly one
# name, `tinymemory-bus`. macOS resolves one higher (266) per the host
# skew recorded in the limits history — this expects the CI host.
run: python3 scripts/dep-sim.py --cut-nothing --expect-names 265

- name: Guard — new feature-gated test modules must be acknowledged
# Self-maintaining coverage: the set of source files that #[cfg]-gate a test on
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -684,7 +684,7 @@ before touching `src/openhuman/memory/`.
**The contract is `tinymemory-api`, and `crate::openhuman::memory::api` is a
re-export of it — not a copy.** `3ee5a3cad` inlined that crate as 10,894 lines
under `src/openhuman/memory/api/`, every file byte-identical to
`vendor/tinymemory/api/src/` apart from doc-comment paths. Nothing behaved
`vendor/tinymemory/crates/tinymemory-api/src/` apart from doc-comment paths. Nothing behaved
differently, which is what made it worth undoing: the contract is the vocabulary
the host, `ModuleMemoryProvider`, and the separately compiled module all speak,
and the module compiles against the **crate**. A verbatim copy made the host's
Expand Down
73 changes: 34 additions & 39 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 7 additions & 7 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -244,9 +244,9 @@ tinycortex-api = { path = "vendor/tinycortex/api" }
# rather than the one pinned inside the tinymemory submodule.
#
# After cloning: `git submodule update --init --recursive vendor/tinymemory`.
tinymemory = { path = "vendor/tinymemory" }
tinymemory-api = { path = "vendor/tinymemory/api" }
tinymemory-tinycortex = { path = "vendor/tinymemory/adapters/tinycortex" }
tinymemory = { path = "vendor/tinymemory/crates/tinymemory" }
tinymemory-api = { path = "vendor/tinymemory/crates/tinymemory-api" }
tinymemory-tinycortex = { path = "vendor/tinymemory/crates/tinymemory-tinycortex" }
# `tinymemory-core` is the *substance* of the memory subsystem, extracted out of
# `src/openhuman/memory/` — the SQLite/vector store, the markdown summary tree,
# the provider sync pipelines, ingestion, recall/query/search, the ingest queue,
Expand All @@ -263,7 +263,7 @@ tinymemory-tinycortex = { path = "vendor/tinymemory/adapters/tinycortex" }
# The `schemars` feature is enabled because the memory config *section* structs
# (`MemoryConfig`, `MemoryTreeConfig`, …) now live in `tinymemory_api::host` and
# are still fields of OpenHuman's `Config`, which derives `JsonSchema`.
tinymemory-core = { path = "vendor/tinymemory/core" }
tinymemory-core = { path = "vendor/tinymemory/crates/tinymemory-core" }
tinychannels = { version = "0.1", features = ["relay-websocket"] }
# tinybus — the message bus. Owns what `src/core/event_bus/` used to: the typed
# pub/sub surface (`EventBus`, `EventHandler`, `SubscriptionHandle`), the
Expand Down Expand Up @@ -370,7 +370,7 @@ tokio-util = { version = "0.7", features = ["rt", "io"] }
# (native-tls on Windows, rustls on macOS / Linux) matches the reqwest
# backend selected at each TLS call site.
futures = "0.3"
rusqlite = { version = "=0.40.0", features = ["bundled"] }
rusqlite = { version = "=0.40.2", features = ["bundled"] }
chrono = { version = "0.4", features = ["serde"] }
iana-time-zone = "0.1"
cron = "0.12"
Expand Down Expand Up @@ -576,7 +576,7 @@ coins-bip39 = { version = "0.8" }
# They were `#[cfg(test)]` items in this crate before the memory extraction; a
# downstream test harness cannot see those across a crate boundary, so the
# extracted crate exposes them behind `test-support` instead.
tinymemory-core = { path = "vendor/tinymemory/core", features = ["test-support"] }
tinymemory-core = { path = "vendor/tinymemory/crates/tinymemory-core", features = ["test-support"] }
# Dual-declared on purpose (same shape as the `sentry`/`axum` entries): the
# optional dependency above is bin-only behind `bin-tools`, but
# `agent_orchestration::tools::tools_e2e_tests` (a #[cfg(test)] LIB module),
Expand Down Expand Up @@ -1142,7 +1142,7 @@ while_let_loop = "allow"
# deleted, reintroduced by dependency resolution. Same entry tinymemory's own
# workspace carries; the key has no `.git` suffix, matching the dep URL.
[patch."https://github.com/tinyhumansai/tinymemory"]
tinymemory-api = { path = "vendor/tinymemory/api" }
tinymemory-api = { path = "vendor/tinymemory/crates/tinymemory-api" }

[patch.crates-io]
# Upstream 0.2.1 enables reqwest's default native-tls backend even though it
Expand Down
35 changes: 24 additions & 11 deletions app/src-tauri/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions app/src-tauri/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ anyhow = "1.0"
# platforms — the store persists on Windows/Linux/macOS. Pinned to match the
# core crate so a single bundled SQLite is linked. (The macOS-only iMessage
# scanner also uses rusqlite; this general dep covers it too.)
rusqlite = { version = "=0.40.0", features = ["bundled"] }
rusqlite = { version = "=0.40.2", features = ["bundled"] }
parking_lot = "0.12"
chrono = "0.4"
async-trait = "0.1"
Expand Down Expand Up @@ -265,7 +265,7 @@ e2e-test-support = ["openhuman_core/e2e-test-support"]
# deleted, reintroduced by dependency resolution. Same entry tinymemory's own
# workspace carries; the key has no `.git` suffix, matching the dep URL.
[patch."https://github.com/tinyhumansai/tinymemory"]
tinymemory-api = { path = "../../vendor/tinymemory/api" }
tinymemory-api = { path = "../../vendor/tinymemory/crates/tinymemory-api" }

[patch.crates-io]
# Keep reqwest defaults disabled in this independent Cargo world too. Without
Expand Down
2 changes: 1 addition & 1 deletion docs/specs/memory-guard-allowlist.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ are recorded here so M4c starts from the real set.
`integrations/composio/ops_tests.rs`, `core/runtime/context.rs` (its `#[cfg(test)]`
module).

`vendor/tinymemory/core/src/tinycortex/sync.rs` also has an inline `#[cfg(test)]`
`vendor/tinymemory/crates/tinymemory-core/src/engine/sync.rs` also has an inline `#[cfg(test)]`
module whose isolated-workspace fixtures construct `MemoryClient` directly; it
is counted because the scanner does not brace-track inline test modules.

Expand Down
Loading
Loading