Skip to content

Pass client fuzz, soak, and failure-recovery release gates #39

Description

@zoeyrose

Outcome

Demonstrate bounded behavior through malformed inputs, long sessions, device/resource failures, reconnect churn, and platform lifecycle stress.

Scope and invariants

  • Fuzz protocol validation/session reducers, scene/resource bundles, cache/settings/log parsers, UI models, and automation schemas.
  • Soak gameplay/render/audio/resource streams for memory/handle/queue/cache growth, frame pacing, stale state, and log/disk limits.
  • Stress resize/DPI/fullscreen/minimize/focus, GPU device/surface recovery, audio device changes, server disconnect/reconnect, identity change, cache corruption, and disk/permission failures.
  • Run semantic/golden visual suites across supported backends and accessibility/input scenarios.
  • Define release budgets for memory, CPU/frame, GPU, disk/cache/log, queues, reconnect recovery, and crash-free duration.

Acceptance criteria

  • No malformed input causes panic, unsafe access, partial authoritative state, unbounded allocation, secret disclosure, or persistent unrecoverable corruption.
  • All budgets and results are stored as versioned CI/release artifacts.
  • At least one extended connected soak uses production-like Go server/content/resources.
  • Failures produce bounded actionable diagnostics and reproducible seeds/manifests.
  • Open exceptions have owners/risk/expiry and block cutover where required.

Dependencies and parallelization

Harness grows from M2; final gate requires M5 parity and release packaging. Renderer/server own their complementary stress gates.

Licensing

Client code/tests are MIT. Legacy reuse requires an audited approved-grantor grant; all other implementation is independent. Content, sound, and graphics retain their exact asset licenses and notices.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Fields

    Priority

    None yet

    Effort

    None yet

    Projects

    Status
    Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions