Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
320 commits
Select commit Hold shift + click to select a range
a05cebd
refactor(tinywallet-client): return detailed remote failures from att…
senamakel Oct 17, 2026
b18b67e
test(tinywallet-client): match unavailable errors via remote failure
senamakel Oct 17, 2026
b39bfa0
test(tinywallet-client): tighten test support visibility and abort br…
senamakel Oct 17, 2026
068df78
test(tinywallet-client): import ModuleCallError in tests
senamakel Oct 17, 2026
2e1b889
test(tinywallet-client): cover mnemonic wiping for signing and export…
senamakel Oct 17, 2026
7960845
test(tinywallet-client): exercise mnemonic wiping through the public …
senamakel Oct 17, 2026
e35f1fc
test(tinywallet-client): document strict record fixture setup
senamakel Oct 17, 2026
d969ebd
test(tinywallet-client): cover mnemonic guard wiping on completion an…
senamakel Oct 17, 2026
751b1db
fix(tinywallet-client): zeroize mnemonics in sign and export requests
senamakel Oct 17, 2026
de574cb
test(tinywallet-client): skip strict signing tests on unsupported hosts
senamakel Oct 17, 2026
421621e
chore(deps): bump tinybus to 0.3.2
senamakel Oct 18, 2026
e8b7e1a
chore(deps): bump tinybus crates to 0.3.2
senamakel Oct 18, 2026
ffb2d1b
test(tinywallet-client): silence dead code warnings in shared test fi…
senamakel Oct 18, 2026
b6c4cc6
test(tinywallet-client): use drop instead of closure in test support
senamakel Oct 18, 2026
d71be75
test(tinywallet-client): use drop instead of closure in test support
senamakel Oct 18, 2026
12914e7
test: update pinned workflow and tinybus revisions in release workflo…
senamakel Oct 18, 2026
7579f13
test: discover workspace manifests dynamically in release version check
senamakel Oct 18, 2026
0fc03ec
chore(deps): bump tinybus to 0.3.3
senamakel Oct 18, 2026
26ac084
test(e2e): run attested_errors suite in e2e scripts
senamakel Oct 18, 2026
3af8457
test: cover attested_errors target in native e2e scripts
senamakel Oct 18, 2026
e3a7cdc
chore(deps): bump tinybus crates to 0.3.3 and getrandom to 0.4.3
senamakel Oct 18, 2026
001dc68
chore: files changed proof-workspaces/storage-needs/target/.rustc_inf…
senamakel Oct 18, 2026
8b93b06
test(tinywallet-client): silence clippy lint on zeroization test
senamakel Oct 18, 2026
2658de0
chore: add compiled bytecode for bus boundary check script
senamakel Oct 18, 2026
69a7a9a
chore: remove compiled bytecode from scripts cache
senamakel Oct 18, 2026
f87d989
chore(gitignore): ignore Python bytecode caches
senamakel Oct 18, 2026
db753f0
chore: remove generated storage-needs build output
senamakel Oct 18, 2026
7aa1ac3
chore(gitignore): ignore storage-needs build output
senamakel Oct 18, 2026
0b64172
chore: files changed proof-workspaces/tinywallet-client-native-e2e/te…
senamakel Oct 18, 2026
b4452e4
chore: files changed .github/workflows/ci.yml,.gitignore,Cargo.toml,c…
senamakel Oct 18, 2026
b22b9f9
chore: files changed proof-workspaces/tinywallet-client-native-e2e/Ca…
senamakel Oct 18, 2026
8b9c1a9
chore: files changed proof-workspaces/tinywallet-client-native-e2e/Ca…
senamakel Oct 18, 2026
355cb17
chore: files changed scripts/test-e2e.sh
senamakel Oct 18, 2026
3d59d91
chore: files changed scripts/test-e2e.ps1,scripts/test_native_e2e_top…
senamakel Oct 18, 2026
f4fe546
chore: files changed scripts/test_native_e2e_topology.py
senamakel Oct 18, 2026
3e118cd
chore: files changed scripts/test_native_e2e_topology.py
senamakel Oct 18, 2026
529ce7d
chore: files changed scripts/test_native_e2e_topology.py
senamakel Oct 18, 2026
2c7d2a2
chore: files changed scripts/test_reviewed_release_workflow.py
senamakel Oct 18, 2026
90095af
chore: files changed crates/tinywallet-client/tests/attested_errors.r…
senamakel Oct 18, 2026
4189091
chore: files changed .gitignore,Cargo.toml,crates/tinywallet-client/C…
senamakel Oct 18, 2026
5a5a571
chore: files changed scripts/test-e2e.ps1,scripts/test-e2e.sh
senamakel Oct 18, 2026
b6695d7
chore: files changed scripts/check-coverage.sh,scripts/test-e2e.ps1,s…
senamakel Oct 18, 2026
109755d
chore: files changed scripts/test_native_e2e_topology.py,scripts/test…
senamakel Oct 18, 2026
3ef05bd
chore: files changed scripts/test-e2e.ps1,scripts/test_native_e2e_top…
senamakel Oct 18, 2026
e28a7fd
chore: files changed crates/tinywallet-client/tests/native_e2e.rs,scr…
senamakel Oct 18, 2026
dce3a73
chore: files changed scripts/test_native_e2e_topology.py
senamakel Oct 18, 2026
eb7bd80
chore: files changed crates/tinywallet-client/src/lib.rs
senamakel Oct 18, 2026
d001032
chore: files changed crates/tinywallet-client/src/lib.rs
senamakel Oct 18, 2026
6d754ba
chore: files changed crates/tinywallet-client/src/lib.rs.red-restorat…
senamakel Oct 18, 2026
26b821a
chore: files changed crates/tinywallet-client/src/lib.rs.red-restorat…
senamakel Oct 18, 2026
ca65ba3
chore: files changed crates/tinywallet-client/src/lib_tests.rs
senamakel Oct 18, 2026
71b5328
chore: files changed crates/tinywallet-client/src/lib.rs,crates/tinyw…
senamakel Oct 18, 2026
d2c42e2
chore: files changed .github/workflows/ci.yml
senamakel Oct 18, 2026
ebc90ce
chore: files changed crates/tinywallet-client/src/lib.rs,crates/tinyw…
senamakel Oct 18, 2026
9b34936
chore: files changed crates/tinywallet-client/tests/native_e2e.rs
senamakel Oct 18, 2026
71fb684
chore: files changed Cargo.lock
senamakel Oct 18, 2026
38508c6
chore: files changed AGENTS.md,CONTRIBUTING.md,README.md,scripts/test…
senamakel Oct 18, 2026
57a0f00
chore: files changed README.md
senamakel Oct 18, 2026
21e8775
chore: files changed crates/tinywallet-client/tests/native_e2e.rs
senamakel Oct 18, 2026
714aa6f
chore: files changed scripts/test_native_e2e_topology.py
senamakel Oct 18, 2026
20e13ae
chore: files changed scripts/test_native_e2e_topology.py
senamakel Oct 18, 2026
fa3a310
chore: files changed .github/PULL_REQUEST_TEMPLATE.md
senamakel Oct 18, 2026
1556122
chore: files changed crates/tinywallet-client/src/lib.rs,crates/tinyw…
senamakel Oct 18, 2026
e005c0e
chore: files changed crates/tinywallet-client/src/lib.rs,crates/tinyw…
senamakel Oct 18, 2026
1ee3e7f
chore: files changed crates/tinywallet-client/src/lib.rs
senamakel Oct 18, 2026
a166362
Merge pull request #106 from senamakel/epic-8056-tinywallet-client-so…
senamakel Oct 18, 2026
a96b305
Merge branch 'epic/8056-modules-wiring' of https://github.com/tinyhum…
senamakel Oct 18, 2026
24c0cf7
Merge pull request #107 from senamakel/epic-8056-tinywallet-client-so…
senamakel Oct 18, 2026
09a5910
fix(deps): widen tinybus version range to accept 0.3.4
senamakel Oct 18, 2026
2d00aa8
test: cover tinybus patch table and sdk version edges
senamakel Oct 18, 2026
e98282d
chore(tinywallet-module): relax tinybus version pins to a 0.3.x range
senamakel Oct 18, 2026
f92ca31
test: cover tinybus gitlink guard and Windows manifest path labels
senamakel Oct 18, 2026
edb21d6
test: verify tinybus gitlink via ls-tree and normalize manifest paths
senamakel Oct 18, 2026
ba87546
chore: files changed crates/tinywallet-client/src/lib_tests.rs
senamakel Oct 19, 2026
35251c9
Merge pull request #108 from senamakel/epic-8056-wallet-sdk-compatibl…
senamakel Oct 19, 2026
db60c16
feat: reconcile wallet main with module storage contracts
senamakel Oct 19, 2026
82a7b4f
test(storage-needs): update expected resource names
senamakel Oct 19, 2026
cd47374
test: guard MSRV matrix split between data contract and storage floors
senamakel Oct 19, 2026
73d0819
chore: files changed .github/workflows/ci.yml,crates/tinywallet-bus/C…
senamakel Oct 19, 2026
74df7b7
docs(tinywallet-bus): document optional storage feature
senamakel Oct 19, 2026
e625b35
test(bus-boundaries): cover storage feature linking runtime crates
senamakel Oct 19, 2026
5fb18d4
fix(scripts): tighten bus boundary check for storage feature
senamakel Oct 19, 2026
90c1c1c
refactor(scripts): rename storage boundary tests to contract closure
senamakel Oct 19, 2026
9c0a858
test(bus-boundaries): update storage contract fixtures and add manife…
senamakel Oct 19, 2026
c581717
feat(ledger): add legacy payment schema for migration tests
senamakel Oct 19, 2026
6b0044d
refactor(storage): move payment types to tinywallet-bus
senamakel Oct 19, 2026
49dc7b2
feat(ledger): implement x402 storage schema and v1-to-v2 migration
senamakel Oct 19, 2026
2ff6aa8
refactor(wallet): move storage schema out of tinywallet-bus
senamakel Oct 19, 2026
318c19f
chore: files changed crates/tinywallet-bus/Cargo.toml,crates/tinywall…
senamakel Oct 19, 2026
4ae05eb
chore: files changed crates/tinywallet-x402/src/ledger/schema.rs
senamakel Oct 19, 2026
4028306
test(msrv): align contract checks with bus 1.85 and ledger 1.88 jobs
senamakel Oct 19, 2026
6134f1a
ci: update MSRV job to cover x402 ledger and full bus targets
senamakel Oct 19, 2026
e9ba65d
docs: update storage contract descriptions
senamakel Oct 19, 2026
53034fa
chore(x402): clarify ledger schema ownership
senamakel Oct 19, 2026
222ce6d
test(ledger): remove unused PaymentStatus import
senamakel Oct 19, 2026
4bdd05b
chore(deps): remove tinystoragedrivers-core from lockfile
senamakel Oct 19, 2026
742ff34
docs(storage): format TinyWallet as code in module docs
senamakel Oct 19, 2026
d806bf2
refactor(service): use idiomatic Rust patterns for parity and conditi…
senamakel Oct 19, 2026
e8413dc
test(lifecycle): format artifact filename without debug quotes
senamakel Oct 19, 2026
0cc2d2d
test(lifecycle): extract artifact staging into a helper
senamakel Oct 19, 2026
337c731
test(tinywallet-module): simplify module manifest generation in e2e h…
senamakel Oct 19, 2026
4f3dd7b
chore: files changed crates/tinywallet-module/src/service/x402_storag…
senamakel Oct 20, 2026
7aeab9a
test(x402): cover current-only grant opening from host readiness
senamakel Oct 20, 2026
a78bfb5
test(x402): remove current-only grant regression test
senamakel Oct 20, 2026
855fd8c
test(x402): simplify hold setup in storage bus test
senamakel Oct 20, 2026
6b41eca
chore: files changed crates/tinywallet-bus/src/storage/mod.rs,crates/…
senamakel Oct 20, 2026
2ddfcdd
fix(x402): require host readiness before opening the ledger
senamakel Oct 20, 2026
3ee4a94
test(ledger): cover readiness marker bypassing legacy refusal
senamakel Oct 20, 2026
5406846
test(x402): cover readiness rejection without legacy reads
senamakel Oct 20, 2026
b93c66c
chore: files changed crates/tinywallet-bus/README.md,crates/tinywalle…
senamakel Oct 20, 2026
81d48cb
test(ledger): cover current-only global opening fresh memory storage
senamakel Oct 20, 2026
3830d7d
test(x402): seed migration readiness in failing append storage
senamakel Oct 20, 2026
62c691d
test(x402): cover fail-closed readiness checks for current-only confi…
senamakel Oct 20, 2026
ab47237
test(x402): remove duplicated readiness test
senamakel Oct 20, 2026
dd68886
docs(storage): clarify readiness document in storage docs
senamakel Oct 20, 2026
6ac27c3
docs(tinywallet-x402): fix stale doc link to init_global_current
senamakel Oct 20, 2026
9841b96
test(x402): unwrap reserve result in storage bus test
senamakel Oct 20, 2026
489b101
docs(ledger): wrap TinyBus in backticks in module docs
senamakel Oct 20, 2026
9539b55
docs(tinywallet-module): wrap TinyWallet in backticks in test doc com…
senamakel Oct 20, 2026
28cd7b0
Merge pull request #112 from senamakel/epic-8056-wallet-main-union
senamakel Oct 20, 2026
cb74896
chore(vendor): update tinybus subproject commit
senamakel Oct 20, 2026
3fbe731
chore(deps): update dependency versions
senamakel Oct 20, 2026
57fc63a
test(e2e): add storage migration tests
senamakel Oct 20, 2026
007e038
refactor(tests): update migration options usage
senamakel Oct 20, 2026
8edfd83
chore(deps): update dependencies and versions
senamakel Oct 20, 2026
46c2f9c
refactor(service): update setup function signature and add migration …
senamakel Oct 20, 2026
3fc8216
refactor(service): clean up imports and test assertions
senamakel Oct 20, 2026
271d9ac
refactor(migration): update imports for migration service
senamakel Oct 20, 2026
52febbe
test(e2e): improve unattested module refusal assertions
senamakel Oct 20, 2026
10f969e
test(e2e): remove redundant assertion in confidential call test
senamakel Oct 20, 2026
5622117
test(e2e): assert unattested module fails setup correctly
senamakel Oct 20, 2026
0dfabb9
test(e2e): update readiness check in module test
senamakel Oct 20, 2026
18b6b29
test(e2e): assert module fails on unattested call
senamakel Oct 20, 2026
9d1375b
test(e2e): add address validation to unattested module test
senamakel Oct 20, 2026
e1e374f
test(e2e): update confidential call argument passing
senamakel Oct 20, 2026
b85c8e2
test(lifecycle): enhance broker setup for e2e tests
senamakel Oct 20, 2026
0db4e3b
test(lifecycle): add restricted module control to lifecycle test
senamakel Oct 20, 2026
3e55b33
refactor(tests): improve fixture setup with restricted module control
senamakel Oct 20, 2026
5f18c17
test(tinywallet-module): add static link test for module control
senamakel Oct 20, 2026
c8f5122
refactor(service): adjust setup function signatures
senamakel Oct 20, 2026
87180fc
test(migration): add transformkind to migration tests
senamakel Oct 20, 2026
a9985da
chore(deps): update tinystoragedrivers dependency revisions
senamakel Oct 20, 2026
da753e6
chore(deps): update tinystoragedrivers dependency version
senamakel Oct 20, 2026
6c23e04
test(e2e): update storage migration tests
senamakel Oct 20, 2026
3420a45
test(e2e): update collection spec usage in e2e tests
senamakel Oct 20, 2026
b08c6fa
test(e2e): update budget collection specification
senamakel Oct 20, 2026
e94b99b
feat(service): add support for configured storage descriptor
senamakel Oct 20, 2026
7d8f442
refactor(tinywallet-module): require wallet module config on setup
senamakel Oct 20, 2026
2c2d1c0
test(service): add test support for host callbacks
senamakel Oct 20, 2026
8153f5c
chore(vendor): update tinybus subproject commit
senamakel Oct 20, 2026
8ebbf43
chore(deps): update tinybus dependency versions
senamakel Oct 20, 2026
b5c71e5
chore(deps): update dependencies versions
senamakel Oct 20, 2026
6d413ff
chore(deps): update dependencies
senamakel Oct 20, 2026
54b2750
refactor(service): simplify storage connection logic
senamakel Oct 20, 2026
4123e5a
test(e2e): add x402 configuration helper for tests
senamakel Oct 20, 2026
4633774
test(e2e): add wallet reinitialization helper
senamakel Oct 20, 2026
3b07a19
test(service): improve migration test assertions
senamakel Oct 20, 2026
2dd5162
test(tinywallet-module): improve schema item assertion
senamakel Oct 20, 2026
2931b76
test(e2e): add assertion for descriptor revocation failure
senamakel Oct 20, 2026
a711148
docs(tinywallet-module): update rust version requirement
senamakel Oct 20, 2026
ff6eca5
test(e2e): add config reinitialization checks
senamakel Oct 20, 2026
8efca61
test(e2e): add readiness check before config compatibility tests
senamakel Oct 20, 2026
83675dc
refactor(service): allow optional wallet module configuration
senamakel Oct 20, 2026
fd18441
test(e2e): update wallet service setup in e2e tests
senamakel Oct 20, 2026
496b6d3
refactor(tests): extract wallet test helper functions
senamakel Oct 20, 2026
8184d13
chore(deps): update tinybus and related dependencies
senamakel Oct 20, 2026
1153f17
chore(deps): update dependencies and lock file
senamakel Oct 20, 2026
adcb36c
chore(deps): update tinystoragedrivers version
senamakel Oct 20, 2026
704b528
chore(scripts): update tinystoragedrivers git revisions
senamakel Oct 20, 2026
4f6dfd2
test(service): add tests for host and migration logic
senamakel Oct 20, 2026
eed8415
test(service): update host storage tests
senamakel Oct 20, 2026
52de220
test(storage): adjust host shutdown in tests
senamakel Oct 20, 2026
8017832
test(storage): add cleanup for registration in tests
senamakel Oct 20, 2026
0499b81
test(host): update storage failure assertion message
senamakel Oct 20, 2026
a10dde2
test(service): add budget dispatch failure test
senamakel Oct 20, 2026
0573b2e
Merge pull request #9 from senamakel/epic-8056-wallet-schema-export
senamakel Oct 21, 2026
9be9580
chore: bump version to 0.25.1
senamakel Oct 21, 2026
27cc130
chore(storage-needs): bump tinywallet-bus to 0.25.1
senamakel Oct 21, 2026
6371eb2
Merge pull request #10 from senamakel/epic-8056-wallet-schema-export
senamakel Oct 21, 2026
f20a83c
test: expose wallet storage declarations to hosts
senamakel Oct 26, 2026
a678aa0
Merge pull request #113 from senamakel/epic-8131-canonical-tsd
senamakel Oct 22, 2026
2d28c93
chore(deps): upgrade tinybus to 0.3.12 and storage drivers to 2.1.2
senamakel Oct 26, 2026
6d9cecf
refactor(x402): drop legacy storage migration path
senamakel Oct 26, 2026
2a386ab
style: tidy trailing blank lines and reflow a re-export
senamakel Oct 26, 2026
db4691c
refactor(intent): use is_multiple_of for hex length check
senamakel Oct 26, 2026
9520fff
refactor(storage-needs): rename storage needs proof to collection con…
senamakel Oct 26, 2026
f1dfb10
chore: migrate storage contract to tinystoragedrivers-types v2
senamakel Oct 26, 2026
6417ffb
chore(proof-workspaces): rename storage-needs proof to storage-contract
senamakel Oct 26, 2026
51fbec4
chore(ci): rename storage contract proof workspace
senamakel Oct 26, 2026
c4c6c72
chore(scripts): drop native e2e staging from coverage and feature runs
senamakel Oct 26, 2026
d0c9598
test(scripts): track tsd v2 bus contract in msrv check
senamakel Oct 26, 2026
cee0feb
test: update native e2e topology assertions for current workspace tar…
senamakel Oct 26, 2026
eb1834d
chore(bus-boundaries): repin tsd types to fork revision
senamakel Oct 26, 2026
1268ef0
chore(storage-needs): remove committed cargo build artifacts
senamakel Oct 26, 2026
7cc239b
chore(storage-contract): remove committed cargo build artifacts
senamakel Oct 26, 2026
f2737c3
chore(deps): bump tinystoragedrivers pin and zstd
senamakel Oct 26, 2026
a8e3312
chore(release): bump workspace to 0.25.1 and repin tinybus
senamakel Oct 26, 2026
fe26047
chore(deps): bump rust dependencies and extend e2e test script
senamakel Oct 26, 2026
0b6b028
chore(deps): upgrade bitcoin and crypto dependencies
senamakel Oct 26, 2026
78e9c22
fix(key): update secp256k1 point encoding and mnemonic generation apis
senamakel Oct 26, 2026
749a27c
chore(deps): bump rand to 0.10 and adapt to API changes
senamakel Oct 26, 2026
3f5f876
chore(deps): enable thread_rng feature for rand
senamakel Oct 26, 2026
525c237
chore(deps): drop unused legacy crypto crate versions
senamakel Oct 26, 2026
57e7301
test(tinywallet-x402): drop unwrap on recoverable prehash signing
senamakel Oct 26, 2026
497207c
chore(storage-contract): bump tinystoragedrivers and tinywallet-bus deps
senamakel Oct 26, 2026
ee6dea1
chore(scripts): update tinystoragedrivers-types revision
senamakel Oct 26, 2026
d5cf7f1
fix(scripts): accept short and full tsd-types commit hashes
senamakel Oct 26, 2026
8331d7b
test(bus): update pinned tsd types source commit
senamakel Oct 26, 2026
376c4be
build: add tinywallet-client to workspace members
senamakel Oct 26, 2026
a25807e
chore(deps): downgrade sha2 and icu crates to earlier versions
senamakel Oct 26, 2026
d10d6e6
chore(ci): exclude tinywallet-client from workspace test lanes
senamakel Oct 26, 2026
54ce1ae
test: update coverage assertion to expect excluded client
senamakel Oct 26, 2026
a789c0d
test(scripts): drop duplicate client library test run
senamakel Oct 26, 2026
a3cb63b
chore(scripts): run all-features tests before default tests
senamakel Oct 26, 2026
4158c4f
test(e2e): run client native e2e tests from the release module
senamakel Oct 26, 2026
e75fbfe
build(tinywallet-client): bump minimum rust version to 1.88
senamakel Oct 26, 2026
077bc2e
Merge pull request #15 from senamakel/sec654-wallet-tsd-v2
senamakel Oct 26, 2026
4139bb0
chore(vendor): bump tinybus submodule
senamakel Oct 30, 2026
93137bf
chore: ignore storage-contract proof workspace build output
senamakel Oct 30, 2026
88c6366
chore(vendor): restore TinyBus pin from source commit
senamakel Oct 30, 2026
90cecbe
chore(vendor): bump tinybus submodule
senamakel Oct 30, 2026
aae2b71
test(tinywallet-bus): cover storage declarations as bus-owned wire types
senamakel Oct 30, 2026
0e7ec61
refactor(tinywallet-bus): define collection declarations locally
senamakel Oct 30, 2026
975df67
refactor(tinywallet-bus): own collection declarations instead of stor…
senamakel Oct 30, 2026
cb84c2d
chore(storage-contract): drop tinystoragedrivers-types dependency
senamakel Oct 30, 2026
bcdac0d
chore(vendor): bump tinybus submodule
senamakel Oct 30, 2026
a8c95c3
chore(vendor): bump tinybus submodule
senamakel Oct 30, 2026
af12581
chore(deps): drop stale tinybus 0.1.2 and unused patch entries
senamakel Oct 30, 2026
59f56b9
Merge upstream/main into epic/8369-security-migration
senamakel Oct 30, 2026
977d524
fix(x402): fail closed when ledger migration cannot complete
senamakel Oct 30, 2026
42b7932
test: invert bus manifest storage-driver check in msrv contract
senamakel Oct 30, 2026
43bb790
chore(deps): drop unused tinybus 0.1.2 and zip dependencies
senamakel Oct 30, 2026
a74fa0d
refactor(ledger): remove legacy v1 payment decoder
senamakel Oct 30, 2026
cb4f838
Merge remote-tracking branch 'origin/pr-124' into pr-8487-followup
senamakel Oct 30, 2026
277c53b
chore(vendor): bump tinybus submodule
senamakel Oct 30, 2026
455a646
test(lifecycle): use typed x402 proxy call and drop unused base64 imp…
senamakel Oct 30, 2026
25ecd74
Merge remote-tracking branch 'refs/remotes/senamakel/epic/8369-securi…
senamakel Oct 30, 2026
f2a25fd
chore(tinywallet-client): inherit version from workspace
senamakel Oct 30, 2026
ef7e45d
test: resolve workspace-inherited versions in release workflow test
senamakel Oct 30, 2026
bb1d1b7
test: require tinystoragedrivers-types in bus manifest check
senamakel Oct 30, 2026
65d4ca8
chore(storage-contract): update lockfile for tinywallet-bus 0.27.0
senamakel Oct 30, 2026
8bb6fab
chore(tinywallet-client): pin crate version to 0.27.0
senamakel Oct 30, 2026
0c98dd9
chore(deps): bump tinywallet-client to 0.27.0
senamakel Oct 30, 2026
18aa291
refactor(tinywallet-bus): replace storage-driver type with local coll…
senamakel Oct 30, 2026
258ad38
test: invert bus manifest dependency check in native e2e topology test
senamakel Oct 30, 2026
26318f3
chore(storage-contract): drop tinystoragedrivers-types from lockfile
senamakel Oct 30, 2026
88f3da2
test(tinywallet-module): assert exact storage collection names
senamakel Oct 30, 2026
73c212f
test(tinywallet-module): reformat assertions in wallet ownership test
senamakel Oct 30, 2026
4437174
fix(intent): bind TRC-20 token, recipient and amount; compare EVM rec…
M3gA-Mind Nov 2, 2026
ffe91c6
chore(lock): restore dependency versions downgraded in a25807e
M3gA-Mind Nov 2, 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
6 changes: 5 additions & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,14 @@

Commands actually run, with their outcome:

The feature runner excludes the `tinywallet-client` native integration tests,
which need the module staged by `scripts/test-e2e.sh`. Use the shell runner on
Unix and the PowerShell runner on Windows.

- [ ] `cargo fmt --all -- --check`
- [ ] `cargo clippy --all-targets --all-features -- -D warnings`
- [ ] `cargo build --all-targets --all-features`
- [ ] `cargo test --all-features`
- [ ] `bash scripts/test-features.sh` (or `scripts/test-features.ps1` on Windows)

## Tests

Expand Down
37 changes: 37 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,30 @@ jobs:
[
{"packages":["tinywallet","tinywallet-crypto"],"all_targets":true,"all_features":true},
{"packages":["tinywallet-bus"],"features":["wire"]},
{"packages":["tinywallet-bus"],"all_targets":true,"all_features":true},
{"packages":["tinywallet-client"],"all_targets":true,"all_features":true},
{"packages":["tinywallet-x402"],"features":["wire","eip712","abi"],"all_targets":true,"no_default_features":true},
{"packages":["tinywallet-module"],"all_targets":true,"all_features":true},
{"packages":["tinywallet-web3"],"all_targets":true}
]
module-e2e-script: scripts/test-e2e.sh
module-e2e-toolchain: '1.88.0'
feature-test-script: scripts/test-features.sh

wallet-ledger-msrv:
name: Wallet x402 ledger MSRV
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
persist-credentials: false
submodules: recursive
- uses: dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f # stable
with:
toolchain: '1.88.0'
- name: Test the x402 ledger consumer at its minimum Rust version
run: cargo test --locked -p tinywallet-x402 --features ledger

wallet-dependency-boundaries:
name: Wallet dependency boundaries
runs-on: ubuntu-latest
Expand All @@ -43,6 +60,8 @@ jobs:
run: |
python3 scripts/check_bus_boundaries_tests.py
python3 scripts/release_workflow_tests.py
python3 scripts/test_reviewed_release_workflow.py
python3 scripts/test_native_e2e_topology.py
python3 scripts/check-bus-boundaries.py
- name: Implementation crates pull no signing stack
shell: bash
Expand Down Expand Up @@ -71,3 +90,21 @@ jobs:
echo "quote/ and seams/ must stay free of crypto vocabulary" >&2
exit 1
fi

wallet-storage-contract:
name: Wallet storage collection contract
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
persist-credentials: false
submodules: recursive
- uses: dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f # stable
with:
toolchain: '1.88.0'
- name: Compile the excluded canonical-type consumer
run: cargo test --locked --manifest-path proof-workspaces/storage-contract/Cargo.toml
- name: Keep the storage contract's normal/build graph data-only
run: |
python3 scripts/check_bus_boundaries_tests.py
python3 scripts/check-bus-boundaries.py
54 changes: 54 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,21 @@ name: Release
on:
workflow_dispatch:
inputs:
mode:
description: Ordinary tag release or reviewed OpenHuman epic release
type: choice
required: true
default: standard
options: [standard, reviewed-epic]
tag:
description: Existing version tag (vX.Y.Z) committed through a reviewed PR
type: string
required: true
reviewed_pr:
description: Positive canonical PR number for reviewed-epic mode; zero is reserved for the standard path
type: string
required: false
default: '0'
push:
tags: ['v*']
permissions: {}
Expand Down Expand Up @@ -33,10 +44,53 @@ jobs:
echo "version=${TAG#v}" >> "$GITHUB_OUTPUT"
module-release:
needs: resolve
if: github.event_name == 'push' || inputs.mode == 'standard'
permissions:
contents: write
uses: tinyhumansai/.github/.github/workflows/module-release.yml@4adc1080fb495098e7af1aade82ed7e6e3c69bb7
with:
tag: ${{ needs.resolve.outputs.tag }}
version: ${{ needs.resolve.outputs.version }}
module-crate: tinywallet-module

validate-reviewed-dispatch:
if: github.event_name == 'workflow_dispatch' && inputs.mode == 'reviewed-epic'
needs: [resolve]
permissions: {}
outputs:
reviewed_pr: ${{ steps.validate.outputs.reviewed_pr }}
runs-on: ubuntu-latest
steps:
- id: validate
env:
REVIEWED_PR: ${{ inputs.reviewed_pr }}
shell: bash
run: |
set -euo pipefail
[[ "${GITHUB_REPOSITORY:-}" == "tinyhumansai/tinywallet" ]] || {
echo "reviewed releases run only in tinyhumansai/tinywallet" >&2
exit 2
}
[[ "${GITHUB_REF:-}" == "refs/heads/epic/8056-modules-wiring" ]] || {
echo "reviewed releases run only from epic/8056-modules-wiring" >&2
exit 2
}
[[ "${REVIEWED_PR:-}" =~ ^[1-9][0-9]*$ ]] || {
echo "reviewed_pr must be a positive integer" >&2
exit 2
}
printf 'reviewed_pr=%s\n' "$REVIEWED_PR" >> "$GITHUB_OUTPUT"

module-reviewed-release:
if: github.event_name == 'workflow_dispatch' && inputs.mode == 'reviewed-epic'
needs: [resolve, validate-reviewed-dispatch]
permissions:
contents: write
pull-requests: read
checks: read
actions: read
uses: tinyhumansai/.github/.github/workflows/module-reviewed-epic-release.yml@6ed83b04aab2d8977ec62e966cb914531e534fa4
with:
tag: ${{ needs.resolve.outputs.tag }}
version: ${{ needs.resolve.outputs.version }}
reviewed-pr: ${{ fromJSON(needs.validate-reviewed-dispatch.outputs.reviewed_pr || '0') }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Build output
/target/
/proof-workspaces/storage-contract/target/
**/*.rs.bk
*.pdb
__pycache__/
Expand Down
12 changes: 9 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,20 +87,26 @@ the crate-wide `Result<T>` from fallible public APIs.

## Build And Test

Run every command from the repository root. These four are the contract; CI
runs exactly them, so a green local run should mean a green CI run.
Run every command from the repository root. CI builds and lints the workspace
directly. The `tinywallet-client` native integration tests need a staged
release module, so the feature runner excludes them. Run them with
`scripts/test-e2e.sh` or `scripts/test-e2e.ps1`.

```sh
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo build --all-targets --all-features
cargo test --all-features
bash scripts/test-features.sh
```

Supporting commands:

- `cargo fmt --all` — format before committing.
- `cargo test <filter>` — run a focused subset while iterating.
- `scripts/test-features.sh` (or `scripts/test-features.ps1` on Windows) — run
workspace tests excluding `tinywallet-client`, then the client's library
tests. A bare `cargo test --all-features` would include native client tests
without their staged module and is not the supported full test command.
- `cargo run --example basic` — run the bundled example.
- `cargo doc --no-deps --all-features` — build the rustdoc CI also builds with
`RUSTDOCFLAGS="-D warnings"`.
Expand Down
9 changes: 7 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,14 @@ git submodule update --init --recursive
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo build --all-targets --all-features
cargo test --all-features
bash scripts/test-features.sh
```

On Windows, run `scripts/test-features.ps1`. These runners exclude the
`tinywallet-client` native integration tests, then run the client's library
tests. Use `scripts/test-e2e.sh` or `scripts/test-e2e.ps1` for tests that need
the wallet module staged.

The bundled example should also run:

```sh
Expand Down Expand Up @@ -55,7 +60,7 @@ regardless.
- [ ] `cargo fmt --all -- --check`
- [ ] `cargo clippy --all-targets --all-features -- -D warnings`
- [ ] `cargo build --all-targets --all-features`
- [ ] `cargo test --all-features`
- [ ] `bash scripts/test-features.sh` (or `scripts/test-features.ps1` on Windows)
- [ ] tests added or updated for behavior changes
- [ ] documentation updated for public API, architecture, or usage changes
- [ ] the pull request is focused on one logical change
Expand Down
Loading
Loading