Developers

Configuration

Two layers: environment variables for the deployment, and a versioned system configuration for everything that can change an assessment.

Environment variables#

VariableDefaultPurpose
AARCV_DATAdata/appData directory: database, products, keys and audit log
AARCV_USERSdemo usersname:password:role,..., used alongside accounts managed in the app
AARCV_AUTHonoff turns off sign-in so every visitor is an admin. Demo use only
AARCV_CONFIGnoneJSON system configuration; recorded as a new configuration version when it differs from the active one
AARCV_RETAIN_RAWpurge1 keeps uploaded raw video after processing
AARCV_SEED_OPS10 skips the notional demo squadron, fleet and monitoring history
AARCV_EVAL_SYNTHETIC, AARCV_EVAL_RUNSnext to the data directoryValidation set used by model evaluation gates
AARCV_CUSTODY_KEYdata/keys/custody_ed25519.pemPath of the custody signing key
AARCV_TLSunsetDeclares how TLS is terminated, for the posture check
AARCV_SERVICE, AARCV_UNIT_SYSTEMUSAF, derivedIdentity written into proficiency records
AARCV_LRS_PASSWORDunsetPassword for pushing xAPI statements to an LRS
AARCV_WHISPER_MODELunsetLocal speech model for radio transcription; transcription is off without it
AARCV_SANITIZER_DATA, AARCV_SANITIZER_USERS, AARCV_SANITIZER_MAX_MB—, —, 2048Standalone video sanitizer service: data directory, users and upload limit

System configuration#

A JSON document (configs/default.json is the shipped default) with sections for the camera, the refueling envelope, the scoring rubric, security and processing. Every change is a new numbered version; one is active at a time and every sortie records the version that processed it.

{
  "rubric": {
    "weights": {"closure": 0.25, "alignment": 0.20, "stability": 0.20, "envelope": 0.25, "procedure": 0.10},
    "closure_good_mps": 0.55, "closure_bad_mps": 1.2,
    "align_good_deg": 1.5,    "align_bad_deg": 8.0,
    "stability_good_m": 0.15, "stability_bad_m": 0.9,
    "precontact_stab_s": 3.0,
    "grade_bands": [[85.0, "Proficient"], [70.0, "Needs refinement"], [0.0, "Debrief required"]]
  },
  "security": { "...": "allow-list, sanitizer controls, banner" },
  "processing": { "analysis_hz": 10.0 }
}

Manage versions on Administration → System or through GET/POST /api/ops/config and POST /api/ops/config/{cid}/activate. Model promotions write configuration versions too, so rolling back a configuration also rolls back the models that were in production with it.

Classification policy#

The security policy (levels, rules, networks, release ceiling, role defaults) is versioned separately by security officers: GET/PUT /api/security/policy and POST /api/security/policy/{vid}/activate. Saving a policy re-marks every product.

Was this page helpful?