STET

flux-commit-7af773c0

Zod (TypeScript) · W2 · GPT-5.4

fail_high_conf

Tests: unknown Strength: missing.

69.2% run pass rate
Tier 1
primary equivalenceunknownnon equivalentneeds generated testsweak signal riskcommand source driftunknown no commands selected

Partial score: 0/0

Publishable: yesWeak signal risk: yes

Trajectory

unknown · partial order only

Canonical trajectory missing; showing coarse derived order only.

patch written
Patch captured
#1

Stet captured agent.patch for this trial.

validation
Validation recorded
#2
equivalence
Equivalence judgment
#3

non_equivalent

code review
Code review judgment
#4

fail

decision
Final decision
#5

fail_high_conf

Quality

equivalence
non_equivalent
74% confidence
code review
fail · 39/100
4 findings
footprint
medium (0.45)
behavioral
0.0%
cost
$0.68 · 926K

Equivalence Reasoning

behavioral

Core pieces were added (void type, toZod/object typing updates, codegen class, index exports), but there are behavioral mismatches that can break intended flows: `codegen` optional detection for intersections uses `||` instead of the expected `&&`, and `src/userpost.ts` does not export `User`/`Post` (gold/intended flow exposes them for recursive schema examples). The patch also includes unrelated `__pycache__` binaries.

Code Review

correctness: 2/4introduced bug risk: 1/4edge case handling: 2/4maintainability idioms: 1/4

Patch is close and likely passes targeted tests, but it does not fully match intended behavior due to incorrect intersection optionality, missing exports in the recursive sample module, and avoidable maintenance risk from committed binary cache files.

4 findings
Incorrect intersection optionality in code generator
major

For intersections, optionality is computed with OR (`left || right`). `undefined` should only survive an intersection when both sides allow it, so this can emit optional properties/types that are too wide.

app/src/codegen.ts:17
Recursive sample schemas are not exported
major

The new `userpost` module declares `User` and `Post` as local constants, but intended behavior exposes these schemas publicly for downstream usage/examples.

app/src/userpost.ts:15
Unhandled codegen schema kinds degrade silently
minor

The codegen switch default returns `'unknown'` instead of asserting unreachable, which can hide missing support and produce misleading generated types.

app/src/codegen.ts:145
Binary cache artifacts committed
minor

Multiple `__pycache__/*.pyc` files are included in the patch, which are generated artifacts and should not be versioned.

app/tests/behavior/__pycache__/test_codegen_api_surface_behavior.cpython-312.pyc:1