Skip to content

⚡ Bolt: [성능 개선] 불필요한 문자열 할당 방지를 위한 조건문 최적화 - #626

Draft
seonghobae wants to merge 10 commits into
masterfrom
bolt/defer-tolowercase-14912738197623324058
Draft

⚡ Bolt: [성능 개선] 불필요한 문자열 할당 방지를 위한 조건문 최적화#626
seonghobae wants to merge 10 commits into
masterfrom
bolt/defer-tolowercase-14912738197623324058

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 5, 2026

Copy link
Copy Markdown
Collaborator

Current performance-review state

The source change at exact head 459afe7ad0379b858b6d72fad194ae40e0fac0cd is intentionally Draft. It moves the case-folding allocation after two cheap short-circuit checks (isHiddenFile() and endsWith("~")), but the original PR claimed large-directory profiling evidence that is not present in this branch or its checks.

The generated .jules/bolt.md addition has been restored to the protected-base blob. A local condition-order experiment is not repository-wide performance doctrine until it has reproducible evidence.

Required evidence before promotion

Keep semantics identical for case-insensitive sensitive names/extensions and dot-like hidden prefixes, then measure the real hot path rather than inferring a gain from source shape alone:

  • representative directory populations must include ordinary names, hidden names, backup-suffix names, sensitive case variants, and protected extensions;
  • record iteration count, JVM/runtime version, warm-up policy, allocation/GC observations, and the exact protected-base/head SHAs;
  • compare wall-clock distribution and allocation behavior against master@728f0f33323e43573d6664209891099502827d5d without shrinking samples or excluding slow cases;
  • preserve functional regressions for every reordered condition;
  • only claim a buyer-visible latency improvement if the measured end-to-end traversal path supports it; a reduced toLowerCase() invocation count by itself is not an end-to-end p95 result.

Fresh exact-head CI/security/review evidence is also required. If measurement shows no material improvement or a regression, remove the optimization rather than retaining it as speculative complexity.

@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@coderabbitai

coderabbitai Bot commented Sep 5, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

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.

Restore .jules/bolt.md to the protected-base blob. The condition-order change remains for measurement, but a branch-local micro-optimization is not promoted into repository-wide doctrine without reproducible profiling evidence.
@seonghobae
seonghobae marked this pull request as draft September 5, 2026 03:33
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.

1 participant