Shared memory and context tools for agentic work.
Code Rooms
{
"schema": "m1nd-bug-hunt-answer-key-v0",
"round_id": "bughunt-p-limit-mc0-20260517T134906Z",
"repo": "p-limit",
"source_commit": "9f52583119f0cb0d85c6fec600c94a21fd89d060",
"seeded_bug_count": 5,
"bugs": [
"id": "options-object-default-rejects-on-clear",
"severity": "medium",
"file": "index.js",
"symbol": "pLimit",
"planted_change": "options-object destructuring changed rejectOnClear default from false to true",
"expected": "pLimit({concurrency: 1}) should keep rejectOnClear=false unless explicitly enabled.",
"proof_hint": "Queue two pending tasks with pLimit({concurrency:1}), call clearQueue(), and verify pending promises are not rejected by default.",
"match_terms": [
[
"rejectOnClear",
"reject on clear"
],
"default",
"defaults"
"true",
"enabled",
"object",
"options"
]
},
"id": "reject-on-clear-falsy-non-boolean-accepted",
"planted_change": "runtime type guard checks only truthy non-booleans",
"expected": "rejectOnClear must be a boolean; falsy non-booleans such as null or 0 should throw.",
"proof_hint": "pLimit({concurrency:1, rejectOnClear:null}) should throw TypeError.",
"boolean",
"type",
"TypeError"
"null",
"0",
"falsy",
"non_boolean",
"non-boolean"
"id": "map-non-array-iterable-index-lost",
"symbol": "limit.map",
"planted_change": "map passes undefined index for non-array iterables",
"expected": "limit.map must pass item and zero-based index for every iterable, including Set and iterators.",
"proof_hint": "await limit.map(new Set([10,20]), (_value,index)=>index) should resolve [0,1].",
"map"
"index"
"iterable",
"set",
"iterator",
"non_array",
"non-array"
"undefined",
"lost",
"missing"
"id": "limit-function-drops-arguments",
"severity": "high",
"symbol": "limitFunction",
"planted_change": "returned wrapper ignores ...arguments_",
"expected": "limitFunction should pass all arguments through to the wrapped function.",
"proof_hint": "const limited=limitFunction(async x=>x,{concurrency:1}); await limited(\"ok\") should be \"ok\".",
"limitFunction",
"limit function"
"argument",
"args",
"arguments"
"drop",
"ignore",
"missing",
"pass through",
"pass-through"
"id": "infinite-concurrency-rejected",
"symbol": "validateConcurrency",
"planted_change": "validateConcurrency no longer accepts Number.POSITIVE_INFINITY",
"expected": "Infinity is an accepted unlimited-concurrency mode in the implementation contract.",
"proof_hint": "pLimit(Number.POSITIVE_INFINITY) should construct a limiter instead of throwing.",
"Infinity",
"POSITIVE_INFINITY",
"infinite"
"concurrency"
"reject",
"throw",
"invalid"
}
"non_claims": [
"Primary auditors are not told bug count or comparison arm.",
"Finding extra real issues is allowed but seeded recall is measured against these five defects.",
"This round tests p-limit seeded behavioral defects, not universal agent performance."