Skip to main content

Module models_requests

Module models_requests 

Source
Expand description

Contains helper functions that are passed to headless-lms-models where it needs to make requests to exercise services.

Structs§

DownloadClaim
Authorizes the bearer to read one specific host-stored file for a while.
ExerciseServiceCsvExportColumn
Column definition for exercise service CSV export; callers must use scalar-only cell values.
ExerciseServiceCsvExportRequest
ExerciseServiceCsvExportResponse
Full CSV export response; columns define headers, results align by index. All cell values must be scalar.
ExerciseServiceCsvExportResult
One batch of CSV rows; each row’s values must be scalar (null, bool, number, string). Objects/arrays are rejected by the controller.
GivePeerReviewClaim
GradingUpdateClaim
JwtKey
PlaygroundGradingCallbackClaim
SpecRequest
Accepted by the public-spec and model-solution endpoints of exercise services.
UploadClaim

Constants§

DOWNLOAD_CLAIM_PARAM
Query parameter carrying a DownloadClaim; the claimed-file route repeats it in a rename.
EXERCISE_SERVICE_GRADING_UPDATE_CLAIM_HEADER 🔒
EXERCISE_SERVICE_UPLOAD_CLAIM_HEADER 🔒
PLAYGROUND_GRADING_CALLBACK_CLAIM_PARAM

Functions§

fetch_service_info
fetch_service_info_fast
fetch_service_info_with_timeout 🔒
grading_request_files 🔒
The grading request’s file list for a submission’s answer: its files in answer order, empty for an answer that has none.
make_grading_request_sender
Sends a submission to an exercise service for grading, with the claims the service needs to report back and to read a file-typed answer’s files.
make_seed_spec_fetcher_with_cache
A caching spec fetcher ONLY FOR THE SEED that returns a cached spec if the same (url, exercise_service_slug, private_spec) is requested. Since this is only used during seeding, there is no cache eviction.
make_spec_fetcher
Fetches a public/model spec based on the private spec from the given url. The slug and jwt key are used for an upload claim that allows the service to upload files as part of the spec.
parse_response_json 🔒
Safely parses a response body as JSON, capturing the actual response body in error cases
post_exercise_service_csv_export_request
sign_hs256_claim 🔒
Signs any serializable claim payload as HS256 using the shared JWT secret.
validate_claim 🔒
Decodes a claim, reporting a bad token as a request error rather than a JWT one.
validate_hs256_claim 🔒
Decodes and verifies an HS256 token into the requested claim type.

Type Aliases§

SpecCache 🔒
A type for caching the spec fetching (only for the seed)