Wave 5.2B MMT Feature Generator

Wave 5.2B MMT feature-generator skeleton.

This module exposes a leakage-aware feature schema and a dry-run sample payload derived from the existing Wave 5.2A MMT diagnostic curve. It is not a training entry point and must remain campaign-disabled until a later approved campaign package selects consumers, losses, and surfaces.

class scripts.features.wave4b_mmt_feature_generator.Wave4BFeatureSpecification(feature_name, feature_group, feature_kind, usage_policy, leakage_risk, source_boundary, notes)[source]

Bases: object

Metadata for one candidate Wave 5.2B feature or label field.

Parameters:
  • feature_name (str)

  • feature_group (str)

  • feature_kind (str)

  • usage_policy (str)

  • leakage_risk (str)

  • source_boundary (str)

  • notes (str)

feature_name: str
feature_group: str
feature_kind: str
usage_policy: str
leakage_risk: str
source_boundary: str
notes: str
class scripts.features.wave4b_mmt_feature_generator.Wave4BFeaturePayload(schema_row_list, sample_row_list, harmonic_row_list, status_dictionary)[source]

Bases: object

Dry-run feature output bundle.

Parameters:
  • schema_row_list (list[dict[str, str]])

  • sample_row_list (list[dict[str, Any]])

  • harmonic_row_list (list[dict[str, Any]])

  • status_dictionary (dict[str, Any])

schema_row_list: list[dict[str, str]]
sample_row_list: list[dict[str, Any]]
harmonic_row_list: list[dict[str, Any]]
status_dictionary: dict[str, Any]
scripts.features.wave4b_mmt_feature_generator.format_float(value)[source]

Format one float for stable CSV output.

Parameters:

value (float)

Return type:

str

scripts.features.wave4b_mmt_feature_generator.build_feature_schema()[source]

Build the conservative Wave 5.2B feature schema.

Return type:

list[Wave4BFeatureSpecification]

scripts.features.wave4b_mmt_feature_generator.compute_harmonic_summary(rte_arcsec, harmonic_index_list)[source]

Compute selected harmonic amplitudes and phases for one MMT curve.

Parameters:
  • rte_arcsec (ndarray)

  • harmonic_index_list (list[int])

Return type:

list[dict[str, Any]]

scripts.features.wave4b_mmt_feature_generator.build_sample_rows(angle_rad, rte_rad)[source]

Build point-wise dry-run feature rows from the MMT demonstration curve.

Parameters:
  • angle_rad (ndarray)

  • rte_rad (ndarray)

Return type:

list[dict[str, Any]]

scripts.features.wave4b_mmt_feature_generator.generate_wave4b_feature_payload(sample_count=720, harmonic_index_list=None)[source]

Generate the Wave 5.2B dry-run schema and sample feature payload.

Parameters:
  • sample_count (int)

  • harmonic_index_list (list[int] | None)

Return type:

Wave4BFeaturePayload

scripts.features.wave4b_mmt_feature_generator.write_csv(output_path, row_list)[source]

Write dictionaries to CSV.

Parameters:
  • output_path (Path)

  • row_list (list[dict[str, Any]])

Return type:

None