845 Commits

Author SHA1 Message Date
Arnaud
0ab76f12f9
Temporarily disable test (fixed in Vault) 2025-06-19 10:17:13 +02:00
Arnaud
e68fc7685e
Enable logs on CI 2025-06-19 09:25:09 +02:00
Arnaud
4f20e54978
Bump contracts 2025-06-19 09:23:19 +02:00
Arnaud
c72362902d
Adjust the number of transfer event and fix the duration request. 2025-06-19 09:23:10 +02:00
Arnaud
27d128454c
Use ERC20 subscription instead of eventually to check token balances 2025-06-19 06:25:12 +02:00
Arnaud
86641a6a28
Apply markplace test changes and use ERC20 subscriptions 2025-06-18 16:56:05 +02:00
Dmitriy Ryajov
b8ebaba0d3
remove echo (todo: fix trace log) 2025-05-30 18:25:40 -06:00
Dmitriy Ryajov
c62e1984c7
refactor: simplify error handling in suggestDownloadTool and enhance test setup for CLI 2025-05-30 18:25:06 -06:00
Dmitriy Ryajov
630b255b14
chore: add project docs and update test circuit paths 2025-05-30 12:18:09 -06:00
Dmitriy Ryajov
87e1916266
chore: add project documentation and update prover configuration in tests 2025-05-30 09:03:48 -06:00
Dmitriy Ryajov
d7b9b0bc0b
chore: add project documentation and update test configurations 2025-05-30 09:03:48 -06:00
Dmitriy Ryajov
cfe40fa243
feat: add single-block slot proof tests and update NimGroth16 backend configuration 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
caa5010436
refactor: replace circom-wasm with circom-graph and update G1/G2 point conversions 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
5055e47fe9
feat: improve prover logging and add NimGroth16 prover tests 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
92a54fac32
refactor: rename proverBackendCmd to proverBackend and standardize enum values 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
1ced3cb03f
restore tests 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
be6d8840af
Update subproject commits for circom-witnessgen and nim-groth16 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
0f01c9c965
Avoid using pointer to task, use the actual task object. Add some checked exceptions 2025-05-30 09:03:47 -06:00
Dmitriy Ryajov
4035900797
Fix typo in testproverfactory.nim: correct getZKeyFile to getZkeyFile 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
06f45ba873
Fix import statement in testslots.nim: replace testbackendfactory with testproverfactory 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
0fc8858b07
Add ProverBackendCmd enum and update configuration for nimGroth16 and circomCompat backends 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
087cc4ce7b
Refactor codebase: enhance error handling, improve type definitions, and streamline async procedures 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
180a748167
Refactor SlotsBuilder and DataSampler types to use generic parameters SomeTree and SomeHash 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
f25facd264
Refactor backend structure: remove unused files, add NimGroth16 support, and enhance prover functionality 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
d791cd0498
Refactor Circom compatibility backend and add NimGroth16 backend implementation 2025-05-30 09:03:46 -06:00
Dmitriy Ryajov
548e1bebaa
Remove vendor/threading submodule 2025-05-30 09:03:45 -06:00
Dmitriy Ryajov
efea71dfdf
adding circom-witnessgen 2025-05-30 09:03:45 -06:00
Dmitriy Ryajov
be5573d308
adding goldilocks deps 2025-05-30 09:03:45 -06:00
Dmitriy Ryajov
cba533e55b
adding deps 2025-05-30 09:03:45 -06:00
Dmitriy Ryajov
a5ef6071d8
wip nim groth16 2025-05-30 09:03:45 -06:00
Dmitriy Ryajov
595b060e5c
adding threading dep 2025-05-30 09:03:45 -06:00
Dmitriy Ryajov
108e096157
adding nim-groth16 dep 2025-05-30 09:03:44 -06:00
Slava
e43872d0b8
chore: update testnet marketplace address (#1245)
https://github.com/codex-storage/nim-codex/issues/1241
v0.2.3
2025-05-30 09:12:55 +00:00
Giuliano Mega
d59c5b023c
chore: bump Nim to 2.2.4 (#1242)
* chore: bump Nim to 2.2.4

* fix: resolve symbol ambiguity and drop auto type

* fix: use reference to task instead of pointer or the compiler will deallocate `task` before the encoding/decoding is done

* fix: convention that maxCollateralPerByte equals totalRemainingCollateral when freeSize is 0 to avoid DivByZeroDefect

* fix: bump compiler version in CI pipeline as well
2025-05-29 16:37:38 -07:00
Arnaud
28a83db69e
chore: returns the collateral when a slot is reserved but not filled (#1216)
* Change token allowance method because increaseAllowance does not exist anymore

* Returns collateral when a reservation is deleted and not only a slot is filled

* Remove the returnedCollateral when the slot is not filled by the host

* Add returnedCollateral when the sale is ignored

* Add returnsCollateral variable for ignored state

* Rebase the contracts submodule on the master

* Add integration test

* Fix duration

* Remove unnecessary teardown function

* Remove misleading comment

* Get returned collateral from the request

* Enable logs to debug on CI

* Fix test

* Increase test timeout

* Fix typo

* Fix rebase
2025-05-29 14:47:37 +00:00
Slava
13811825b3
ci: use macos arm runners (#1174)
* ci: use inputs instead of matrix in a ccache key

* ci: switch to arm runners for macos

* ci: use node 20

* ci: pass cpu to a composite action
2025-05-29 10:17:46 +00:00
Arnaud
827d9ccccf
Update contracts (#1238) 2025-05-29 08:27:41 +00:00
Arnaud
c689542579
fix: sales cleanup cancellation (#1234)
* fix(sales): handle cancellation of slot cleanup

Ensures that processing slots from the slot queue
continues even when cleanup of a slot is cancelled.

Co-Authored-By: Eric <5089238+emizzle@users.noreply.github.com>

* chore(reservations): add more `raises` annotations

* Fix cleanup cancellation

* Add remove-agent to trackedfutures instead of the cleanup function

* Increase the timeout to match the request expiry

* Enable logs to debug on CI

* Remove useless except and do not return when add item back to slot queue fails

* Reduce poll interval to detect sale cancelled state

* Avoid cancelling cleanup routine

* Do not cancel creating reservation in order to avoid inconsistent state

* Remove useless try except

---------

Co-authored-by: Mark Spanbroek <mark@spanbroek.net>
Co-authored-by: Eric <5089238+emizzle@users.noreply.github.com>
2025-05-29 06:57:05 +00:00
munna0908
71422f0d3d
fix: Support for mapping multiple listener address (#1236)
* multi address mapping support

* fix thread issues

* fix local thread var issue

* chore: rename stopNatThread to stopNatThreads

---------

Co-authored-by: Dmitriy Ryajov <dryajov@gmail.com>
2025-05-27 09:05:43 +00:00
markspanbroek
25a8077e80
fix(integration): fix api validation test (#1201)
* integration: shutdown codex node at end of test

On Windows the codex node did not shut down properly after this test
finished.

* contracts: fix flaky test
2025-05-26 16:49:53 +00:00
Ben Bierens
bfbd7264df
Adds missing async-raises for prover.verify (#1237) 2025-05-26 15:48:59 +00:00
Arnaud
f7d06cd0e8
chore(marketplace): switch to websocket (#1166)
* Switch to websocket

* Create resubscribe future

* Resubscribe websocket events after 5 minutes

* Remove the subscribe workaround and use define the resubscribe symbol

* Use localhost for ws url

* Define 240 seconds for resubscription interval

* Ensute that updates are sync when using ws
2025-05-23 14:13:19 +00:00
Marcin Czenko
748830570a
checked exceptions in stores (#1179)
* checked exceptions in stores

* makes asynciter as much exception safe as it gets

* introduce "SafeAsyncIter" that uses Results and limits exceptions to cancellations

* adds {.push raises: [].} to errors

* uses SafeAsyncIter in "listBlocks" and in "getBlockExpirations"

* simplifies safeasynciter (magic of auto)

* gets rid of ugly casts

* tiny fix in hte way we create raising futures in tests of safeasynciter

* Removes two more casts caused by using checked exceptions

* adds an extended explanation of one more complex SafeAsyncIter test

* adds missing "finishOnErr" param in slice constructor of SafeAsyncIter

* better fix for "Error: Exception can raise an unlisted exception: Exception" error.

---------

Co-authored-by: Dmitriy Ryajov <dryajov@gmail.com>
2025-05-21 21:17:04 +00:00
markspanbroek
bde98738c2
fix(slotqueue): simplify slot queue workers (#1224)
* fix(slotqueue): simplify slot queue workers

- worker is now just an async running loop
- instead of passing a "done" Future, use an
  AsyncEvent to signal completion

* chore(slotqueue): address review comments

Co-Authored-By: Eric <5089238+emizzle@users.noreply.github.com>
Co-Authored-By: Dmitriy Ryajov <dryajov@gmail.com>

---------

Co-authored-by: Eric <5089238+emizzle@users.noreply.github.com>
Co-authored-by: Dmitriy Ryajov <dryajov@gmail.com>
v0.2.2
2025-05-15 13:02:04 +00:00
Adam Uhlíř
28e87d06cc
docs(openapi): freeSize non-optional (#1211) 2025-05-14 10:14:40 +00:00
Adam Uhlíř
f144099377
fix(api): availability creation validation (#1212) 2025-05-14 08:46:16 +00:00
Adam Uhlíř
19a5e05c13
docs(openapi): add local data delete endpoint (#1214)
* docs(openapi): add local data delete endpoint

* chore: feedback

Co-authored-by: Eric <5089238+emizzle@users.noreply.github.com>
Signed-off-by: Adam Uhlíř <adam@uhlir.dev>

---------

Signed-off-by: Adam Uhlíř <adam@uhlir.dev>
Co-authored-by: Eric <5089238+emizzle@users.noreply.github.com>
2025-05-03 16:54:38 +00:00
Slava
b39d541227
chore: update testnet marketplace address (#1209)
https://github.com/codex-storage/nim-codex/issues/1203
v0.2.1
2025-04-23 06:18:38 +00:00
Adam Uhlíř
d220e53fe1
ci: trigger python generator upon release (#1208) 2025-04-22 14:46:03 +00:00
Ben Bierens
2eb83a0ebb
Codex-contracts hash in version information. (#1207)
* Adds revision hash of codex-contracts to version information.

* Update codex/conf.nim

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: Ben Bierens <39762930+benbierens@users.noreply.github.com>

* Update codex/conf.nim

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: Ben Bierens <39762930+benbierens@users.noreply.github.com>

* Update codex/rest/api.nim

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: Ben Bierens <39762930+benbierens@users.noreply.github.com>

* simplified git command

* Remove space

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: Giuliano Mega <giuliano.mega@gmail.com>

* Updates openapi.yaml

---------

Signed-off-by: Ben Bierens <39762930+benbierens@users.noreply.github.com>
Signed-off-by: Giuliano Mega <giuliano.mega@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Giuliano Mega <giuliano.mega@gmail.com>
2025-04-22 14:32:32 +00:00