Configuration Overview and Orchestrator
This section is the definitive reference for configuring PyCaber and its central control plane orchestrator. Every parameter documented across this reference corresponds directly to a registered ConfigEntry in config/CONFIG_SCHEMA.json and is enforced by config/CONFIG_SCHEMA.json in caber-standards.
The configuration documentation is organized into four focused pages:
- Configuration Overview and Orchestrator (this page): Five tier runtime resolution, the
pycabertwo plane trust model, canonical operation hashing (operation-hash-v1andoperation-hash-v2), cryptographic approval grants (ApprovalGrantandGrantAuthority), revision store Compare And Swap (CAS) with theaudit-canon-v1tamper evident audit chain, six layer effective config provenance (ProvenanceLayerandRedactedValue), Operation Class RBAC with Separation of Duties (SoD),ConfigSourceverification modes (LocalFile,RemotePlain,RemoteSigned), and compile time build feature gates. - Core Engine and Dependencies:
AWS,GLOBAL(includingGLOBAL.sdk.*identity and instance registry parameters andGLOBAL.txnTokenConfig),Dependencies,WhitespaceRemapOnLeader,rbix,RKCQF, andObject_Sourcesendpoint vs URL scheme preservation. - Services, SDKs, Ingest, and Policies:
csi_genai_lib,DocParser(includingDocParser.formatRouterandDocParser.nerEngine),ENV_Manager,Dashboard,S3_Scanner,API_Tap,ApiMap,Process_API,Link_Data(includingLink_Data.separateClusterGroups),Auth_Analyzer,SQL_Scanner,Kafka_Scanner,Compliance_Policies,Identity_Sources, andObject_Sources. - Environment Variables and Governance: Three bucket environment variable governance (
config-selection,credential-source,bootstrap), the mechanicalConfigEntry.derived_env_var()rule (CSI_<SECTION_UPPER_SNAKE>_<KEY_UPPER_SNAKE>), the 7 kept legacy exceptions, and the completeEnvironment_Variablescatalog.
Five Tier Configuration Precedence
Raw Nested JSON Case Preservation
When loading JSON configuration files (2026-08-20 parser invariant), sys_config normalizes top level section names and second level parameter keys for case insensitive registry lookup, while strictly preserving the exact casing of nested maps and object keys under raw_json (for example DocParser.formatRouter.routes, Dependencies.<service>.dbTables, Compliance_Policies, and Identity_Sources). Downstream consumers that inspect arbitrary user defined keys read the case preserved subtree directly from raw_json.
ConfigSource Verification Modes
At startup and during hot reload cycles, pycaber loads the active configuration snapshot through one of three ConfigSource variants:
LocalFile: Reads a local JSON file from disk (selected viaCSI_CONFIG_PATHor fallbackconfig.json). Intended for local development, standalone CLI execution, and container deployments with volume mounted configs.RemotePlain: Fetches the JSON snapshot over HTTP/HTTPS from a control plane endpoint without signature verification. Permitted only in isolated development or test harnesses.RemoteSigned: Fetches a signed configuration envelope fromsys_config_controland verifies its Ed25519 signature against the public key configured inCSI_CONFIG_SIGNING_PUBKEYbefore parsing or applying any setting. If signature verification fails or the revision number regresses below the last applied revision (rollback protection),sys_configrejects the payload and retains the current in memory configuration.
Local Prefix Resolution (get_global_output_directory)
When PyCaber runs in local filesystem storage mode (GLOBAL["localStorage"] = true) or writes intermediate staging artifacts, get_global_output_directory() computes the canonical base directory by joining:
GLOBAL["localPrefix"](default"/var/tmp/"), andDependencies.shared-storage.bucket(falling back toGLOBAL.csiBucket, default"caber-data").
For example, with default settings (GLOBAL["localPrefix"] = "/var/tmp/" and Dependencies.shared-storage.bucket = "caber-data"), local object keys resolve under /var/tmp/caber-data/.