agenr 0.9.2 → 0.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,75 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.9.4 (2026-02-27)
4
+
5
+ ### Changed
6
+ - refactor: removed top-level `model` config field; `models` is now required with all four task keys (extraction, claimExtraction, contradictionJudge, handoffSummary) always explicit (#277)
7
+ - `resolveModelForTask` simplified to direct lookup (no fallback chain)
8
+ - `isCompleteConfig` now checks for complete `models` instead of top-level `model`
9
+ - Old configs with top-level `model` auto-upgrade on read (value populates all task models)
10
+ - `config set model <value>` removed; use `config set models.extraction <value>` etc.
11
+
12
+ ## 0.9.3 (2026-02-26)
13
+
14
+ ### Added
15
+ - feat: `config set` now supports per-task model overrides via dot-path keys (for example, `models.extraction`, `models.claimExtraction`) (#276)
16
+ - Set value to `default` to remove an override and fall back to the global model
17
+ - Schema: subject_entity, subject_attribute, subject_key, claim_predicate, claim_object, claim_confidence columns on entries table (#266)
18
+ - Schema: conflict_log table for contradiction audit trail (#266)
19
+ - Schema: idx_entries_subject_key partial index (#266)
20
+ - SubjectIndex: in-memory subject key index with lazy initialization (#266)
21
+ - ConflictLogEntry type definition (#266)
22
+ - Claim extraction: dedicated LLM call extracts structured claims (subject/predicate/object) from entries at store time (#266)
23
+ - Config: per-task model configuration via config.models (#266)
24
+ - Setup: optional advanced per-task model selection in setup wizard (#266)
25
+ - resolveModelForTask() helper for consistent model resolution (#266)
26
+ - Tuned claim extraction prompt for entity normalization and reduced false no_claim results (#266)
27
+ - Fixed benchmark fixtures for edge cases (#266)
28
+ - Tuned claim extraction prompt: short-claim guidance, no-claim edge cases, entity hint from subject field (#266)
29
+ - Fixed benchmark fixtures: fact-breed alt values, decision-release-strategy realistic object (#266)
30
+ - Added alternate expected values to claim scorer for entity, attribute, predicate, object (#266)
31
+ - Expanded predicate equivalence groups and soft matches (#266)
32
+ - Removed personal information from claim extraction prompt and benchmark fixtures (#266)
33
+ - Added contradiction detection core: LLM judge classifies entry pairs as supersedes/contradicts/coexists/unrelated (#266)
34
+ - Added type-specific resolution: auto-supersede for facts and preferences, flag decisions and lessons for review (#266)
35
+ - Added conflict log for tracking detected contradictions and their resolutions (#266)
36
+ - Added contradiction judge benchmark: fixtures, scorer, and CLI flag --judge for regression testing the LLM judge (#266)
37
+ - Rewrote contradiction judge prompt: singular vs additive attribute heuristic, shorter and more focused for nano (#266)
38
+ - Tuned judge benchmark fixtures for clarity (#266)
39
+ - Fixed contradiction judge prompt regression: reverted temperature setting, restored original prompt structure with targeted additive-attribute guidance (#266)
40
+ - Added alternate accepted relations to ambiguous judge benchmark fixtures: sup-diet, sup-storage, edge-event-immutable, edge-similar-different (#266)
41
+ - Integrated contradiction detection into store pipeline: runs after claim extraction on ADD decisions, resolves conflicts with type-specific rules (#266)
42
+ - Contradiction detection is enabled by default for all store paths (watcher, plugin, CLI, ingest) (#266)
43
+ - Added production logging for claim extraction, contradiction detection, and conflict resolution (#266)
44
+ - Added `agenr backfill-claims` command to extract claims for existing entries, enabling subject index and contradiction detection on older knowledge (#266)
45
+ - Added `agenr conflicts` command: local web UI for reviewing and resolving detected contradictions (#266, seeds #171)
46
+ - Init wizard: per-task model selection for extraction, claim extraction, contradiction judge, and handoff summary (#266)
47
+
48
+ ### Fixed
49
+ - fix: CLI banner now displays the current agenr version (#278)
50
+ - fix: setup and init wizards now write explicitly selected task models even when they match defaults (#275)
51
+ - fix: resolveConflict now reads autoSupersedeConfidence from config instead of hardcoding 0.85 (#275)
52
+ - fix: claim fields explicitly propagated through mutation pipeline (#275)
53
+ - fix: supersede + insert wrapped in transaction for online-dedup path (#275)
54
+ - fix: entity names with slashes sanitized during claim extraction (#275)
55
+ - fix: LLM judge errors now logged via console.warn instead of silent fallback (#275)
56
+ - fix: entity alias resolution no longer depends on single-entity heuristic (#275)
57
+ - Critical: conflicts UI "keep-new"/"keep-old" resolution was retiring the wrong entry (swarm review)
58
+ - Contradiction detection: cap subject-index candidates to maxCandidates, sort by recency
59
+ - Contradiction detection: always run both subject-index and embedding search (removed hardcoded < 3 gate)
60
+ - Contradiction detection: parallelize classifyConflict LLM calls via Promise.all
61
+ - Contradiction detection: high-confidence supersession with lower importance now flags for review instead of silent coexist
62
+ - Contradiction detection: lowered default similarity threshold from 0.72 to 0.55 (matches real contradiction scores)
63
+ - Contradiction detection: entity hint injection from DB for consistent claim extraction across sessions
64
+ - Contradiction detection: fuzzy attribute matching fallback in subject index
65
+ - Contradiction detection: cross-entity lookup for same-attribute conflicts across entity aliases
66
+ - Subject index rebuild is now atomic (swap instead of clear-then-populate)
67
+ - Conflicts UI: request body size limit (64KB), auth token on POST endpoints, safe browser open
68
+ - Extracted shared LLM helpers (clampConfidence, resolveModelForLlmClient, extractToolCallArgs) to src/db/llm-helpers.ts
69
+ - Removed unnecessary Float32Array conversions in contradiction detection pipeline
70
+ - Replaced __pendingConflicts side-channel with scoped Map
71
+ - Init wizard: change model without re-running auth setup (#275)
72
+
3
73
  ## 0.9.2 (2026-02-26)
4
74
 
5
75
  ### Fixed