Skip to content
Closed
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
14 changes: 14 additions & 0 deletions Cargo.lock

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

18 changes: 16 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[workspace]
members = [".", "api", "core", "adapters/tinycortex", "adapters/remote", "conformance"]
default-members = [".", "api", "core", "adapters/tinycortex", "adapters/remote", "conformance"]
# `sync` is the engine-neutral Composio normalisers (issue #18 §B3).
members = [".", "api", "core", "sync", "adapters/tinycortex", "adapters/remote", "conformance"]
default-members = [".", "api", "core", "sync", "adapters/tinycortex", "adapters/remote", "conformance"]
# `vendor/` holds engine submodules (tinycortex, tinybus, tinyagents), each of
# which is its own workspace with its own lockfile. Same exclusion
# `vendor/tinycortex` uses for its own nested vendor directory.
Expand Down Expand Up @@ -120,6 +121,19 @@ private_intra_doc_links = "warn"
# so a host that already pins its own engine checkout unifies onto one copy
# through its own patch table. These entries are what make a *standalone* build
# of this workspace resolve them to the nested `vendor/` submodules.
# `tinycortex-api` takes this workspace's own contract crate by git, because
# neither crate is published (tinymemory#18 §A1). Without this entry cargo
# resolves the git copy *and* the path copy as two distinct crates, and
# `tinymemory_api::MemoryCategory` from one is not the same type as from the
# other — which is the exact duplication §A1 exists to delete, reintroduced by
# the fix for it. The error is loud rather than silent, but only at the seam.
#
# Patch tables apply from the workspace root being built, so this covers builds
# and tests here. A host that embeds this workspace needs the same entry, the
# same way it already patches tinycortex.
[patch."https://github.com/tinyhumansai/tinymemory"]
tinymemory-api = { path = "api" }

[patch.crates-io]
tinycortex = { path = "vendor/tinycortex" }
tinycortex-api = { path = "vendor/tinycortex/api" }
Expand Down
3 changes: 3 additions & 0 deletions adapters/remote/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ serde_json = "1"
sha2 = "0.10"

[dev-dependencies]
# The behavioural contract suite, run against these adapters over their own
# native doubles (issue #18 §E1, acceptance criterion 5).
tinymemory-conformance = { path = "../../conformance" }
# Adapter tests run lightweight native-API doubles over a real TCP transport.
axum = { version = "0.8", features = ["multipart"] }
tokio = { version = "1", features = ["macros", "rt-multi-thread", "net"] }
Expand Down
Loading
Loading