Skip to content

Mock provider: missing ':' or '=>' in an op declaration cascades into the next line #73

Closed

Description

@e54-bot

Audit finding M6 — verified live.

Problem

parse.rs parse_op calls expect_punct for : and => without checking the return. An op missing : produces the expected diagnostic but parsing keeps consuming: a second misattributed error appears, the next line's valid op is silently dropped, and the solution then reports a bogus unresolved-op. One syntax slip -> ~3 diagnostics + a lost declaration.

Reproduction

lpp/check on "puzzle p {\n target = 1\n start = 0\n ops {\n b x => x + 1\n c: x => x + 2\n }\n solution = [ b, c ]\n}"

Acceptance criteria

  • A malformed op line is reported once, recovery resynchronizes at the line boundary, and the following op declaration still parses.
  • Regression test + green suite.

Activity

  1. added
    bugSomething isn't working
    ready-for-implementationContract settled; an Engineer can implement without inventing a decision
    on Oct 15, 2026
  2. e54-bot commented on Oct 15, 2026

    @e54-bot
    ContributorAuthor

    Fixed in #86 (commit 3721fec).

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

    bugSomething isn't workingready-for-implementationContract settled; an Engineer can implement without inventing a decision

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions