Re-anchoring leaves approved links on verses the loaded book no longer holds
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
- Ambito
- tooling
Direzione di ricerca
Start with buildAnchorMap and reanchorSnapshot in src/utils/reanchor-analysis.ts, then trace extractBookFromUsj and useReanchorToBook. Establish how to distinguish a genuinely covered verse range from a book-marker-only load, and ensure missing verses become stale only in the former case without persisting approvals from an empty load.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
When buildAnchorMap cannot find a snapshot's verse in the loaded book, it drops the snapshot from the map (src/utils/reanchor-analysis.ts, the if (!tokens) return; in buildAnchorMap). reanchorSnapshot then treats it exactly like an out-of-book link and leaves it alone, so a link whose verse was deleted upstream stays approved.
Snapshots reaching that point are already filtered to the book being re-anchored, so a missing verse means the verse is genuinely absent rather than elsewhere. The link keeps feeding the readers that gate on approved: the catalog reports a usage and offers a click through to a verse that does not exist, and the suggestion pool counts it as one approval of frequency. Nothing crashes, and no gloss lands on a wrong word.
The reason this is not a one-line fix is that the pass cannot currently tell a deleted verse from a book that simply has not loaded that verse yet. extractBookFromUsj only throws when there is no book marker with a code, so a book-marker-only USJ — an untranslated book, which is routine — yields a Book with zero segments that passes the if (!book ...) guard in useReanchorToBook. Staling every snapshot whose verse is absent would therefore flip an entire book's links to stale on such a load, and because the hook saves whenever the analysis changes, that would be persisted. Losing a book's approvals to an empty load is considerably worse than the phantom usage.
So closing this needs a way to distinguish the two cases — something that says the book genuinely covers the verse range in question — rather than inferring deletion from absence. Worth deciding deliberately.
Found while verifying review-bot findings against #345.
- Lingua principale
- TypeScript
- Stelle
- 2
- Fork
- 0
- Merge medio
- 2g 5h
- PR unite (30g)
- 46
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di sillsdev/interlinearizer-extension
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
sillsdev/interlinearizer-extension#388 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
sillsdev/interlinearizer-extension#383 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
sillsdev/interlinearizer-extension#382 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 54/100
sillsdev/interlinearizer-extension#379 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
sillsdev/interlinearizer-extension#369 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di sillsdev/interlinearizer-extension
Issue simili
-
[bug] diagnostics.dumpBody:Buffer 形态请求(透传 lane)跳过 dumps/ 落盘,仅留 raw/-unknown-Forse già presa @ranxianglei l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
ranxianglei/billion-context#2421 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
platformatic/mcp#216 ·
I maintainer di solito rispondono entro 1 giorno
-
pending triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
nuxt/test-utils#1842 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
MoonshotAI/kimi-code#4146 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
farbenmeer/tapi#531 ·