Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
173 commits
Select commit Hold shift + click to select a range
ca03c57
feat: enforce strict oracle authorization for submit_result
Inkman007 Mar 24, 2026
b443bbe
Merge branch 'main' into feat/enforce-oracle-auth-submit-result
Inkman007 Mar 24, 2026
dac9d00
test: add get match match id test
jxsonyx Mar 24, 2026
0a84e2c
fix: resolve merge conflict in tests.rs, update submit_result call sites
Inkman007 Mar 24, 2026
63257a8
eposit emits no event when match transitions to Active
marvs8 Mar 25, 2026
92b867c
Merge pull request #41 from Inkman007/feat/enforce-oracle-auth-submit…
yahia008 Mar 25, 2026
0057ce0
Merge branch 'main' into feature/add-getmatch-test
yahia008 Mar 25, 2026
2c34467
Merge pull request #44 from JTKaduma/feature/add-getmatch-test
yahia008 Mar 25, 2026
7d53be5
Merge branch 'main' into deposit-emits
marvs8 Mar 25, 2026
e85267b
Merge pull request #90 from marvs8/deposit-emits
yahia008 Mar 25, 2026
81b63a9
fix(escrow): emit events on pause and unpause (#84)
marvs8 Mar 25, 2026
569ff82
Merge pull request #91 from marvs8/fix/issue-84-pause-unpause-events
yahia008 Mar 25, 2026
e9eca36
Add security and refund coverage tests for escrow contract
miss-yusrah Mar 25, 2026
375d0af
fix: resolve merge conflict, keep all tests from both branches
miss-yusrah Mar 25, 2026
897b5f6
Merge pull request #92 from miss-yusrah/feat/test
yahia008 Mar 25, 2026
6c217da
feat: add test for is_funded returns false on fresh match
YahKazo Mar 25, 2026
ff69957
Add InvalidState guard tests and Match timestamp field
miss-yusrah Mar 25, 2026
de1661f
Merge pull request #93 from miss-yusrah/feat/invalid-state
yahia008 Mar 25, 2026
f351db4
Merge branch 'main' into checkmate
YahKazo Mar 25, 2026
9812d98
fix(escrow): explicit MatchCancelled/MatchCompleted errors on deposit…
rayeberechi Mar 25, 2026
c05497b
fix(escrow): reject duplicate game_id in create_match (#21)
rayeberechi Mar 25, 2026
99cbbc5
test(escrow): add cancel_match on Completed match returns InvalidState
Mar 25, 2026
bc65706
test(escrow): verify deposit into completed match returns InvalidState
Mar 25, 2026
a694500
fix: add expire_match to unblock abandoned pending matches
kceeglo345-dev Mar 25, 2026
888da98
test: verify get_escrow_balance returns 0, stake, and 2x stake at eac…
luhrhenz Mar 25, 2026
5e87ab9
test: verify get_escrow_balance returns 0 after payout
kceeglo345-dev Mar 25, 2026
d65bfc9
fix: add explicit is_funded check in submit_result to guard against s…
luhrhenz Mar 25, 2026
a21ff52
test: verify multiple matches can be created with different game_ids
kceeglo345-dev Mar 25, 2026
ada9033
style: cargo fmt
kceeglo345-dev Mar 25, 2026
e141f16
style: cargo fmt
kceeglo345-dev Mar 25, 2026
8766a1c
style: cargo fmt
kceeglo345-dev Mar 25, 2026
7e71a65
fix: add MAX_GAME_ID_LEN=64 validation in create_match and Error::Inv…
luhrhenz Mar 25, 2026
2f5821a
test: assert deposit returns ContractPaused when contract is paused
luhrhenz Mar 25, 2026
c7a9682
task 71
habiba-d-coder Mar 25, 2026
648878d
tested
habiba-d-coder Mar 25, 2026
4434fd5
reject
habiba-d-coder Mar 25, 2026
a8c4f9c
oracle
habiba-d-coder Mar 25, 2026
d45dc9a
Merge pull request #113 from habiba-d-coder/oracle_has_result
yahia008 Mar 25, 2026
ef92684
Merge pull request #109 from luhrhenz/test/deposit-blocked-when-paused
yahia008 Mar 25, 2026
771aec3
Merge branch 'main' into test/multiple-matches-different-game-ids
yahia008 Mar 25, 2026
9b754dd
Merge pull request #106 from kceeglo345-dev/test/multiple-matches-dif…
yahia008 Mar 25, 2026
2649724
Merge branch 'main' into test/escrow-balance-zero-after-payout
yahia008 Mar 25, 2026
206e2e7
Merge pull request #105 from kceeglo345-dev/test/escrow-balance-zero-…
yahia008 Mar 25, 2026
33d1b56
Merge pull request #101 from utilityjnr/utilityy
yahia008 Mar 25, 2026
a34f705
test: paused contract rejects submit_result
CHEF-SAVY Mar 25, 2026
3779287
style: apply cargo fmt to pre-existing formatting issues
CHEF-SAVY Mar 25, 2026
94d9bab
chore: ignore test_snapshots directories
CHEF-SAVY Mar 25, 2026
3e238d6
Merge pull request #114 from CHEF-SAVY/test/paused-contract-rejects-s…
yahia008 Mar 25, 2026
cf5a1a6
test: assert ContractPaused on create_match when paused
CHEF-SAVY Mar 25, 2026
00c8ce8
Merge pull request #115 from CHEF-SAVY/test/paused-contract-rejects-c…
yahia008 Mar 25, 2026
362f72a
Merge pull request #94 from YahKazo/checkmate
yahia008 Mar 25, 2026
8cc7e97
test: is_funded returns false after only one player deposits
CHEF-SAVY Mar 25, 2026
2549a76
feat:implenting arithmetic that silently truncates
jhayniffy Mar 25, 2026
4056d6d
Merge branch 'main' into fix/match-expiry-timeout
kceeglo345-dev Mar 26, 2026
4f2c199
fix: resolve match expiry timeout errors and scrambled test bodies
kceeglo345-dev Mar 26, 2026
2619379
Merge remote-tracking branch 'origin/main' into test/is-funded-partia…
CHEF-SAVY Mar 26, 2026
bcd53e1
style: apply cargo fmt and remove redundant cfg(test) attribute
CHEF-SAVY Mar 26, 2026
9ae033a
Merge pull request #121 from CHEF-SAVY/test/is-funded-partial-deposit
yahia008 Mar 26, 2026
94efb6c
Merge pull request #118 from kceeglo345-dev/ix/match-expiry-timeout
yahia008 Mar 26, 2026
ceba23f
feat(oracle): add update_admin for admin key rotation
CHEF-SAVY Mar 26, 2026
5e9b169
fix: prefix unused oracle variable with underscore in escrow test
CHEF-SAVY Mar 26, 2026
1c96ac0
test: add TTL extended on cancel after deposit test
afurious Mar 26, 2026
5c24438
Merge pull request #122 from CHEF-SAVY/feat/oracle-admin-rotation
yahia008 Mar 26, 2026
8a0ab8c
Merge pull request #123 from chideraisiguzor/test/ttl-extended-on-can…
yahia008 Mar 26, 2026
1940570
chore: save progress before merge
rayeberechi Mar 26, 2026
280dd2c
fix: resolve merge conflict keeping all error variants with sequentia…
rayeberechi Mar 26, 2026
a860adb
Merge pull request #96 from rayeberechi/fix/issue-21-game-id-uniqueness
yahia008 Mar 26, 2026
5d0d33b
fix #67: document game_id format and add oracle integration guide
unixfundz Mar 26, 2026
e8dc6d2
Merge pull request #116 from devoclan/feature/escrow-balance
yahia008 Mar 26, 2026
212028c
test: verify draw refunds exact stake and zeroes escrow balance
luhrhenz Mar 26, 2026
0270e7d
Merge pull request #124 from unixfundz/fix/67-game-id-format-docs
yahia008 Mar 26, 2026
da4d8ab
Merge pull request #145 from chriz-cloud/feat/draw-refund-escrow-bala…
yahia008 Mar 26, 2026
920a5d5
test: verify Winner::Player2 receives full pot payout
chriz-cloud Mar 26, 2026
8dacaf9
test: assert Error::Unauthorized on cancel by third-party address
chriz-cloud Mar 26, 2026
d60b63d
Merge branch 'main' into feat/payout-player2-test
yahia008 Mar 26, 2026
9c4f237
Merge branch 'main' into feat/unauthorized-cancel-error-code-test
yahia008 Mar 26, 2026
886c278
Merge pull request #152 from chriz-cloud/feat/unauthorized-cancel-err…
yahia008 Mar 26, 2026
ccf0158
Merge pull request #1 from StellarCheckMate/main
Sundayabel222 Mar 26, 2026
f682ea6
Merge pull request #151 from chriz-cloud/feat/payout-player2-test
yahia008 Mar 26, 2026
30b0000
Merge pull request #153 from Sundayabel222/main
yahia008 Mar 26, 2026
7c8891b
feat: validate match_id against escrow contract in oracle submit_result
chriz-cloud Mar 26, 2026
5c81f0c
Merge pull request #154 from chriz-cloud/feat/oracle-validate-match-id
yahia008 Mar 26, 2026
74e1c3a
feature:Add Test: deposit state transitions player1_deposited flag s…
bitstarkbridge Mar 26, 2026
f3d5ed0
Merge pull request #2 from StellarCheckMate/main
Sundayabel222 Mar 26, 2026
a627307
feature:Fix: escrow contract has no get_admin function admin address…
bitstarkbridge Mar 26, 2026
af095d4
feat: Deposit by Non-Player Address Should Return Unauthorized
jhayniffy Mar 26, 2026
78489df
Merge branch 'main' into feature/deposit-player-address
devoclan Mar 26, 2026
e9eacea
feature:Add Test: MatchCount increments correctly across multiple cre…
bitstarkbridge Mar 26, 2026
8bbcd03
Merge pull request #157 from Sundayabel222/main
yahia008 Mar 26, 2026
e3e6860
Merge pull request #159 from devoclan/feature/deposit-player-address
yahia008 Mar 26, 2026
300347f
fix(oracle): document has_result auth intent and add admin-gated variant
maztah1 Mar 26, 2026
2919ba6
fix(oracle): remove .unwrap() on has_result_admin in tests
maztah1 Mar 26, 2026
5dfcad7
Merge pull request #158 from bitstarkbridge/Checkmate-Escrow134
yahia008 Mar 26, 2026
a017ee5
Merge branch 'main' into Checkmate-Escrow147
yahia008 Mar 26, 2026
b86f547
Merge pull request #160 from bitstarkbridge/Checkmate-Escrow147
yahia008 Mar 26, 2026
6ebb1fd
Merge pull request #156 from bitstarkbridge/Checkmate-Escrow136
yahia008 Mar 26, 2026
1107f78
Merge pull request #162 from maztah1/fix/63-has-result-public-auth-doc
yahia008 Mar 26, 2026
0fb96f4
test: assert get_match returns correct game_id
chukwudiikeh Mar 27, 2026
be8196d
feat(oracle): emit initialized event and add Draw/Player2Wins/init-ev…
chukwudiikeh Mar 27, 2026
e79866d
add check
unrealtim-tech Mar 27, 2026
03b8ceb
Merge pull request #163 from chukwudiikeh/test/get-match-returns-corr…
yahia008 Mar 27, 2026
c16d698
Merge pull request #164 from chukwudiikeh/feat/oracle-init-event-and-…
yahia008 Mar 27, 2026
5b9e05a
test(escrow): get_escrow_balance returns MatchNotFound for non-existe…
maztah1 Mar 27, 2026
2564663
Merge branch 'main' into test/140-get-escrow-balance-match-not-found
maztah1 Mar 27, 2026
189ca07
fix: test erros
unrealtim-tech Mar 27, 2026
c040eb6
feat-add get match
unrealtim-tech Mar 27, 2026
9ba9c01
chore: merge
unrealtim-tech Mar 27, 2026
0f5bf38
chore: fix test
unrealtim-tech Mar 27, 2026
c92c845
Merge pull request #166 from unrealtim-tech/feat-create-match
yahia008 Mar 27, 2026
14e387f
Merge pull request #167 from maztah1/test/140-get-escrow-balance-matc…
yahia008 Mar 27, 2026
fc53f82
chore: merge branch 'main' into feat-get_-atch-extend-ttl
unrealtim-tech Mar 27, 2026
b0c4091
added the get_match_count function to the Escrow contract
Ehonrie Mar 27, 2026
35d8853
fix: test
unrealtim-tech Mar 27, 2026
f195dd6
fix: ci actions build errors
unrealtim-tech Mar 27, 2026
835aff9
fix: ci check fix
unrealtim-tech Mar 27, 2026
13f62b3
Merge pull request #168 from unrealtim-tech/feat-get_-atch-extend-ttl
yahia008 Mar 27, 2026
115f43c
test(escrow): add cancel_match event coverage for partial-deposit pat…
devAgatha Mar 27, 2026
4054b01
Merge pull request #194 from Ehonrie/get-match-count
yahia008 Mar 27, 2026
d97f106
Fix: no-mechanism-to-update-oracle-address-post-deploy
Froshboss Mar 27, 2026
dbe73f3
Fix: oracle-submit-result-has-no-link-back-to-escrow-contract-results…
Froshboss Mar 27, 2026
e364409
Test #171: cancel_match on non-existent match_id returns MatchNotFound
scriptnovaa Mar 27, 2026
e55697b
Test #172: deposit on non-existent match_id returns MatchNotFound
scriptnovaa Mar 27, 2026
a851bb9
test: submit_result on non-existent match_id returns MatchNotFound (#…
scriptnovaa Mar 27, 2026
6cbf4fd
test: assert game_id field in test_submit_and_get_result (#149)
autostack-art Mar 27, 2026
a16acf7
test: verify platform field is stored and returned by get_match
OxDev-max Mar 27, 2026
5aec534
feat: emit initialized event from escrow initialize and add test
OxDev-max Mar 27, 2026
6b62245
test: assert is_funded returns MatchNotFound for unknown match id
OxDev-max Mar 27, 2026
5a1bb77
feat: test-contract-token-balance
henrypeters Mar 28, 2026
29a1f24
feat: Add Test: create_match with empty string game_id should be reje…
henrypeters Mar 28, 2026
9f95d5f
Merge pull request #195 from devAgatha/fix/142-cancel-match-event-cov…
yahia008 Mar 28, 2026
4069d10
Merge pull request #196 from Froshboss/Fix-no-mechanism-to-update-ora…
yahia008 Mar 28, 2026
2a25817
Merge pull request #197 from Froshboss/Fix-oracle-submit-result-has-n…
yahia008 Mar 28, 2026
9bcebc8
Merge pull request #199 from scriptnovaa/test/171-cancel-match-not-found
yahia008 Mar 28, 2026
dea324c
Merge branch 'main' into test/172-deposit-match-not-found
yahia008 Mar 28, 2026
ea63d99
integer
Emeka000 Mar 28, 2026
c1c232e
Merge pull request #200 from scriptnovaa/test/172-deposit-match-not-f…
yahia008 Mar 28, 2026
10c1727
Merge branch 'main' into test/173-submit-result-match-not-found
yahia008 Mar 28, 2026
f7c999d
Merge branch 'main' into filter
Emeka000 Mar 28, 2026
c71e8bf
Merge pull request #201 from scriptnovaa/test/173-submit-result-match…
yahia008 Mar 28, 2026
776a885
fix(#185): add winner field to Match struct and store it on completion
Mar 28, 2026
aba36fc
fix(#185,#226): store winner on completion; use MatchState::Expired i…
Mar 28, 2026
30a751c
test(#185,#192,#226): add tests for winner storage, multi-match oracl…
Mar 28, 2026
3f998f4
Merge branch 'main' into fix/issues-185-192-224-226
goldemaverick-ui Mar 28, 2026
c5313d2
Merge pull request #239 from goldemaverick-ui/fix/issues-185-192-224-226
famvilianity-eng Mar 28, 2026
3346919
fix(#216): restrict initialize to deployer on escrow and oracle contr…
fejilaup-cloud Mar 28, 2026
243db06
fix(#216): restrict initialize to deployer on escrow and oracle contr…
fejilaup-cloud Mar 28, 2026
e157c38
fix(#219): get_escrow_balance returns Err for completed/cancelled mat…
fejilaup-cloud Mar 28, 2026
a82d778
match_ledger
Emeka000 Mar 28, 2026
ca92aff
fix(#225): extend storage TTL on is_funded and get_escrow_balance reads
fejilaup-cloud Mar 28, 2026
7fb95f8
fix(#230): validate token address implements token interface in creat…
fejilaup-cloud Mar 28, 2026
ddf62ae
Merge branch 'main' into escrows
Emeka000 Mar 28, 2026
1137ada
Merge branch 'main' into fix/security-and-bug-fixes
fejilaup-cloud Mar 28, 2026
36b0b8a
Merge pull request #241 from fejilaup-cloud/fix/security-and-bug-fixes
famvilianity-eng Mar 28, 2026
409b572
Merge pull request #204 from autostack-art/test/issue-149-oracle-get-…
yahia008 Mar 28, 2026
6a3d34e
Merge pull request #208 from OxDev-max/test/platform-field-stored-and…
yahia008 Mar 28, 2026
4c83575
Merge branch 'main' into test/is-funded-match-not-found
yahia008 Mar 28, 2026
a952148
Merge pull request #209 from OxDev-max/feat/initialize-emits-event
yahia008 Mar 28, 2026
fe7dbd5
Merge branch 'main' into filter
Emeka000 Mar 28, 2026
22fdef5
Merge branch 'main' into escrows
Emeka000 Mar 28, 2026
0c3a303
Merge pull request #212 from henrypeters/feature/issue-179-test-contr…
yahia008 Mar 28, 2026
dc4f794
Merge pull request #214 from henrypeters/feature/issue-184-reject-cre…
yahia008 Mar 28, 2026
ed63abd
fix(#182): add doc comments to error variants and error code referenc…
Coredevjay Mar 28, 2026
189c779
fix(#183): add doc comments to oracle Error variants
Coredevjay Mar 28, 2026
1aeaca0
test(#186): assert get_match returns Completed for all three winner v…
Coredevjay Mar 28, 2026
dd0d267
Merge pull request #238 from Emeka000/filter
yahia008 Mar 28, 2026
cf3c915
Merge pull request #240 from Emeka000/escrows
yahia008 Mar 28, 2026
90fe0c4
fix(#191): guard cancel_match against contract address as caller
Coredevjay Mar 28, 2026
b524043
Merge pull request #246 from Coredevjay/fix/182-error-code-documentation
yahia008 Mar 28, 2026
4871971
Merge pull request #247 from Coredevjay/fix/183-oracle-error-doc-comm…
yahia008 Mar 28, 2026
d985363
Merge pull request #248 from Coredevjay/test/186-get-match-completed-…
yahia008 Mar 28, 2026
87f0ee4
Merge pull request #249 from Coredevjay/fix/191-cancel-match-contract…
yahia008 Mar 28, 2026
77eebc0
Merge pull request #210 from OxDev-max/test/is-funded-match-not-found
yahia008 Mar 28, 2026
15caa3a
fix feature add result
Whiznificent Mar 28, 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: 4 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,13 @@ jobs:
restore-keys: ${{ runner.os }}-cargo-

- name: Build contracts
run: cargo build --target wasm32-unknown-unknown --release
run: |
cd contracts/escrow && cargo build --target wasm32-unknown-unknown --release

- name: Upload WASM artifacts
uses: actions/upload-artifact@v4
with:
name: wasm-contracts
path: target/wasm32-unknown-unknown/release/*.wasm
path: |
contracts/*/target/wasm32-unknown-unknown/release/*.wasm
retention-days: 7
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/target
.env
**/test_snapshots/
198 changes: 198 additions & 0 deletions .kiro/settings/lsp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,198 @@
{
"languages": {
"rust": {
"name": "rust-analyzer",
"command": "rust-analyzer",
"args": [],
"file_extensions": [
"rs"
],
"project_patterns": [
"Cargo.toml"
],
"exclude_patterns": [
"**/target/**"
],
"multi_workspace": false,
"initialization_options": {
"cargo": {
"buildScripts": {
"enable": true
}
},
"diagnostics": {
"enable": true,
"enableExperimental": true
},
"workspace": {
"symbol": {
"search": {
"scope": "workspace"
}
}
}
},
"request_timeout_secs": 60
},
"java": {
"name": "jdtls",
"command": "jdtls",
"args": [],
"file_extensions": [
"java"
],
"project_patterns": [
"pom.xml",
"build.gradle",
"build.gradle.kts",
".project"
],
"exclude_patterns": [
"**/target/**",
"**/build/**",
"**/.gradle/**"
],
"multi_workspace": false,
"initialization_options": {
"settings": {
"java": {
"compile": {
"nullAnalysis": {
"mode": "automatic"
}
},
"configuration": {
"annotationProcessing": {
"enabled": true
}
}
}
}
},
"request_timeout_secs": 60
},
"go": {
"name": "gopls",
"command": "gopls",
"args": [],
"file_extensions": [
"go"
],
"project_patterns": [
"go.mod",
"go.sum"
],
"exclude_patterns": [
"**/vendor/**"
],
"multi_workspace": false,
"initialization_options": {
"usePlaceholders": true,
"completeUnimported": true
},
"request_timeout_secs": 60
},
"ruby": {
"name": "solargraph",
"command": "solargraph",
"args": [
"stdio"
],
"file_extensions": [
"rb"
],
"project_patterns": [
"Gemfile",
"Rakefile"
],
"exclude_patterns": [
"**/vendor/**",
"**/tmp/**"
],
"multi_workspace": false,
"initialization_options": {},
"request_timeout_secs": 60
},
"typescript": {
"name": "typescript-language-server",
"command": "typescript-language-server",
"args": [
"--stdio"
],
"file_extensions": [
"ts",
"js",
"tsx",
"jsx"
],
"project_patterns": [
"package.json",
"tsconfig.json"
],
"exclude_patterns": [
"**/node_modules/**",
"**/dist/**"
],
"multi_workspace": false,
"initialization_options": {
"preferences": {
"disableSuggestions": false
}
},
"request_timeout_secs": 60
},
"python": {
"name": "pyright",
"command": "pyright-langserver",
"args": [
"--stdio"
],
"file_extensions": [
"py"
],
"project_patterns": [
"pyproject.toml",
"setup.py",
"requirements.txt",
"pyrightconfig.json"
],
"exclude_patterns": [
"**/__pycache__/**",
"**/venv/**",
"**/.venv/**",
"**/.pytest_cache/**"
],
"multi_workspace": false,
"initialization_options": {},
"request_timeout_secs": 60
},
"cpp": {
"name": "clangd",
"command": "clangd",
"args": [
"--background-index"
],
"file_extensions": [
"cpp",
"cc",
"cxx",
"c",
"h",
"hpp",
"hxx"
],
"project_patterns": [
"CMakeLists.txt",
"compile_commands.json",
"Makefile"
],
"exclude_patterns": [
"**/build/**",
"**/cmake-build-**/**"
],
"multi_workspace": false,
"initialization_options": {},
"request_timeout_secs": 60
}
}
}
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"kiroAgent.configureMCP": "Disabled"
}
2 changes: 2 additions & 0 deletions Cargo.lock

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

Loading
Loading