Skip to content

chore(repo): remove stray binaries, generated outputs, and dead files#6732

Merged
proggeramlug merged 1 commit into
mainfrom
chore/remove-stray-binaries-and-dead-files
Jul 21, 2026
Merged

chore(repo): remove stray binaries, generated outputs, and dead files#6732
proggeramlug merged 1 commit into
mainfrom
chore/remove-stray-binaries-and-dead-files

Conversation

@TheHypnoo

@TheHypnoo TheHypnoo commented Jul 20, 2026

Copy link
Copy Markdown
Member

This is a reference-checked repo cleanup — every deletion below was verified against .github/workflows, scripts/, docs/, README and crate sources before removal. No behavior changes; the only source edits are two doc comments that cited a deleted plan file.

Committed binaries (~41 MB at HEAD)

Generated outputs committed by accident

  • wasm_ui_demo.html (root and examples/) — output of perry examples/wasm_ui_demo.ts --target wasm; the .ts demo stays
  • res/ — i18n-emit strings.xml output; the real Android resources live under android-build/app/src/main/res

Dead code

Executed plans / stale working docs

  • NM_DEVIRT_PLAN.md — the plan landed as perf(size): devirtualize native-module dispatch tables (−20% hello-world __text) #5256; the two source comments citing it (perry-codegen/src/nm_install.rs, perry-runtime/src/object/native_module_registry.rs) now cite the PR instead
  • W6_ISSUE_DRAFT.md, PERF_RUN_LOG.md — one-off draft/log from June
  • .git-blame-ignore-revs — placeholder ("SHA will be filled in after the commit lands") that never gained a single SHA

Superseded / orphan scripts (nothing invokes them: not CI, not other scripts, not docs)

  • run_tests.sh — fully superseded by run_parity_tests.sh (same test-files/*.ts corpus, but no Node oracle, no skip-list, fixed /tmp output dir)
  • run_llvm_sweep.sh, scripts/run_cache_tests.sh, scripts/run_tty_pty_smoke.sh, scripts/node_builtin_manifest_radar.py, scripts/bisect_1114.sh (bisect helper for long-closed v0.5.1009 regression: setInterval+async MySQL query loop pegs CPU and wedges Fastify HTTP #1114), scripts/gc_mutable_root_contract_gate.sh + scripts/gc_ffi_root_sources_gate.py (the latter only called by the former)

Closed-issue repro demos: examples/issue_{552,582,583}_demo.ts (only referenced from CHANGELOG history)

.gitignore now covers the removed generated paths (jniLibs/, the wasm demo HTML, /res/, the stray binary names) so they can't be re-committed.

Deliberately not touched: bucket/perry.json (live Scoop bucket per README — though it's pinned at 0.5.386 and may deserve release automation), TYPE_LOWERING*.md (active workstream doc), docs/*-plan.md (cited from source comments and translated in the book), root CNAME (needs a check of the repo's Pages settings), docker-compose.yml / Dockerfile.dev (local dev convenience).

Note: this removes the blobs from HEAD; clone size only shrinks with a history rewrite, which is out of scope here.

Summary by CodeRabbit

  • Chores

    • Removed obsolete development notes, performance logs, test runners, diagnostic scripts, and issue demonstrations.
    • Added ignore rules for generated build, test, Android, and WebAssembly artifacts.
    • Removed unused legacy runtime support components and related container interface definitions.
  • Documentation

    • Updated internal references describing native-module dispatch scaffolding.
    • Cleaned up outdated localized resource entries.

- Committed binaries (~41 MB): clusterAg, isoA, m, m5 (leaked via #4548/#5394),
  tests/modules/main, packages/perry-styling/examples/dist/showcase,
  android-build .../jniLibs/arm64-v8a/libperry_app.so (build artifact,
  regenerated by 'perry run --target android')
- Generated outputs committed by accident: wasm_ui_demo.html (root + examples,
  output of 'perry examples/wasm_ui_demo.ts --target wasm'), res/ (i18n-emit
  strings.xml output)
- Dead code: src/core/wit/perry-container.wit (zero references),
  crates/perry-runtime/src/.value.parked/ (parked copy of the old value.rs
  split from #1246)
- Executed plan docs / logs: NM_DEVIRT_PLAN.md (plan landed as #5256; the two
  source comments citing it now cite the PR), W6_ISSUE_DRAFT.md, PERF_RUN_LOG.md
- .git-blame-ignore-revs: placeholder that never gained a single SHA
- Superseded/orphan scripts: run_tests.sh (replaced by run_parity_tests.sh),
  run_llvm_sweep.sh, scripts/{run_cache_tests.sh,run_tty_pty_smoke.sh,
  node_builtin_manifest_radar.py,bisect_1114.sh,
  gc_mutable_root_contract_gate.sh,gc_ffi_root_sources_gate.py} — none invoked
  by CI, other scripts, or docs
- Closed-issue repro demos: examples/issue_{552,582,583}_demo.ts
- .gitignore: ignore the removed generated paths so they cannot come back

Every deletion was reference-checked against .github/workflows, scripts/,
docs/, README and crate sources. addr-class ratchet passes.
@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 0dbe7fac-8ba0-48e4-aab8-a49c93c5766f

📥 Commits

Reviewing files that changed from the base of the PR and between f073bbf and a0fc4df.

⛔ Files ignored due to path filters (2)
  • android-build/app/src/main/jniLibs/arm64-v8a/libperry_app.so is excluded by !**/*.so
  • packages/perry-styling/examples/dist/showcase is excluded by !**/dist/**
📒 Files selected for processing (38)
  • .git-blame-ignore-revs
  • .gitignore
  • NM_DEVIRT_PLAN.md
  • PERF_RUN_LOG.md
  • W6_ISSUE_DRAFT.md
  • clusterAg
  • crates/perry-codegen/src/nm_install.rs
  • crates/perry-runtime/src/.value.parked/dyn_index.rs
  • crates/perry-runtime/src/.value.parked/dynamic_arith.rs
  • crates/perry-runtime/src/.value.parked/handle.rs
  • crates/perry-runtime/src/.value.parked/jsvalue.rs
  • crates/perry-runtime/src/.value.parked/mod.rs.tmp
  • crates/perry-runtime/src/.value.parked/nanbox.rs
  • crates/perry-runtime/src/.value.parked/tags.rs
  • crates/perry-runtime/src/.value.parked/to_string.rs
  • crates/perry-runtime/src/object/native_module_registry.rs
  • examples/issue_552_demo.ts
  • examples/issue_582_demo.ts
  • examples/issue_583_demo.ts
  • examples/wasm_ui_demo.html
  • isoA
  • m
  • m5
  • res/values-de/strings.xml
  • res/values-es/strings.xml
  • res/values-fr/strings.xml
  • res/values/strings.xml
  • run_llvm_sweep.sh
  • run_tests.sh
  • scripts/bisect_1114.sh
  • scripts/gc_ffi_root_sources_gate.py
  • scripts/gc_mutable_root_contract_gate.sh
  • scripts/node_builtin_manifest_radar.py
  • scripts/run_cache_tests.sh
  • scripts/run_tty_pty_smoke.sh
  • src/core/wit/perry-container.wit
  • tests/modules/main
  • wasm_ui_demo.html
💤 Files with no reviewable changes (27)
  • scripts/run_tty_pty_smoke.sh
  • res/values-fr/strings.xml
  • W6_ISSUE_DRAFT.md
  • examples/issue_582_demo.ts
  • run_llvm_sweep.sh
  • scripts/run_cache_tests.sh
  • run_tests.sh
  • scripts/gc_ffi_root_sources_gate.py
  • examples/issue_583_demo.ts
  • NM_DEVIRT_PLAN.md
  • .git-blame-ignore-revs
  • res/values-de/strings.xml
  • examples/issue_552_demo.ts
  • PERF_RUN_LOG.md
  • scripts/gc_mutable_root_contract_gate.sh
  • src/core/wit/perry-container.wit
  • scripts/bisect_1114.sh
  • crates/perry-runtime/src/.value.parked/dyn_index.rs
  • res/values/strings.xml
  • crates/perry-runtime/src/.value.parked/dynamic_arith.rs
  • res/values-es/strings.xml
  • crates/perry-runtime/src/.value.parked/nanbox.rs
  • crates/perry-runtime/src/.value.parked/to_string.rs
  • scripts/node_builtin_manifest_radar.py
  • crates/perry-runtime/src/.value.parked/tags.rs
  • crates/perry-runtime/src/.value.parked/handle.rs
  • crates/perry-runtime/src/.value.parked/jsvalue.rs

📝 Walkthrough

Walkthrough

This change removes obsolete runtime modules, development scripts, issue demos, planning and performance notes, and container WIT interfaces. It also updates generated-reference comments and adds ignore patterns for generated artifacts.

Changes

Repository cleanup

Layer / File(s) Summary
Obsolete runtime and interface removal
crates/perry-runtime/src/.value.parked/*, src/core/wit/perry-container.wit
Removes parked NaN-boxing, dynamic arithmetic, handle, string, and dynamic-index implementations, along with container, compose, and workloads interfaces.
Development artifact and example removal
NM_DEVIRT_PLAN.md, PERF_RUN_LOG.md, W6_ISSUE_DRAFT.md, examples/issue_*, run_*.sh, scripts/*
Deletes obsolete planning notes, performance logs, issue demonstrations, test runners, bisect tooling, validation gates, and cache/TTY smoke tests.
Generated references and repository exclusions
crates/perry-codegen/src/nm_install.rs, crates/perry-runtime/src/object/native_module_registry.rs, .gitignore, res/values*/strings.xml
Updates generated comments to reference native-module devirtualization issue #5256, adds generated-output ignore patterns, and removes or changes empty Android string resources.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • PerryTS/perry#6646: Updates extern declarations for NaN-boxed string and FFI interop symbols also removed from parked runtime helpers here.

Suggested labels: ready

Suggested reviewers: proggeramlug

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Linked Issues check ❓ Inconclusive The linked issue describes a runtime regression, but this cleanup PR only removes dead artifacts, so direct issue compliance can't be verified. If #1114 is meant to be fixed here, include the runtime change set; otherwise unlink it from this standalone cleanup PR.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title is concise and accurately summarizes the cleanup of stray binaries, generated outputs, and dead files.
Description check ✅ Passed The description covers the cleanup summary, grouped changes, linked issue note, and scope caveats, though it lacks an explicit test plan.
Out of Scope Changes check ✅ Passed The removed binaries, generated outputs, and dead files align with the stated cleanup scope, with no obvious unrelated functional changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/remove-stray-binaries-and-dead-files

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@proggeramlug
proggeramlug merged commit 92cc5cf into main Jul 21, 2026
27 checks passed
@proggeramlug
proggeramlug deleted the chore/remove-stray-binaries-and-dead-files branch July 21, 2026 06:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

v0.5.1009 regression: setInterval+async MySQL query loop pegs CPU and wedges Fastify HTTP

2 participants