← back to Link Ranker dashboard
0 * * * *) picks pending follow_ups with source='content-review'.(title, description, created_at, priority) via features.py.p:
ranker: LABEL p=0.XX [v1 YYYY-MM-DD] into the review_note column.status to approved / rejected — that's ground truth.The dashboard's items table writes the ground truth labels the ranker needs. Until Rob (or an automated reviewer) marks items, the calibration and drift panels show "awaiting ground truth".
| Action | Meaning | DB effect |
|---|---|---|
| Approve | Content was worth attention — ranker should have predicted high p | status = 'approved' |
| Reject | Content was not worth attention — ranker should have predicted low p | status = 'rejected' |
| Clear | Undo a previous decision | status = 'pending' |
| Test AUC | 0.863 |
| Shadow accuracy | 76.5% |
| Recall | 93.6% |
| Precision | 51.8% |
| Feature version | v1 |
Recall is high (catches almost all real positives); precision is the bottleneck. The next retrain wave depends on accumulating ~100+ approve/reject labels.
| Path | Role |
|---|---|
/var/lib/jarvis/knowledge/ml/integration/c2-link-ranker/train_ranker.py | Trains MLP on labeled data |
/var/lib/jarvis/knowledge/ml/integration/c2-link-ranker/infer_and_score.py | Hourly cron — featurize + predict + write |
/var/lib/jarvis/knowledge/ml/integration/c2-link-ranker/features.py | Text encoding, FEATURE_VERSION |
/var/lib/jarvis/knowledge/ml/integration/c2-link-ranker/model_weights.npz | Trained W1/b1/W2/b2 + metadata |
sentinel/src/config.ts (line ~315) | Cron schedule link-ranker-score |
jarvis-bot/src/index.ts | Processor handler — spawns inference script |
dashboard/public/link-ranker.html | This dashboard's UI |
dashboard/server.mjs (handlers handleLinkRankerStats/Items/Decide) | Three API endpoints |
/var/lib/jarvis/data/activity.db · follow_ups | Storage table; review_note + status |
plans/ml-tinygrad-knowledge-base.md — original implementation planmemory/reference_link_ranker_c2.md — quick reference for chat context (Jarvis)memory/lesson_sidecar_pattern_for_unproven_models.md — why shadow modememory/lesson_coder_agent_false_verification_auth_path.md — auth header bugmemory/lesson_sqlite_iso_date_format_mismatch.md — throughput parsing bugmemory/lesson_panel_smoke_test_must_render_data.md — validation patternp=0.7 trigger feature-engineering review.