You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Epic][TS PBT] Build and evaluate a property-aware PBT–USVM feedback system #345
Deliver the strongest evidence-backed version of the TypeScript PBT/USVM work: reuse human-written properties and generator semantics, infer property-relevant behavioral relations from concrete executions, challenge them symbolically, and return validated inputs to further generation and shrinking.
Coverage feedback is mandatory infrastructure. Observed relations are a central research mechanism. Generator-choice search, metamorphic relations, bounded command models and context-scoped helper summaries are included in the full delivery through bounded, working implementations and separate evaluation. They are not deferred as unspecified future work.
The full epic completes with an implemented, evaluated and reproducible result; scientific superiority is a hypothesis, not an acceptance criterion that permits hiding negative results.
Delivery stages
The full scope above is retained, but it is delivered through independently reviewable checkpoints. The first checkpoint does not wait for all extensions or the final benchmark corpus.
A bounded end-to-end loop, exact coverage feedback, original-oracle replay, returned-input generation and equal-budget development comparisons; a recorded assessment of feasibility and empirical promise
Frozen held-out evaluation of the core and each extension, limitations, manuscript and reproducible artifact
The core starts with supported bounded numeric/scalar inputs, tuples and dense bounded arrays; selected arguments, returns and explicit intermediate observation points; a small frozen relation vocabulary; and deterministic target scheduling. This is a declared capability boundary, not permission to approximate unsupported JavaScript behavior silently. Ordinary multi-call predicates remain usable wherever already supported; dedicated cross-execution inference belongs to #401.
#405 separates functional completion from evidence of benefit. A reproducible negative or inconclusive pilot can complete that checkpoint with a documented diagnosis and next decision; it cannot be called a demonstrated improvement. The full epic and its required extensions remain open. A later reduction of full scope must be an explicit roadmap change, never an inference from a negative run.
Dependencies are completion gates. Literature, corpus selection, protocol design and extension interface design may start early. Core component issues close on their stated bounded contracts; extension-specific implementation and acceptance are owned by #400–#403, not retroactively added to those core issues.
Distinguish declared input support/preconditions, generator probability bias, concrete observations, empirical hypotheses and proved facts. Search for a violation of the declared predicate; never assume that predicate or a sampled relation as an unconditional fact.
Challenge a hypothesis using declared domain AND admitted precondition AND reach(point/context) AND NOT(hypothesis). Preserve context/guards and value identity. Refuting a hypothesis is not automatically a defect.
Every finding must replay in the original runtime. Unsupported execution, solver uncertainty, invalid models, timeouts and failed extraction remain visible. No finite unsuccessful search proves a property.
Covered edges remain searchable. Input-dependent faults, relational behavior and different states on one path remain relevant after coverage plateaus.
Speculative restrictions/substitutions are labeled experimental assumptions, with replay and a positive bounded unrestricted allocation under the same total deadline. Fallback alone is not a completeness guarantee.
Use one PR per independently reviewable contract/mechanism where practical, with linked issue, focused behavior tests, actual checked revision and reproduction commands. Keep the dependency graph acyclic; distinguish readiness to start work from gates on final integration. Do not mark an issue implemented solely because its plan or fixture exists.
Total budgets include observation/inference/mapping, frontend/adapter work, search, replay and reduction; report setup consistently. Measure distinct confirmed faults and time to confirmation, not coverage alone.
Include held-out real properties, known defects and separately reported validated mutants; saturated-coverage, misleading-hypothesis, generator-dependence, metamorphic and stateful cases.
Each required bounded extension works end to end. Unsupported-only placeholders or toy wins cannot stand in for the full scope or its evaluation.
Raw artifacts expose observations, inferred expressions, evidence provenance, mappings, target decisions, replay outcomes, returned seeds, costs and limitations. Regeneration commands reproduce the paper's tables.
Nearest-work analysis covers coverage-guided PBT, dynamic invariants, static/dynamic testing, hypothesis falsification, generator choices and model-based testing. The supplied Go/gopter thesis includes coverage, input corpora and behaviorKey novelty; reuse of values alone is not a novelty claim.
Arbitrary JavaScript closure serialization, universal invariant discovery, arbitrary heap/environment modeling, concurrency/async schedule exploration and a general plugin platform are outside the required bounded implementation. This does not exclude the explicitly listed structured generators, metamorphic relations or within-invocation stateful command models.
changed the title [-][Epic][TS PBT] Integrate fast-check with symbolic execution[/-][+][Epic][TS PBT] Integrate pluggable PBT engines with symbolic execution[/+]on Aug 22, 2026
changed the title [-][Epic][TS PBT] Integrate pluggable PBT engines with symbolic execution[/-][+][Epic][TS PBT] Build and evaluate a property-aware PBT–USVM feedback system[/+]on Sep 30, 2026
Intended result
Deliver the strongest evidence-backed version of the TypeScript PBT/USVM work: reuse human-written properties and generator semantics, infer property-relevant behavioral relations from concrete executions, challenge them symbolically, and return validated inputs to further generation and shrinking.
Coverage feedback is mandatory infrastructure. Observed relations are a central research mechanism. Generator-choice search, metamorphic relations, bounded command models and context-scoped helper summaries are included in the full delivery through bounded, working implementations and separate evaluation. They are not deferred as unspecified future work.
The full epic completes with an implemented, evaluated and reproducible result; scientific superiority is a hypothesis, not an acceptance criterion that permits hiding negative results.
Delivery stages
The full scope above is retained, but it is delivered through independently reviewable checkpoints. The first checkpoint does not wait for all extensions or the final benchmark corpus.
The core starts with supported bounded numeric/scalar inputs, tuples and dense bounded arrays; selected arguments, returns and explicit intermediate observation points; a small frozen relation vocabulary; and deterministic target scheduling. This is a declared capability boundary, not permission to approximate unsupported JavaScript behavior silently. Ordinary multi-call predicates remain usable wherever already supported; dedicated cross-execution inference belongs to #401.
#405 separates functional completion from evidence of benefit. A reproducible negative or inconclusive pilot can complete that checkpoint with a documented diagnosis and next decision; it cannot be called a demonstrated improvement. The full epic and its required extensions remain open. A later reduction of full scope must be an explicit roadmap change, never an inference from a negative run.
Dependencies are completion gates. Literature, corpus selection, protocol design and extension interface design may start early. Core component issues close on their stated bounded contracts; extension-specific implementation and acceptance are owned by #400–#403, not retroactively added to those core issues.
Semantic contract
Work packages
Execution order and orchestration
Use one PR per independently reviewable contract/mechanism where practical, with linked issue, focused behavior tests, actual checked revision and reproduction commands. Keep the dependency graph acyclic; distinguish readiness to start work from gates on final integration. Do not mark an issue implemented solely because its plan or fixture exists.
Evaluation and completion gates
Arbitrary JavaScript closure serialization, universal invariant discovery, arbitrary heap/environment modeling, concurrency/async schedule exploration and a general plugin platform are outside the required bounded implementation. This does not exclude the explicitly listed structured generators, metamorphic relations or within-invocation stateful command models.