How task-aware selection works
How task-aware selection works documentation.
Fuzit's current selector is deterministic.
It does not require a generative model to decide which files are relevant.
1. Normalize task terms
The task is normalized through:
- Unicode normalization;
- camelCase splitting;
- path separator normalization;
- punctuation normalization;
- lowercase conversion;
- concept normalization.
Examples:
authentication → auth
tests → test
implementation → implementationAuthentication tasks can also add related concepts:
security
identity
jwt
session
login2. Categorize source material
Files are classified as:
documentation
historical
implementation
test
otherHistorical material receives a negative selection signal.
3. Calculate evidence
Current evidence components include:
lexical
pathTopic
exact
generated
historical
authority
git
test
dependency
manifest
doc
security4. Apply profile weights
Each profile gives different importance to those signals.
5. Sort deterministically
Primary order:
higher score firstTie-break:
stable repository path ordering6. Add anchors
Tasks mentioning implementation, tests, or architecture can receive category-specific anchors so that one evidence category does not completely dominate the result.
7. Enforce the budget
Each candidate has a token estimate derived from its content size.
Selection stops when the configured token budget would be exceeded.
Candidates can also be excluded because of:
- category diversity limits;
- irrelevance;
- insufficient topical evidence;
- historical/generated penalties.
------------------------------------------------------------------------
