Ankur Malik d94d65ed2d
All checks were successful
Build and Push Docker Image / test (push) Successful in 1m50s
Build and Push Docker Image / build_and_push (push) Successful in 3m7s
Add pd v3 pre processing block
2025-12-04 10:50:08 -05:00

1.2 KiB

PD V3 Pre-Processing

  • Inputs: Raw Prod/Live feature values for all PD v3 models.
  • Outputs: Three treated feature dictionaries (model_a_features, model_b_features, model_t_features).
  • Artifacts: Driver CSVs stored under drivers/.
  • Tests: python -m unittest sequence-3.pd_v3_pre_processing.test_block.
  • Signature: __main__ keeps an explicit typed parameter list covering every raw feature (int/float/str) and builds the record from those args before treatment; keep it aligned with request_schema.json.

Schema notes

  • request_schema.json now enumerates every raw Prod/Live variable as a top-level property (no record wrapper) so the contract mirrors driver/request_schema_sample.json.
  • response_schema.json reflects the array-based payload returned by block.__main__ (model_*_features are ordered lists of { "name": feature, "value": treated_value } objects with feature name enums to enforce the allowlists).
  • Both schemas are frozen and describe the flat/array-of-dict structures shown above; do not introduce dict-of-dicts or object-of-dicts in these files even if a future change reorients the Python implementation.