Reference
Most users can rely on the default pipeline behavior, but SpectralBridge does expose a small set of runtime controls for execution engine, restart-safe extraction, merge tuning, and Ray diagnostics.
Most configuration is surfaced through spectralbridge-pipeline flags rather than through large external config files.
The pipeline validates outputs and skips good artifacts by default, so reruns are part of the intended workflow.
The default engine is Ray, but thread and process execution remain available for constrained or debugging environments.
Control surface
- CLI arguments and Python function parameters
- A small set of environment variables used mainly for Ray behavior
- Package defaults in the pipeline and merge helpers
There is not currently a project-wide YAML or TOML runtime configuration file for the main processing workflow.
Core runtime options
Root location for downloaded HDF5 inputs, ENVI products, parquet outputs, merged tables, and QA artefacts.
Execution backend: ray, thread, or process. Ray remains the default in the NEON CLI path.
Upper bound for concurrent work. Higher values can improve throughput but also increase memory pressure.
Controls chunk size for ENVI-to-parquet extraction and is one of the safest tuning knobs when memory is limited.
Tunes the DuckDB merge stage when parquet joins become memory-heavy.
Lets the merge stage spill to a specific scratch location instead of relying on the default temp directory.
Environment variables
The current codebase uses a relatively small set of environment variables directly:
| Variable | Purpose |
|---|---|
CSC_RAY_NUM_CPUS | Override Ray helper CPU selection when you want a different cap than --max-workers. |
CSC_RAY_DEBUG | Enable extra Ray diagnostics for troubleshooting initialization and dispatch behavior. |
RAY_DISABLE_DASHBOARD | Can override the default suppression of the Ray dashboard if you intentionally want Ray’s dashboard behavior changed. |
Older documentation sometimes referenced CSCAL_TMPDIR, CSCAL_LOGLEVEL, or CSCAL_RAY_ADDRESS. Those are not current first-class runtime controls in the present package code.
Sensor and workflow configuration
Canonical sensor products are defined through path helpers and data tables, including Landsat TM, ETM+, OLI, OLI-2, and the current MicaSense-related products.
Band centers, FWHM values, and brightness coefficient tables live under src/spectralbridge/data/ and are part of the package contract.
If you change sensor support or brightness tables, update the code, tests, and naming/output documentation together.
Operational guidance
- Prefer lowering
--max-workersbefore assuming a scientific stage is broken. - Lower
--parquet-chunk-sizeif parquet extraction or polygon workflows are memory-bound. - Point
--merge-temp-directoryat a fast local scratch disk for large merges. - Use
threadfor reproducible first-pass debugging andrayfor larger production runs.
Where to go next