Commit Graph

75 Commits

Author SHA1 Message Date
Mohamed Sohail e91f82c08a
docs: add godocs comments to all routes
* disable serving docs by default
2023-04-14 07:57:43 +00:00
dependabot[bot] 223656b2bc
build(deps): bump github.com/bsm/redislock from 0.9.1 to 0.9.2 (#80)
Bumps [github.com/bsm/redislock](https://github.com/bsm/redislock) from 0.9.1 to 0.9.2.
- [Release notes](https://github.com/bsm/redislock/releases)
- [Changelog](https://github.com/bsm/redislock/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bsm/redislock/compare/v0.9.1...v0.9.2)

---
updated-dependencies:
- dependency-name: github.com/bsm/redislock
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 15:19:56 +03:00
dependabot[bot] 0218831bd9
build(deps): bump github.com/knadh/koanf/v2 from 2.0.0 to 2.0.1 (#81)
Bumps [github.com/knadh/koanf/v2](https://github.com/knadh/koanf) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/knadh/koanf/releases)
- [Commits](https://github.com/knadh/koanf/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: github.com/knadh/koanf/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 15:18:48 +03:00
dependabot[bot] b2df62f0df
build(deps): bump golang.org/x/crypto from 0.7.0 to 0.8.0 (#79)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](https://github.com/golang/crypto/compare/v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 15:18:30 +03:00
dependabot[bot] d9acaa9583
build(deps): bump github.com/redis/go-redis/v9 from 9.0.2 to 9.0.3 (#77)
Bumps [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) from 9.0.2 to 9.0.3.
- [Release notes](https://github.com/redis/go-redis/releases)
- [Changelog](https://github.com/redis/go-redis/blob/master/CHANGELOG.md)
- [Commits](https://github.com/redis/go-redis/compare/v9.0.2...v9.0.3)

---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 15:18:19 +03:00
Mohamed Sohail d51e74883d
docs: add swagger auto generator
* to generate docs, run `make docs`
* endpoint /swagger/
2023-04-13 11:55:07 +00:00
Mohamed Sohail 0e5db7f06f
feat: add nonce bootstrapper
Useful for rebuilding the nonce cache automatically.

* uses otx_sign as the first source
* can fallback to chain nonce value of the 1st source is corrupted
2023-04-13 10:38:23 +00:00
Mohamed Sohail b137088d38
sub: update handlers for latest CHAIN.* events
* Minor fixes and improvements
2023-04-11 10:18:06 +00:00
Mohamed Sohail 21a17d2735
feat: add SLA package which defines a global ctx timeout 2023-04-11 10:15:33 +00:00
Mohamed Sohail eba329eefa
refactor (store): consolidate all pg store related actions
* All postgres related functions now live in internal/store.
* Updated queries.sql file to match struct order (readibility)
* Moved keystore -> store
* Moved queries -> store
* Removed pkg/postgres
2023-04-11 10:14:49 +00:00
Mohamed Sohail 82294b96f8
refactor: pgx supports big.Int type conversion internally 2023-04-06 06:31:07 +00:00
Mohamed Sohail e67a42ede3
fix: config.toml and dev docker-compose 2023-04-06 06:12:37 +00:00
Mohamed Sohail a98fe958a3
refactor: remove unecessary publisher component
* clients should now rely on the CHAIn.* subjects
2023-04-06 06:08:38 +00:00
Mohamed Sohail e203c49049
major refactor: use proxy contract and gas faucet (see notes)
* remove uncessary tasks and task handlers
* reafctor custodial container
* refactor gas refiller. Gas refiller can queue at a later time to match cooldown
* refactor sub handler to process chain events
2023-03-29 16:10:58 +00:00
Mohamed Sohail 448b142f7c
refactor: nonce store interface
* A nonce value can  now be bootstrapped externally from any source
* Removed unecessary SetNewAccountNonce method
2023-03-29 07:37:59 +00:00
Mohamed Sohail 750fdd9c1f
fix: global lock middleware func signature 2023-03-28 06:55:51 +00:00
Mohamed Sohail 5f5678e25b
refactor: use echo ctx only for cancellation/propagation 2023-03-28 06:39:44 +00:00
Mohamed Sohail ef5bd1860f
deps(go-playground-validator): use inbuilt eth_addr_checksum validator on routes 2023-03-28 06:30:29 +00:00
Mohamed Sohail ac5567bc56
deps: update 2023-03-28 06:27:15 +00:00
Mohamed Sohail 2d5e41eb81
chore: cleanup unecessary checksum fn 2023-03-28 06:27:15 +00:00
dependabot[bot] fc49f2387d
build(deps): bump github.com/go-playground/validator/v10 (#72)
Bumps [github.com/go-playground/validator/v10](https://github.com/go-playground/validator) from 10.11.2 to 10.12.0.
- [Release notes](https://github.com/go-playground/validator/releases)
- [Commits](https://github.com/go-playground/validator/compare/v10.11.2...v10.12.0)

---
updated-dependencies:
- dependency-name: github.com/go-playground/validator/v10
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-28 09:26:35 +03:00
dependabot[bot] 81a3bb7e3c
build(deps): bump github.com/nats-io/nats.go from 1.24.0 to 1.25.0 (#73)
Bumps [github.com/nats-io/nats.go](https://github.com/nats-io/nats.go) from 1.24.0 to 1.25.0.
- [Release notes](https://github.com/nats-io/nats.go/releases)
- [Commits](https://github.com/nats-io/nats.go/compare/v1.24.0...v1.25.0)

---
updated-dependencies:
- dependency-name: github.com/nats-io/nats.go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-28 09:14:10 +03:00
Mohamed Sohail 0235f25f81
ci: fix outputs 2023-03-16 12:11:03 +00:00
Mohamed Sohail 04e5d3c20f
major: breaking changes, fixes
* add global lock
* fix lock contention
* update redis client and server -> v7
* add network status API
* upgrade deps

Squashed commit of the following:

commit 9d95f2e8f8
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Thu Mar 16 11:12:06 2023 +0000

    feat: add updated_at postgres fn + trigger

    * closes #66

commit 144d5018ea
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Thu Mar 16 08:48:45 2023 +0000

    feat: add network account status (nonce, balance)

commit 5679a675f3
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Thu Mar 16 08:01:58 2023 +0000

    fix: system global lock

    * add middleware to entire API group
    * setNX system lock key

commit ee907dddbc
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Thu Mar 16 07:34:29 2023 +0000

    feat: add system global lock to be triggered manually

commit ad58d1da47
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Tue Mar 14 16:02:25 2023 +0000

    feat: add lock retry strategy

    * previouly we relied on the task being re-queued which generally reduces the throughput of tasks

commit f4e3aedf33
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Tue Mar 14 15:45:06 2023 +0000

    tasker: add support for reporting panics

commit b8ebf88f36
Author: Mohammed Sohail <sohailsameja@gmail.com>
Date:   Tue Mar 14 15:40:50 2023 +0000

    pkg: bump go-redis -> v9

commit 4a0bf88322
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Mar 14 18:15:05 2023 +0300

    build(deps): bump github.com/jackc/tern/v2 from 2.0.0 to 2.0.1 (#69)

    Bumps [github.com/jackc/tern/v2](https://github.com/jackc/tern) from 2.0.0 to 2.0.1.
    - [Release notes](https://github.com/jackc/tern/releases)
    - [Changelog](https://github.com/jackc/tern/blob/master/.goreleaser.yaml)
    - [Commits](https://github.com/jackc/tern/compare/v2.0.0...v2.0.1)

    ---
    updated-dependencies:
    - dependency-name: github.com/jackc/tern/v2
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...

    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 5328d271c1
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Mar 14 18:14:45 2023 +0300

    build(deps): bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#70)

    Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.6.0 to 0.7.0.
    - [Release notes](https://github.com/golang/crypto/releases)
    - [Commits](https://github.com/golang/crypto/compare/v0.6.0...v0.7.0)

    ---
    updated-dependencies:
    - dependency-name: golang.org/x/crypto
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...

    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 7ce80f9e6d
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Mar 14 18:13:59 2023 +0300

    build(deps): bump github.com/grassrootseconomics/celoutils (#71)

    Bumps [github.com/grassrootseconomics/celoutils](https://github.com/grassrootseconomics/celoutils) from 1.0.0 to 1.1.1.
    - [Release notes](https://github.com/grassrootseconomics/celoutils/releases)
    - [Commits](https://github.com/grassrootseconomics/celoutils/compare/v1.0.0...v1.1.1)

    ---
    updated-dependencies:
    - dependency-name: github.com/grassrootseconomics/celoutils
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...

    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 12:03:51 +00:00
Mohamed Sohail ea53214e2b
fix: docker default host bind 2023-03-09 08:25:11 +00:00
Mohamed Sohail ee07e61457
fix: README title 2023-03-08 15:01:13 +00:00
Mohamed Sohail fe9d217b60
docs: add README, add Makefile
dev: add Makefile

docs: add README

fix: Makefile
2023-03-08 14:58:18 +00:00
Mohamed Sohail bbd4b57fa8
pkg: fix missing deps 2023-03-08 12:09:34 +00:00
Mohamed Sohail b1572cfba7
chore: cleanup repo 2023-03-08 10:13:11 +00:00
Mohamed Sohail 0fd35f9668
build: update ci build stages 2023-03-08 10:02:56 +00:00
Mohamed Sohail 5a94a38805
fix: deepsource suggestions 2023-03-08 06:59:10 +00:00
Mohamed Sohail 0ef18b4e3e
fix: ununsed logg param 2023-03-08 06:51:48 +00:00
Mohamed Sohail 341a760f02
feat: (wip) add account activation and gas quota lock
* This is a crude lock that restricts each account to the set gas quota.
2023-03-08 06:49:09 +00:00
Mohamed Sohail ec14328d49
hotfix: gift gas correct enum for otx type 2023-03-06 10:06:49 +00:00
Mohamed Sohail 70419a9b19
refactor: (breaking) decouple js pub/sub, improve tasker server 2023-03-06 08:18:41 +00:00
Mohamed Sohail a47e44f262
refactor: use sigChan for shutdown, ctx fixes
* refactor main entry point for starting services
* minor fixes around ctx propagation
* improve otx marker js subscriber
2023-03-02 15:46:02 +00:00
Mohamed Sohail a1b6cb08d8
add: wip jetstream durable consumer 2023-03-02 09:12:39 +00:00
Mohamed Sohail 1ddff06502
feat (wip): add in-built chain subscription
* BREAKING: remove events interface -> use jetstream struct
* in-built chain subscription to update otx status
* potential fix for tasks: defer rollback nonce error detection
2023-03-01 17:13:23 +00:00
dependabot[bot] 885163e48a
build(deps): bump github.com/nats-io/nats.go from 1.23.0 to 1.24.0 (#60)
Bumps [github.com/nats-io/nats.go](https://github.com/nats-io/nats.go) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/nats-io/nats.go/releases)
- [Commits](https://github.com/nats-io/nats.go/compare/v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: github.com/nats-io/nats.go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-01 15:37:33 +03:00
dependabot[bot] d9806ca02c
build(deps): bump github.com/jackc/pgx/v5 from 5.3.0 to 5.3.1 (#61)
Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.3.0 to 5.3.1.
- [Release notes](https://github.com/jackc/pgx/releases)
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.3.0...v5.3.1)

---
updated-dependencies:
- dependency-name: github.com/jackc/pgx/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-01 15:37:22 +03:00
dependabot[bot] 4dac0e8413
build(deps): bump github.com/labstack/echo/v4 from 4.10.1 to 4.10.2 (#59)
Bumps [github.com/labstack/echo/v4](https://github.com/labstack/echo) from 4.10.1 to 4.10.2.
- [Release notes](https://github.com/labstack/echo/releases)
- [Changelog](https://github.com/labstack/echo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/labstack/echo/compare/v4.10.1...v4.10.2)

---
updated-dependencies:
- dependency-name: github.com/labstack/echo/v4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-01 15:14:27 +03:00
Mohamed Sohail 4dfc1725cb
feat: add in-built db migrator
- fix docker builds
- fix binary builds
2023-03-01 11:19:57 +00:00
Mohamed Sohail 4372b9dbf1
build: move SQL queries to root folder 2023-02-28 10:37:30 +00:00
Mohamed Sohail 010ba8c2cb
bump: go version -> 1.20.X 2023-02-24 16:48:23 +00:00
Mohamed Sohail add7f2a442
refactor: ctx propagation, api handlers
* use context timeout middleware for correct ctx propagation
* Fix bind error handling
* Fix validation error handling
* Fix HTTP error handling (4XX)
* tasker client now  accepts ctx
* add recovery and body size middleware
2023-02-24 16:46:46 +00:00
Mohamed Sohail ce6bdbf4ed
build: fix queries path 2023-02-22 12:12:32 +00:00
Mohamed Sohail b5b2f89ad3
patc: broken CI builds 2023-02-21 17:51:05 +00:00
Mohamed Sohail 40cb86f522
feat: add otx tracking API, add enums, minor fixes
* otx can nw be tracked at /api/track/:trackingId
* moved queries to queries folder
* fixed validation error check in ErrorHandler
* added enum package with enum types
* updated migrations: added enum tables
2023-02-21 17:35:41 +00:00
dependabot[bot] 140c887341
build(deps): bump github.com/labstack/echo/v4 from 4.10.0 to 4.10.1 (#54)
Bumps [github.com/labstack/echo/v4](https://github.com/labstack/echo) from 4.10.0 to 4.10.1.
- [Release notes](https://github.com/labstack/echo/releases)
- [Changelog](https://github.com/labstack/echo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/labstack/echo/compare/v4.10.0...v4.10.1)

---
updated-dependencies:
- dependency-name: github.com/labstack/echo/v4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-20 18:56:55 +03:00
Mohamed Sohail 3d9c4390a7
fix: CI builds 2023-02-20 10:26:21 +00:00