refactor: reduce cognitive complexity in differential-cache (batch 3a) - #141
Merged
Conversation
Extract helper functions from six over-complex functions in differential-cache.ts to bring every function below the cognitive complexity threshold of 20: - prepareDependencies: extract #prepareDependenciesUnlocked private method - createWritableTarget: extract #createWritableTargetUnlocked private method - hashApplicationPayload: split into collectAncestors, collectApplicationEntries, processApplicationEntry, filterApplicationDirectories, hashApplicationRecords - inspectDependencyLayout: split into walkDependencyRoot, processDependencyChild, inspectDependencyLink - cleanupRoot: extract collectExpiredEntries and measureActiveTargets - cleanupTransients: split into cleanupTransientRole, processTransientEntry, handleInvalidTransient, handleStaleTransient, measureRetainedTarget, cleanupTrash Pure refactoring — no behavior changes, no suppressions. Part of #117
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of #117
Summary
Reduces cognitive complexity in
apps/desktop/src/lib/warm-verification/differential-cache.tsby extracting helper functions from six over-complex functions, bringing every function below the cognitive complexity threshold of 20.Changes
prepareDependencies(CCN 24 → ≤20): Extracted#prepareDependenciesUnlockedprivate method from the inline#exclusivecallback.createWritableTarget(CCN 27 → ≤20): Extracted#createWritableTargetUnlockedprivate method from the inline#exclusivecallback.hashApplicationPayload(CCN 36 → ≤20): Split intocollectAncestors,collectApplicationEntries,processApplicationEntry,filterApplicationDirectories, andhashApplicationRecords.inspectDependencyLayout(CCN 77 → ≤20): Split intowalkDependencyRoot,processDependencyChild, andinspectDependencyLink.cleanupRoot(CCN 21 → ≤20): ExtractedcollectExpiredEntriesandmeasureActiveTargetshelpers.cleanupTransients(CCN 59 → ≤20): Split intocleanupTransientRole,processTransientEntry,handleInvalidTransient,handleStaleTransient,measureRetainedTarget, andcleanupTrash.Verification
pnpm exec biome lint --config-path=biome.code-health.json --only=complexity/noExcessiveCognitiveComplexity— 0 violationspnpm quality:complexity— PASSpnpm lint— PASSpnpm quality:duplication— PASS (0.80% < 0.81 threshold)differential-cache.test.tsunit tests passConstraints
biome-ignore,eslint-disable)