Skip to content

improve error handling and error messages #45

@robx

Description

@robx

The error messages are mostly poor across the board, on all levels. This issue is meant to collect some examples and possible improvements.

E.g.:

Bad request: Error in $: no solution provided

  • web interface shouldn't expose HTTP codes, i.e., "Bad request: "
  • aeson's "Error in $" is useless
  • "no solution provided" is correct, but better to (a) explicitly say that the solution: key is missing, and (b) that we need it because we were asked to show the solution

In a Galaxies puzzle:

Bad request: Error in $: got 'X', expected 'o'

  • got 'X', expected 'o' is pretty good, but saying explicitly that "galaxy centers are marked with 'o'" would be nicer

In a curve data puzzle (probably applies to everything with references).
After removing a cell:

Bad request: Error in $: expected a letter

  • correct would be "expected a letter or '.'" (instead of a space)
  • just deal with holes in the grid instead?

Reference to a missing letter:

Bad request: Error in $: mzero

  • "missing reference: x"
  • better: the grid references a clue 'x', which must be defined in the "clues" part

Inserting a bare : in coral clues:

Bad request: InvalidYaml (Just (YamlParseException {yamlProblem = "did not find expected node content", yamlContext = "while parsing a flow node", yamlProblemMark = YamlMark {yamlIndex = 105, yamlLine = 3, yamlColumn = 24}}))

  • simply state that the YAML is broken
  • provide a more userfriendly error message?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions