Skip to content

Implement validated layout encoding, decoding, and fuzzing #10

Closed

Description

@flyingrobots

Outcome

Implement the canonical layout protocol with strict parse-validate-admit boundaries.

Dependencies

Blocked by #8 and #9.

Acceptance criteria

  • Raw decoding cannot directly construct a trusted validated layout.
  • Encoding matches checked-in golden bytes exactly.
  • Decoding rejects trailing bytes, duplicate fields, noncanonical integers, unsupported versions, unknown mandatory flags, invalid order, excessive depth, and configured bound violations.
  • Cross-field validation checks logical length, chunk count, aggregate chunk length, chunk identities, and layout identity.
  • Every allocation is preceded by validated limits and checked conversion.
  • Errors preserve expected and observed values without exposing plaintext.
  • Corruption mutations cover every structural field.
  • A continuous fuzz target exercises decoder and validator.
  • Every discovered fuzz defect becomes a permanent regression fixture.
  • No dependency-owned type leaks into the public API.

Required evidence

Golden fixtures, independent mutation fixtures, property tests for canonicality, and a documented fuzz invocation.

Activity

  1. added
    kind:testTest infrastructure or failure-mode evidence
    area:formatCanonical durable formats and decoding
    area:verificationIntegrity verification and corruption posture
    on Jul 20, 2026
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:formatCanonical durable formats and decodingarea:verificationIntegrity verification and corruption posturekind:implementationProduction implementation workkind:testTest infrastructure or failure-mode evidence

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions