feat(agents): per-agent inference — momentum, overdue-task, recent-patterns, focus-area (ADR-0014 step 7)
All four agents bumped to v1.1.0. momentum (#114): infers engagement_trend ('up'|'stable'|'down') by comparing done-rate in the last 7 days vs the prior 7 days. Agent surfaces the trend in its snippet ("trending up — build on the momentum"). overdue-task (#115): infers lateness_tolerance_days (0/1/2) from snooze rate. Agent now filters tasks against the tolerance so low-urgency users aren't nagged about tasks that are only hours overdue. recent-patterns (#116): infers window_days (7/14/30) from feedback event density — sparse users get a wider window so the snippet isn't always empty. focus-area (#113): no inferred params (project-level feedback linkage needed, tracked under #78). preferred_areas pref was declared but ignored; agent now honours it as a tiebreaker and mentions it in the snippet. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
14
CLAUDE.md
14
CLAUDE.md
@@ -106,11 +106,10 @@ Recent completions:
|
||||
- Model benchmarking for tip generation (#93, #95)
|
||||
- Admin UX refinements: feedback consolidation, settings placement (#100–102)
|
||||
- ADR-0012 — ε-greedy v2 (D=12) — 2026-04-26 (now superseded by ADR-0013)
|
||||
- ADR-0014 steps 1–6: unified Profile schema + backfill, manifest plumbing, `/api/profile` read-through, registry-driven eligibility filter, inference framework + time-of-day migration — 2026-05-05
|
||||
- ADR-0014 steps 1–7: unified Profile schema + backfill, manifest plumbing, `/api/profile` read-through, registry-driven eligibility filter, inference framework + per-agent inference (#112–#116) — 2026-05-05
|
||||
|
||||
Active work (M2):
|
||||
- ADR-0014 step 7 — per-agent inference: focus-area (#113), momentum (#114), overdue-task (#115), recent-patterns (#116)
|
||||
- ADR-0014 step 8 — drop `users.consentGiven` column
|
||||
- ADR-0014 step 8 — drop `users.consentGiven` column (one release after step 2)
|
||||
- Signal abstraction for multi-source support (#78)
|
||||
- Per-user feature freshness SLAs (#61, ADR-0011 phase B)
|
||||
|
||||
@@ -133,7 +132,14 @@ Lives in `ml/agents/inference/`. `run_inference(manifest, history)` evaluates al
|
||||
- `infer()` error → emit `cold_start_default` (never crashes)
|
||||
- Results written to `user_preferences` with `source='inferred'`; keys with `source='user'` are never overwritten
|
||||
|
||||
Time-of-day agent (`1.1.0`) is the proof agent (#112): infers `preferred_hour` (mode done-hour) and reads `quiet_start`/`quiet_end` from prefs.
|
||||
All five agents are at v1.1.0. Per-agent inferred params:
|
||||
| Agent | Inferred param | Logic |
|
||||
|-------|---------------|-------|
|
||||
| `time-of-day` | `preferred_hour` | Mode done-hour from feedback history |
|
||||
| `momentum` | `engagement_trend` | Done-rate last 7d vs prior 7d |
|
||||
| `overdue-task` | `lateness_tolerance_days` | Snooze rate → 0/1/2 days |
|
||||
| `recent-patterns` | `window_days` | Event density → 7/14/30 days |
|
||||
| `focus-area` | *(none yet)* | Needs project-level feedback linkage (#78) |
|
||||
|
||||
## What NOT to do
|
||||
|
||||
|
||||
Reference in New Issue
Block a user