Skip to content

an assumption holds or refuses the data, and Calliope's errors: warn checks have no place in a spec #776

Description

@FBumann

Prompt: "Let’s add one parent issue for caliope and file focused issues for individual topics or link existing ones."

Note

The following content was generated by AI.

Calliope has three checks at errors: warn. A mathspec assumption holds, or the data is refused, so the port in #770 leaves these checks out. The recommendation: keep warnings out of the language, and record that in limits.md.

Case, why refuse, what to change

Case. Calliope v0.7.0 base.yaml has the checks flow_in_for_supply_tech, flow_out_for_demand_tech and no_storage_discharge_depth_when_clustering, each at errors: warn. The model still builds when one of them fails.

Why refuse. limits.md makes a check language because "two consumers must not answer differently". A warning does not change which data a consumer accepts, so two consumers that treat it differently build the same model. A warning is lint for data prep or for the consumer. #11 (checks as assumptions:, landed in #589) closed without a discussion of severity, so nothing records this decision.

The alternative, severity: warn on an assumption, is a small field. But each consumer must then honour it, and the typesetter must decide whether to print it. No second caller has asked for it.

What to change.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: data contractWhat a file guarantees about the data it bindsdesign: scopeIs this the language's business at all? Against #30 and ceiling.md

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions