GithubHelp home page GithubHelp logo

agent-sdk's People

Contributors

abdulbois avatar aholovko avatar baha-ai avatar birtony avatar fqutishat avatar heidihan0000 avatar moopli avatar rolsonquadras avatar sandrask avatar skflorin avatar soluchok avatar sudeshrshetty avatar talwinder50 avatar troyronda avatar victro avatar vkubiv avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

agent-sdk's Issues

agent-rest MySQL support

MySQL support used to be there but was removed during the transition to the new Aries storage interface since a new implementation of MySQL wasn't available yet.

zcapld.Service: capability invocation actions should be set by the caller

func (s *Service) SignHeader(req *http.Request, capabilityBytes []byte) (*http.Header, error) {

SignHeader() should accept the capability invocation's action as a parameter because only the caller can reliably set the appropriate action based on a shared understanding with the remote service. This is more evident with the implementation of zcapld authz in hub-kms where the allowedActions cannot be derived solely from the http request's method.

Release Notes v0.1.5

This release adds the following features to the Agent SDK.

  • Mobile bindings
    • iOS
      • REST SDK - communicates with the Agent by provided URL
      • SDK - allows building local agent (serverless)
    • Android
      • REST SDK - communicates with the Agent by provided URL
      • SDK - allows building local agent (serverless)
  • JS (npm) bindings
    • REST SDK - communicates with the Agent by provided URL
    • SDK - allows building local agent (serverless)
  • REST binding (docker image) - allows running an agent as a server. Can be used by JS/Mobile REST SDK.

wallet JS SDK: APIs

  • universal wallet
  • DID comm
    • connect
    • messaging
    • mediator
    • blinded routing
    • waci #248
  • DID manger #218
  • Device registration
  • Credential Queries #224
  • Credential interactions (save, get, get all, remove, issue, verify, derive, present) #223
  • Credential Manger (preview, QR Code, share, delete etc)
  • User on-boarding
  • wallet profile manager #220
  • CHAPI wrapper
  • WACI wrapper
  • Documentation

TODO:

  • Vaults
  • credential manifest exchange with issuer (for UI skin)
  • activity log
  • import/export

Swagger spec is invalid

When running make run-openapi-demo I get the following error:

Generating Aries-Framework-Go Test PKI
Signature ok
subject=/C=CA/ST=ON/O=Example Inc.:Aries-Framework-Go/OU=Aries-Framework-Go/CN=*.example.com
Getting CA Private Key
done generating Agent SDK PKI
Generating and validating controller API specifications using Open API
Generating Open API spec
Validating generated spec
2021/05/04 08:12:35
The swagger spec at "build/rest/openapi/spec/openAPI.yml" showed up some valid but possibly unwanted constructs.
2021/05/04 08:12:35 See warnings below:
2021/05/04 08:12:35 - WARNING: definition "#/definitions/genericErrorBody" is not used anywhere
2021/05/04 08:12:35 - WARNING: definition "#/definitions/DIDArgs" is not used anywhere

The swagger spec at "build/rest/openapi/spec/openAPI.yml" is invalid against swagger specification 2.0.
See errors below:

  • path param "resource" is not present in path "/.well-known/webfinger"

make: *** [Makefile:91: generate-openapi-spec] Error 1

WASM commands may fail during WriteNillableResponse, but afterwards it always logs a success message

At the end of our WASM command functions, we call command.WriteNillableResponse before writing a success log message.

For instance, in pkg/controller/command/blindedrouting/command.go there's a function called SendDIDDocRequest. Near the end of the function is the following:

command.WriteNillableResponse(rw, &DIDDocResponse{resMsg}, logger)

logutil.LogDebug(logger, CommandName, SendDIDDocRequest, successString)

The problem here is that command.WriteNillableResponse can have a failure, which gets logged inside that function. But the caller won't know that happened, and a success message gets logged regardless. In the event of an error, we shouldn't be logging a success message.

Enable whyNoLint

Currently, gocritic disables whyNoLint check. We need to enable it. See golangci.yml.

agent-rest LevelDB support

LevelDB support used to be there but was removed during the transition to the new Aries storage interface since a new implementation of LevelDB wasn't available yet.

Move edge-agent logic to agent-sdk

Idea is to create simplified APIs that can be used by sdk, browser(js/wasm binding), mobile native(gomobile), rest bindings for the business logic present in edge-agent (currently, it's written in Javascript). Instead of repeating these in individual bindings, we need to move the JS code to Golang code and expose them through different bindings.

The list includes

  • wallet login (create DID, register with mediator)
  • DIDComm/AuthZ logic with issuer/rp
  • etc

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.