profound-logoProfound CMS
⌘K
Admin
Theme
DocsTutorialBlogPhilosophy
DocsTutorialBlogPhilosophy

Blog

Static Blog PostSetup Hybrid CMS ProjectTailwind TokenswitchOur TeamFallow and LLM-assisted cleanup
All Systems Operational
Powered Byprofound-logo
Theme

Fallow and LLM-assisted cleanup

Fallow is enabled in our codebase to help detect dead code, unused exports and types, unnecessary dependencies, duplication, complexity, and other maintainability issues.

Run Fallow before opening a PR

From the repository root, run:

bun run fallow:audit

The audit checks whether your changes introduce new findings. Existing findings may be reported as inherited and do not necessarily block the PR.

For a summary of the current codebase:

bun run fallow:summary

For workspace-specific analysis:

bun run fallow dead-code --workspace cms --format compact
bun run fallow dead-code --workspace @repo/cel-engine --format compact

Using Fallow with an LLM

Your preferred LLM coding agent can run Fallow, investigate the results, and apply safe cleanup. Give it a bounded prompt such as:

Run Fallow for the workspace I am currently working on.

Review each finding and verify it with rg or Fallow traces before changing code.
Do not remove public exports, generated files, dynamic test fixtures,
runtime assets, or cross-workspace APIs without confirming their consumers.

Apply only confirmed-safe cleanup.
Run the relevant typecheck, tests, and lint checks.
Then rerun the scoped Fallow scan and bun run fallow:audit.
Summarize what changed and what remains.

Before removing an export, trace it:

bun run fallow dead-code --trace path/to/file.ts:exportName

Before removing a dependency, trace it:

bun run fallow dead-code --trace-dependency package-name

Recommended workflow

  1. Run bun run fallow:audit.
  2. Review findings introduced by your branch.
  3. Verify suspected dead code against actual call sites.
  4. Make the smallest safe change.
  5. Run focused typechecks, tests, and lint.
  6. Run Fallow again.
  7. Confirm the final audit passes before opening the PR.

Fallow is intended to be part of normal development, not just a one-time cleanup tool. Running it before every PR helps prevent new dead code and unnecessary complexity from accumulating in main.

edited.

Continue Reading
Previous‹Our Team