Skip to content

CI: serialized OOM witness can throw an unprintable exception #100

Description

@chrisbbreuer

Fresh main run 29364341824 failed threads-gil (shard 0/4) after 3cc2a58c.

Exact failing case:

  • semantics/oom-one-thread.js
  • elapsed: 13,305 ms
  • runner diagnostic: FAIL ...: ?
  • every other shard-0 corpus case passed (57/58)

This case runs with a 192 MiB heap limit and expects a catchable OOM on one allocating thread while siblings complete and all threads recover. The ? means either the thrown value was absent/unstringifiable or diagnostic stringification itself failed under pressure, so the exact semantic failure is currently hidden.

Acceptance:

  • reproduce the case independently before changing behavior;
  • preserve the real 192 MiB pressure and catchable-OOM/recovery assertions;
  • determine the original exception without weakening the witness;
  • add focused diagnostics or regression coverage for the root cause;
  • pass the focused case in serialized and no-GIL modes as applicable, then one full CI corpus gate.

Evidence: https://github.com/zig-utils/zig-js/actions/runs/29364341824/job/87192101292

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions