Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
1bb2675
feat(sdk): add keeper conditional-source seam and CoW run loop (#239)
mfw78 Jul 14, 2026
f37f0d1
refactor(twap-monitor): port poll loop onto keeper (#240)
mfw78 Jul 14, 2026
b4800f5
feat(sdk-test): add MockVenue and namespaced MockLocalStore (#241)
mfw78 Jul 14, 2026
020e213
fix(keeper): drop stale watches and idle duplicate rejections (#242)
mfw78 Jul 14, 2026
6d2b227
feat(sdk): scaffold nexum-macros and #[module] attribute (#243)
mfw78 Jul 14, 2026
558e627
docs(sdk): rewrite doc 05 around the two-persona SDK plan (#245)
mfw78 Jul 15, 2026
c6f36e1
fix(sdk): M1 SDK sweep fixes - macro hardening, doc fidelity (#246)
mfw78 Jul 15, 2026
ae8b469
feat(wit): add nexum:value-flow types package v0.1.0 (#247)
mfw78 Jul 15, 2026
5b0c248
feat(wit): author the nexum:intent package with pool interface (#248)
mfw78 Jul 15, 2026
39e117d
feat(runtime): introduce the venue-adapter component kind (#249)
mfw78 Jul 15, 2026
c3ef547
feat(runtime): route nexum:intent/pool to installed venue adapters (#…
mfw78 Jul 15, 2026
8b698c7
feat(venue-sdk): add nexum-venue-sdk crate (#251)
mfw78 Jul 15, 2026
622ec70
sdk: emit per-component world from declared capabilities (#252)
mfw78 Jul 15, 2026
d71adb4
feat(runtime): fan intent-status events to module subscribers (#253)
mfw78 Jul 15, 2026
766d532
feat(sdk): add the #[nexum::venue] adapter macro (#296)
mfw78 Jul 15, 2026
3be21a6
feat(sdk-test): add the nexum-venue-test conformance kit (#297)
mfw78 Jul 15, 2026
38817d1
feat(echo-venue): settle instantly, add echo-client round trip (#256)
mfw78 Jul 15, 2026
85e5d3f
docs(wit): freeze WIT clarifications, fix macro nits (#257)
mfw78 Jul 15, 2026
0f0d719
feat(cow-venue): scaffold venue-neutral CoW intent body crate (#258)
mfw78 Jul 15, 2026
17464a1
feat(cow-venue): drive CoW retry classification from a data table (#259)
mfw78 Jul 15, 2026
c8ce57c
fix(cow-venue): QA sweep for m1-cow-classification (#260)
mfw78 Jul 15, 2026
ae846ad
refactor(cow): structured Verdict poll seam + LegacyRevertAdapter (Wa…
mfw78 Jul 15, 2026
df91716
docs: reconcile keeper prose and Verdict poll-seam references (#335)
mfw78 Jul 15, 2026
ddfb2b9
docs(sdk-test): note MockLocalStore fidelity gaps vs redb
mfw78 Jul 15, 2026
476ecdb
docs: record the intent architecture (venue adapters, egress guard)
mfw78 Jul 3, 2026
645ae8e
docs: fold red-team amendments into the intent architecture
mfw78 Jul 3, 2026
44ca386
docs: rename bindings-hostile WIT identifiers and record the hygiene …
mfw78 Jul 3, 2026
9121f91
docs(adr): renumber egress-guard ADR 0011 to 0012
mfw78 Jul 8, 2026
23aa95d
docs: reconcile intent architecture with shipped M1 and platform deci…
mfw78 Jul 15, 2026
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
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ jobs:
run: |
cargo build --release --target wasm32-wasip2 --locked \
-p example -p twap-monitor -p ethflow-watcher -p price-alert \
-p balance-tracker -p stop-loss -p http-probe \
-p clock-reader -p flaky-bomb -p fuel-bomb \
-p balance-tracker -p stop-loss -p http-probe -p echo-venue \
-p echo-client -p clock-reader -p flaky-bomb -p fuel-bomb \
-p memory-bomb -p panic-bomb
{
echo "### module .wasm sizes"
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ skills-lock.json

# Engine runtime state (default state_dir from engine.toml).
data/
# Shipped crate data slices are source, not runtime state: keep them.
!crates/*/data/
!crates/*/data/**

# E2E automation: rendered configs with embedded RPC keys + script state
# never get committed.
Expand Down
177 changes: 166 additions & 11 deletions Cargo.lock

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

19 changes: 19 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,16 +1,22 @@
[workspace]
members = [
"crates/cow-venue",
"crates/nexum-cli",
"crates/nexum-macros",
"crates/nexum-runtime",
"crates/nexum-sdk",
"crates/nexum-sdk-test",
"crates/nexum-venue-sdk",
"crates/nexum-venue-test",
"crates/shepherd-backtest",
"crates/shepherd-cow-host",
"crates/shepherd-sdk",
"crates/shepherd-sdk-test",
"modules/ethflow-watcher",
"modules/example",
"modules/examples/balance-tracker",
"modules/examples/echo-client",
"modules/examples/echo-venue",
"modules/examples/http-probe",
"modules/examples/price-alert",
"modules/examples/stop-loss",
Expand Down Expand Up @@ -51,6 +57,12 @@ futures = "0.3"
serde = { version = "1", features = ["derive"] }
serde_json = { version = "1", default-features = false, features = ["alloc"] }

# Borsh wire codec behind the venue SDK's versioned `IntentBody` bodies.
# The venue SDK re-exports the runtime crate for its derive's generated
# code; `derive` is on so venue payload types can `#[derive(BorshSerialize,
# BorshDeserialize)]` through the same dependency.
borsh = { version = "1", features = ["derive"] }

# Observability.
tracing = "0.1"
# `tracing-core` alone (no subscriber registry) backs the guest-side
Expand Down Expand Up @@ -115,6 +127,13 @@ http-body = "1"
http-body-util = "0.1"
bytes = "1"

# Proc-macro toolkit backing `nexum-macros`. Host-side only: the
# proc-macro crate always builds for the host, even when the module
# consuming it targets wasm.
proc-macro2 = "1"
quote = "1"
syn = { version = "2", features = ["full"] }

# `wit-bindgen` is consumed by every guest module crate (example +
# every strategy + every fixture). Hoisted so a single bump moves
# them in lock-step.
Expand Down
Loading
Loading