v0.10: reliable memory — degraded transparency, reranking, usage observability, dedup, reactive auth#11
Merged
Merged
Conversation
…rvability, dedup, reactive auth - find(): degraded/warnings rollup + corpus.sourcesFailed; composite records dropped children; a partial corpus is no longer cached as complete - find(): optional rerank stage (built-in lexical scorer or custom fn) over a widened rerankDepth pool; degrades gracefully if the reranker fails - observability: capture durationMs; new `ats usage` (JSON/markdown) via a shared usage-log summarize() — per-tool volume, empty/error/degraded rates, latency avg+p95, re-queries, top queries - `ats dedup`: dependency-free corpus near-duplicate clustering (Jaccard, transitive) + status/priority/due conflict flags; detection only - TickTick api: 401-reactive token refresh + retry-once, with an actionable re-auth error
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.
Five focused improvements that make ATS's memory more trustworthy and observable. Each extends existing infrastructure (RRF fuse, corpus cache, usage log, typed links, adapter auth) rather than rewriting it. Full CI green —
npm test: lint + pii + claims + 239 fast tests + allprove:*suites.What's in it
1. Degraded-retrieval transparency
findnow signals when a result is partial instead of silently serving a subset.degradedboolean +warnings[]+corpus.sourcesFailed[].Promise.allSettledsilently filtered failures away).2. Optional reranking
findgains a second-stage reranker over the RRF-fused pool.rerank: true→ built-in, dependency-free lexical scorer (query-term coverage + title/phrase weighting). Or pass a function to plug a cross-encoder/LLM.rerankDepthpool, then trims tolimit. A failing reranker degrades to the fused order (surfaced viadegraded).ats find "q" --rerank [--rerank-depth N].3. Usage observability
durationMs.ats usage(--json, or markdown) reports per-tool volume, empty/error/degraded rates, latency (avg + p95), re-query pairs, and top queries.summarize()shared by the CLI andbench/analyze-usage, so both agree by construction.4. Duplicate / contradiction detection
ats dedup: scans the corpus for near-duplicate task clusters (dependency-free Jaccard over title + content + tags, transitively grouped) and flags field-level disagreements (status/priority/due) within a cluster as potential contradictions.conflicts-with/supersedeslink types (the action you take on a finding).5. Reactive token refresh
401— the revoked / invalidated-early / wrong-stored-expiry cases the existing proactive clock-based refresh misses — then surfaces an actionable "runats auth login".Tests
+19 new tests (retrieval
degraded/rerank, usagesummarize, dedup, 401-retry). Full fast suite: 239 pass.npm test(incl. lint / pii / claims / prove:*) green.Notes for review
embedding.js, and a true fetch-delta is blocked by the TickTick Open API v1 having no modified-since endpoint).## 0.10.0 - Unreleased.