Version main

scheduler-api

source: crates/edgerun-scheduler/src/main.rs @ HEAD

Source ref: HEAD

Routes

Method Path Handler Related Types
GET /bundle/{bundle_hash}
String
GET /health
GET /v1/attestation/policy/get
GET /v1/job/{job_id}
GET /v1/policy/audit
GET /v1/policy/info
PolicyInfoResponse
GET /v1/route/owner/{owner_pubkey}
GET /v1/route/resolve/{device_id}
GET /v1/route/resolve/{device_id}
GET /v1/trust/policy/get
GET /v1/webrtc/ws
GET /v1/worker/assignments
AssignmentsQueryAssignmentsResponse
POST /v1/attestation/policy/set
POST /v1/job/create
POST /v1/route/challenge
POST /v1/route/challenge
POST /v1/route/heartbeat
POST /v1/route/register
POST /v1/route/register
POST /v1/session/create
SessionCreateRequestSessionCreateResponse
POST /v1/session/invalidate
POST /v1/session/rotate
POST /v1/trust/policy/set
POST /v1/worker/failure
WorkerFailureReportserde_jsonValue
POST /v1/worker/heartbeat
HeartbeatRequestHeartbeatResponse
POST /v1/worker/replay
WorkerReplayArtifactReportserde_jsonValue
POST /v1/worker/result
WorkerResultReportserde_jsonValue

Handlers

attestation_policy_get

source:L1332

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap

Returns

Result<Json<AttestationPolicyResponse>, (StatusCode, String)>

No inline doc comment found.

attestation_policy_set

source:L1345

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap
  • body: Bytes

Returns

Result<Json<AttestationPolicyResponse>, (StatusCode, String)>

No inline doc comment found.

attestation_policy_set_and_get_with_signed_session_headers

source:L6053

Arguments

  • No arguments

Returns

()

No inline doc comment found.

get_bundle

source:L1987

Arguments

  • State(state): State<AppState>
  • Path(bundle_hash): Path<String>

Returns

Result<impl IntoResponse, (StatusCode, String)>

No inline doc comment found.

get_bundle_rejects_hash_mismatch_for_tampered_bytes

source:L4794

Arguments

  • No arguments

Returns

()

No inline doc comment found.

get_job_status

source:L1959

Arguments

  • State(state): State<AppState>
  • Path(job_id): Path<String>

Returns

Json<JobStatusResponse>

No inline doc comment found.

handle_signal_client_message

source:L965

Arguments

  • state: &AppState
  • from_device_id: &str
  • text: &str

Returns

Result<(), ()>

No inline doc comment found.

health

source:L624

Arguments

  • No arguments

Returns

Json<HealthResponse>

No inline doc comment found.

housekeeping_loop

source:L3987

Arguments

  • state: AppState

Returns

()

No inline doc comment found.

job_create

source:L1652

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<JobCreateRequest>

Returns

Result<Json<JobCreateResponse>, (StatusCode, String)>

No inline doc comment found.

Arguments

  • No arguments

Returns

Result<()>

No inline doc comment found.

policy_audit_list

source:L1264

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap
  • Query(query): Query<PolicyAuditQuery>

Returns

Result<Json<PolicyAuditListResponse>, (StatusCode, String)>

No inline doc comment found.

policy_info

source:L1243

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap

Returns

Result<Json<PolicyInfoResponse>, (StatusCode, String)>

No inline doc comment found.

route_challenge

source:L676

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<RouteChallengeRequest>

Returns

Result<Json<RouteChallengeResponse>, (StatusCode, String)>

No inline doc comment found.

route_heartbeat

source:L807

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<RouteHeartbeatRequest>

Returns

Result<Json<RouteHeartbeatResponse>, (StatusCode, String)>

No inline doc comment found.

route_owner_resolve

source:L868

Arguments

  • State(state): State<AppState>
  • Path(owner_pubkey): Path<String>

Returns

Json<OwnerRoutesResponse>

No inline doc comment found.

route_register

source:L699

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<RouteRegisterRequest>

Returns

Result<Json<RouteRegisterResponse>, (StatusCode, String)>

No inline doc comment found.

route_registration_flow_challenge_register_resolve_owner_heartbeat

source:L6209

Arguments

  • No arguments

Returns

()

No inline doc comment found.

route_registration_shared_state_works_across_scheduler_instances

source:L6294

Arguments

  • No arguments

Returns

()

No inline doc comment found.

route_resolution_enables_real_service_to_service_connectivity

source:L6405

Arguments

  • No arguments

Returns

()

No inline doc comment found.

route_resolve

source:L850

Arguments

  • State(state): State<AppState>
  • Path(device_id): Path<String>

Returns

Json<RouteResolveResponse>

No inline doc comment found.

session_create

source:L1112

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap
  • Json(payload): Json<SessionCreateRequest>

Returns

Result<Json<SessionCreateResponse>, (StatusCode, String)>

No inline doc comment found.

session_create_requires_bootstrap_token_when_configured

source:L5902

Arguments

  • No arguments

Returns

()

No inline doc comment found.

session_invalidate

source:L1195

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap
  • Json(payload): Json<SessionInvalidateRequest>

Returns

Result<Json<SessionInvalidateResponse>, (StatusCode, String)>

No inline doc comment found.

session_invalidate_revokes_token

source:L6003

Arguments

  • No arguments

Returns

()

No inline doc comment found.

session_rotate

source:L1147

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap
  • Json(payload): Json<SessionRotateRequest>

Returns

Result<Json<SessionRotateResponse>, (StatusCode, String)>

No inline doc comment found.

session_rotate_replaces_and_revokes_old_token

source:L5937

Arguments

  • No arguments

Returns

()

No inline doc comment found.

strict_trust_policy_requires_client_signature

source:L5713

Arguments

  • No arguments

Returns

()

No inline doc comment found.

trust_policy_endpoints_reject_replayed_nonce

source:L5819

Arguments

  • No arguments

Returns

()

No inline doc comment found.

trust_policy_endpoints_require_valid_session

source:L5744

Arguments

  • No arguments

Returns

()

No inline doc comment found.

trust_policy_get

source:L1279

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap

Returns

Result<Json<TrustPolicyResponse>, (StatusCode, String)>

No inline doc comment found.

trust_policy_set

source:L1288

Arguments

  • State(state): State<AppState>
  • headers: HeaderMap
  • body: Bytes

Returns

Result<Json<TrustPolicyResponse>, (StatusCode, String)>

No inline doc comment found.

trust_policy_set_and_get_with_signed_session_headers

source:L5755

Arguments

  • No arguments

Returns

()

No inline doc comment found.

trust_policy_set_rejects_tampered_body_with_same_signature

source:L5861

Arguments

  • No arguments

Returns

()

No inline doc comment found.

webrtc_signal_socket

source:L898

Arguments

  • state: AppState
  • device_id: String
  • mut socket: WebSocket

Returns

()

No inline doc comment found.

webrtc_signal_ws

source:L890

Arguments

  • ws: WebSocketUpgrade
  • State(state): State<AppState>
  • Query(query): Query<WebRtcSignalConnectQuery>

Returns

impl IntoResponse

No inline doc comment found.

worker_assignments

source:L1462

Arguments

  • State(state): State<AppState>
  • Query(query): Query<AssignmentsQuery>

Returns

Result<Json<AssignmentsResponse>, (StatusCode, String)>

No inline doc comment found.

worker_failure

source:L1544

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<WorkerFailureReport>

Returns

Result<Json<serde_json::Value>, (StatusCode, String)>

No inline doc comment found.

worker_heartbeat

source:L1406

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<HeartbeatRequest>

Returns

Result<Json<HeartbeatResponse>, (StatusCode, String)>

No inline doc comment found.

worker_replay_artifact

source:L1594

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<WorkerReplayArtifactReport>

Returns

Result<Json<serde_json::Value>, (StatusCode, String)>

No inline doc comment found.

worker_result

source:L1477

Arguments

  • State(state): State<AppState>
  • Json(payload): Json<WorkerResultReport>

Returns

Result<Json<serde_json::Value>, (StatusCode, String)>

No inline doc comment found.

Types

AppState

struct source:L54

No inline doc comment found.

AssignmentsQuery

struct source:L195

No inline doc comment found.

AttestationPolicyResponse

struct source:L258

No inline doc comment found.

AttestationPolicySetRequest

struct source:L250

No inline doc comment found.

ChainContext

struct source:L109

No inline doc comment found.

DeviceRouteEntry

struct source:L305

No inline doc comment found.

HealthResponse

struct source:L200

No inline doc comment found.

JobCreateRequest

struct source:L271

No inline doc comment found.

JobCreateResponse

struct source:L285

No inline doc comment found.

JobQuorumState

struct source:L129

No inline doc comment found.

JobStatusResponse

struct source:L296

No inline doc comment found.

OnchainJobResultView

struct source:L3060

No inline doc comment found.

OnchainJobView

struct source:L3045

No inline doc comment found.

OwnerRoutesResponse

struct source:L377

No inline doc comment found.

PersistedPolicySessionState

struct source:L263

No inline doc comment found.

PersistedRouteState

struct source:L390

No inline doc comment found.

PersistedState

struct source:L184

No inline doc comment found.

PolicyAuditListResponse

struct source:L235

No inline doc comment found.

PolicyAuditQuery

struct source:L230

No inline doc comment found.

PostJobArgs

struct source:L439

No inline doc comment found.

RetentionConfig

struct source:L102

No inline doc comment found.

RouteChallengeHttpResponse

struct source:L6390

No inline doc comment found.

RouteChallengeRequest

struct source:L344

No inline doc comment found.

RouteChallengeResponse

struct source:L349

No inline doc comment found.

RouteHeartbeatRequest

struct source:L355

No inline doc comment found.

RouteHeartbeatResponse

struct source:L363

No inline doc comment found.

RouteHeartbeatToken

struct source:L384

No inline doc comment found.

RouteRegisterRequest

struct source:L320

No inline doc comment found.

RouteRegisterResponse

struct source:L336

No inline doc comment found.

RouteResolveHttpEntry

struct source:L6401

No inline doc comment found.

RouteResolveHttpResponse

struct source:L6395

No inline doc comment found.

RouteResolveResponse

struct source:L370

No inline doc comment found.

SessionInvalidateRequest

struct source:L219

No inline doc comment found.

SessionInvalidateResponse

struct source:L225

No inline doc comment found.

SessionRotateRequest

struct source:L206

No inline doc comment found.

SessionRotateResponse

struct source:L212

No inline doc comment found.

SlashWorkerArtifact

struct source:L175

No inline doc comment found.

TrustPolicyResponse

struct source:L245

No inline doc comment found.

TrustPolicySetRequest

struct source:L240

No inline doc comment found.

WebRtcSignalClientMessage

struct source:L405

No inline doc comment found.

WebRtcSignalConnectQuery

struct source:L400

No inline doc comment found.

WebRtcSignalServerMessage

struct source:L424

No inline doc comment found.

WorkerRegistryEntry

struct source:L117

No inline doc comment found.