# Documentation TODO: case-study coverage The feature-coverage matrix in the rendered user guide (`doc/source/user/casestudies.rst`, section *Feature coverage matrix*) lists user-guide features that are not exercised by the tutorial or any of the eight existing case studies. This file tracks the remaining gaps. ## Out of scope The following features are documented elsewhere and do not need case-study real estate: - `provsql.active`, `provsql.verbose_level`: covered by `user/configuration.rst` and `dev/debugging.rst`. - `get_infos`, `get_extra`, `get_prob`: covered by the SQL API reference. ## Plan ### CS4: Government Ministers - Add a step that calls `get_valid_time` directly on a single row. Currently only the higher-level `union_tstzintervals`, `timeslice`, `timetravel`, and `history` are exercised. - Demonstrate `UPDATE` explicitly: replace the DELETE + INSERT pair that retires and re-adds a `holds` row with an `UPDATE holds SET ...`. UPDATE is documented but not shown in any case study. (The `undo` round-trip is already shown in the rebuilt CS4.) ### Future case study (UDFs / aggregate joins / `choose`) A new case study (CS9) to be written. Targets: - **UDFs**: provenance propagation through user-defined functions (blocked: not yet supported). - **Joining on an aggregate value**: each row joined with the per-group aggregate it belongs to, provenance correctly tracked through the aggregate (blocked: not yet supported). - **`choose` for UDF uncertainty**: when a UDF returns one of several candidate outputs, `choose` models the alternatives as mutually exclusive in the provenance circuit (analogous to `repair_key`'s role in CS5, but for derived rather than ingested data). The `choose` aggregate exists; only the case study is missing. ## Priorities 1. **CS4 extensions** : the direct `get_valid_time` call and the `UPDATE`-for-DELETE+INSERT swap close the remaining temporal / data-modification coverage gaps in the feature-coverage matrix. 2. **New UDF / aggregate-join case study** : still blocked on the upstream features (UDF provenance, aggregate joins) landing in ProvSQL; revisit when those ship.