2 Create a rewritten copy
Open a program and choose Enshittify source.... Set the controls and choose Preview. The preview reports the seed and counts of structural rewrites, helpers, renamed identifiers, and numeric literal changes. From the preview, choose Open editable copy to put the result in a new DrRacket window. The original editor buffer is left in place. Choose Generate another for a fresh seed, or enter a seed to reproduce a variant.
Intensity ranges from 1 (Mild) to 5 (Apocalypse). Higher levels add more opportunities for conditional rewrites, redundant branches, helper definitions, and identifier changes.
Seed is an integer from 0 through 2,147,483,647. A fixed seed and fixed settings reproduce the same generated text. Leave the field empty for a fresh seed.
Text density ranges from 0 (airy) to 100 (compact). For a fixed seed and the same other settings, this changes whitespace while preserving the non-whitespace characters of the generated source. Required token separators and syntax-sensitive boundaries are retained.
Identifier chaos controls how often eligible parameters and generated helper parameters receive awkward names. Public top-level function names are kept so calls elsewhere in the program continue to resolve.
Helper-function proliferation controls the chance of adding forwarding helper definitions. Helpers are skipped for typed and mutually-recursive functions.
There is no output-byte-length cap. Helper creation and expression traversal are bounded per function, but a program with many eligible functions can still produce a large result.