Skip to content

FOCUS 1.4 phase 4: add FOCUS 1.4-preview ingestion #2131

@flanakin

Description

@flanakin

Parent: #2120
Depends on: #2129 (phase 3)

Goal

Add FOCUS 1.4 ingestion support as a preview schema. FOCUS 1.4 is still in working_draft (last commit 2026-01-09) and may churn before ratification. Hub schema version: `v1_4`.

Scope

`IngestionSetup_v1_4.kql` (new)

  • Copy `IngestionSetup_v1_3.kql` as the starting point.
  • Rename `_v1_3` -> `_v1_4`, `FOCUS 1.3` -> `FOCUS 1.4-preview`.
  • Remove `ProviderName` and `PublisherName` columns from `Costs_final_v1_4` (removed in 1.4 per spec).
  • Update `Costs_transform_v1_4` projection to drop those columns.
  • Expand `ContractCommitment_final_v1_4` with FOCUS 1.4 column additions:
    • `BenefitCategory` (string)
    • `ContractCommitmentApplicability` (dynamic / JSON)
    • `Created` (datetime)
    • `DiscountPercentage` (real)
    • `DurationType` (string)
    • `FulfillmentInterval` (string)
    • `LastUpdated` (datetime)
    • `LifecycleStatus` (string)
    • `Model` (string)
    • `OfferCategory` (string)
    • `PaymentInterval` (string)
    • `PaymentModel` (string)
    • `PaymentUpfrontPercentage` (real)
    • `PricingCurrencyContractCommitmentCost` (real)
  • Add corresponding raw columns to `ContractCommitment_raw` in `IngestionSetup_RawTables.kql`.
  • Wire `v1_4` into `app.bicep` and `.build.config`.

Out of scope

  • `HubSetup_v1_4.kql` -> phase 5
  • New Invoice dataset (mentioned in 1.4 working_draft) -> deferred until spec stabilizes

Branch

`flanakin/focus14-phase4-ingestion-1.4` off `flanakin/focus14-phase3-contractcommitment`. PR target: phase 3 branch.

Done when

  • New file deploys cleanly.
  • Pester tests pass.
  • Bicep compiles.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions