jd_server_sv2 0.1.1

Sv2 Job Declaration Server
Documentation

Job Declarator

This is the main orchestrator of the Job Declaration process.

It leverages a impl JobValidationEngine and a TokenManager to make sure that declared Custom Jobs are managed correctly.

Job Validation Engine

The goal of the JobValidationEngine trait is to allow for Custom Job validation and solution propagation to be done over a modular interface that is agnostic to:

  • Bitcoin node implementation
  • Communication method with Bitcoin node implementation

The initial implementation is based on Bitcoin Core over IPC, but other approaches should be doable by implementing the JobValidationEngine trait.

Please note that token management is not covered here. More specifically, it is the JobDeclarator responsability to leverage a TokenManager to manage the tokens to be added to:

  • AllocateMiningJobToken.Success.mining_job_token
  • DeclareMiningJob.Success.new_mining_job_token

Similarly, validation of:

  • DeclareMiningJob.mining_job_token against AllocateMiningJobToken.Success.mining_job_token
  • SetCustomMiningJob.mining_job_token against DeclareMiningJob.Success.new_mining_job_token

are also JobDeclarator responsability via TokenManager.

Token Management

todo