Skip to content

test: refresh fuzzy typo probe#14

Closed
hev wants to merge 1 commit into
mainfrom
fix/fuzzy-typo-test-truth
Closed

test: refresh fuzzy typo probe#14
hev wants to merge 1 commit into
mainfrom
fix/fuzzy-typo-test-truth

Conversation

@hev

@hev hev commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Closes #13.

Decision

This is stale test truth, not a fuzzy regression. The old local filesystem probe used alpho against alpha. After RFC 0001, FTS runs on unstemmed alyze word_v4 tokens in text_tok; after RFC 0004, fuzzy expansion is length-laddered per analyzed token and 1-5 character tokens intentionally stay exact. alpho is five characters, so the empty fuzzy result is the designed short-token exact path.

The test now uses the RFC 0004 long-token typo probe: kubernets against kubernetes. Exact FTS still returns no rows, while fixed edit distance 1 fuzzy FTS surfaces the document.

Evidence

Failing on main before the test-truth update:

./scripts/cargo test -j 2 -p hevsearch-core --test manager_local_fs local_fs_fuzzy_fts_matches_typo_query -- --exact --nocapture
thread 'local_fs_fuzzy_fts_matches_typo_query' panicked at crates/hevsearch-core/tests/manager_local_fs.rs:599:29:\nindex out of bounds: the len is 0 but the index is 0\ntest local_fs_fuzzy_fts_matches_typo_query ... FAILED\n```\n\nPassing after the update, after rebasing on `origin/main`:\n```\n./scripts/cargo test -j 2 -p hevsearch-core --test manager_local_fs local_fs_fuzzy_fts_matches_typo_query -- --exact --nocapture\ntest local_fs_fuzzy_fts_matches_typo_query ... ok\ntest result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 16 filtered out\n```\n\n## Unblocks\nPR #12 can proceed first, then PR #10 after #12, because both were inheriting this red main test.

@hev hev added the gate:impl Implementation PR awaiting CI + spec-review + merge (agentic-gates §2) label Jul 8, 2026
@hev

hev commented Jul 8, 2026

Copy link
Copy Markdown
Owner Author

spec-review (conformance pass): ✅ approve — reviewed against issue #13's decision protocol and RFCs 0001/0004.

  • Decision justified: old probe alphoalpha is a 5-char token; RFC 0004's length ladder intentionally keeps 1–5 char tokens exact, so the old assertion tested the designed exact path, not typo tolerance. New probe kubernetskubernetes (ED1) is the RFC's own long-token example. This is stale test truth, not a fuzzy regression — wave2's alyze work stands.
  • Diff scope: test-only, 2 string swaps + an explanatory comment citing the RFCs. No product code touched.
  • Evidence: failing-on-main → passing-after run output present; rebased on origin/main.

Merge order: this first, then #12 (rebase), then #10 (rebase). (Posted by the dispatch loop — the spec-review skill (agentic-gates §5.2) isn't built yet; this is the manual equivalent.)

This was referenced Jul 8, 2026
@hev

hev commented Jul 8, 2026

Copy link
Copy Markdown
Owner Author

CI attribution (dispatch loop): the red check failed at the cargo fmt step (job 85866916560, step-level conclusion) — i.e. main's pre-existing fmt debt. This PR's own diff is 2 lines in one test file; fmt never reaches clippy/tests on this branch.

#12 and #14 are mutually red through main: #12 (fmt+clippy fixes) was red only on the test this PR fixes; this PR is red only on the fmt debt #12 fixes. Neither can go green alone.

Recommended order (hev's call — a red merge is exactly the admin-judgment case):

  1. Merge this PR red-but-explained (smallest diff, failure provably inherited, single-test evidence in body), then
  2. Fix manager clippy debt #12 rebases → all three gates green for real → merge green,
  3. Add bench evidence CI workflow #10 rebases → green → merge. Main is then fully green with the bench lane live.

@hevbot

hevbot commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator

Superseded by #15, which stacks this fuzzy typo test fix with the clippy fix from #12 and the main-branch formatter verification so CI can go green in one PR. Leaving this open for hev to decide on merge/closure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gate:impl Implementation PR awaiting CI + spec-review + merge (agentic-gates §2)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

main: local_fs_fuzzy_fts_matches_typo_query fails — fuzzy typo matching broken or stale test truth after the alyze batch (blocks #11/#12, #7/#10)

2 participants