refactor(fast_corners): de-duplicate fast_corners module (#47)#64
Merged
Merged
Conversation
Third de-duplication step of #47, following the #62/#63 pattern. - src/fast_corners/fast_corners.ts: replace the type-only stub with the REAL implementation moved verbatim from the monolith (set_threshold, detect, _cmp_offsets; imports _cmp_score_16 from ./fast_private, which was already a real module). - src/jsfeatNext.ts: shrinks by ~225 lines; attaches fast_corners from its module. Verified behavior-preserving: tsc --noEmit clean; npm test 57/57 (detector parity suite pins fast_corners.detect against original jsfeat); UMD bundle smoke-checked (instanceof chain, static inheritance, corner detection on a synthetic image). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
4ab2bca to
b820b27
Compare
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.
Third slice of #47, following the #62/#63 pattern. Targets the
feat/refactor-jsfeat-nextintegration branch.What changed
src/fast_corners/fast_corners.ts— type-only stub replaced by the real implementation, moved verbatim from the monolith (set_threshold,detect, private_cmp_offsets). It imports_cmp_score_16from./fast_private, which was already a real module.src/jsfeatNext.ts— shrinks by ~225 lines.Verification
tsc --noEmit→ cleannpm test→ 57/57 (the detector parity suite pinsfast_corners.detectoutput against original jsfeat)instanceofchain, static-constant inheritance, corner detection on a synthetic imageexamples/*.htmlwere manually verified against a locally built bundle of the refactor(imgproc): de-duplicate imgproc module (#47) #63 branch — no issues founddist//types/untouched (rebuilt once when the integration branch merges todev)Advances #47. Remaining queue:
pyramid_t→linalg→orb→yape06→motion_estimator(+ inline kernels, which also tightens theanyslots incore.ts) →optical_flow_lk.🤖 Generated with Claude Code