Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Bug]: pi-fff blocks session startup while indexing files

Open
#975 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 3 days

@adonis0147 is already working on this.

Since Oct 29, 2026.

  • #976 by @adonis0147 — open

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
70/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
backend

Research direction

Read packages/pi-fff/src/index.ts and packages/pi-fff/src/file-picker.ts, focusing on session_start, ensureFinder, and create(). Trace how the shared initialization promise is used by search tools and file mentions, and check shutdown handling. Done when session startup no longer waits for indexing, callers can await initialization as needed, and a finder that finishes after shutdown is destroyed.

Written by the indexing model from the issue text.

Description

duplicate triaged
Frontend

Other / multiple — pi-fff

Problem

pi-fff awaits file indexing during session_start, so initial scanning can delay session startup on large directories, especially $HOME.

Steps to reproduce
  1. Enable pi-fff with home-directory scanning enabled.
  2. Launch pi from $HOME or a large project directory whose initial scan takes noticeable time.
  3. Session startup waits for the initial scan to complete or reach its timeout.
Expected behavior

Warm up the finder in the background without blocking session startup. Search tools and file mentions can await the shared initialization promise when needed.

Code path

Source inspection at upstream commit d1c7dd4 shows:

  • packages/pi-fff/src/index.ts: session_start awaits ensureFinder(activeCwd).
  • packages/pi-fff/src/file-picker.ts: create() awaits waitForScan(SCAN_TIMEOUT_MS).
  • SCAN_TIMEOUT_MS is 15,000 ms.

Background initialization also needs lifecycle guards so a finder finishing after shutdown is destroyed rather than retained.

The shutdown cleanup fix in #949 addresses a separate issue; startup still awaits indexing.

Verification / logs

This report is based on source inspection. No runtime logs or measured startup timings were collected.

Dominant language
Rust
Stars
11.2k
Forks
473
Avg merge
2d 7h
Merged PRs (30d)
32

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from dmtrKovalenko/fff

All issues in dmtrKovalenko/fff

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.