Skip to content

Checker JSON breaks on German typographic quotes („…“) #20

Closed

Description

@bweinzierl

Drafts containing German quotation marks („…“) make the writing guide and pre-flight fail with unbalanced JSON braces, no JSON object found or multiple JSON objects found in LLM response.

When the model cites the draft, it replaces the closing “ (U+201C) with an unescaped ". That terminates the JSON string early. In one raw response, all five „ were kept, while every “ had become ". extractJSONObject rejects this correctly, because the output really is invalid JSON.

Adding a prompt rule to keep typographic quotes unchanged did not help (0/6 valid responses).

Repro (claude-sonnet-4-6): TestWritingGuideEval_TypographicQuotesStayValidJSON passes 1 of 6 runs.

Possible fixes: native structured output (JSON schema / forced tool use), or a tolerant repair of unescaped inner quotes when parsing.

Activity

  1. hlubek commented on Nov 2, 2026

    @hlubek
    Contributor

    Fixed by #26: pre-flight and the writing guide now request native structured output with a JSON schema that each provider enforces, so typographic quotes in a draft no longer break the response. Note: Ollama Cloud currently ignores response schemas (ollama/ollama#12362); use a local Ollama or another provider for these checks.

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions