The 5 axes
Every item is scored on five independent axes. This is the core of what 4DA calls PASIFA scoring — the reason a keyword match alone can't buy its way into your feed.
| Axis | What it measures |
|---|---|
| Context | Semantic similarity to your active codebase |
| Interest | Alignment with your declared and learned topics |
| ACE | Real-time signals from your Git commits and file edits |
| Dependency | Direct matches against your installed packages |
| Learned | Save / dismiss feedback that boosts or suppresses future scores |
The 2-of-5 gate
An item must pass 2 or more axes to surface. Single-axis matches are hard-capped at 28% — one strong signal, no matter how strong, cannot pass alone.
This is deliberate. A single axis is easy to trigger by accident (or on purpose). Requiring corroboration across independent signals — semantic relevance and a dependency you actually installed, say — is what separates "mentions your tech" from "you need to see this."
Quality multipliers
Passing the gate is necessary, not sufficient. Survivors run through 12 multipliers:
- Content depth — thin content is demoted
- Novelty detection — introductory posts down; new releases and security advisories up
- Title–body coherence — a title has to deliver on its promise
- Competing-tech penalties — content pushing alternatives to your stack is discounted
- Intent scoring — recent Git and file activity nudges what surfaces toward what you're working on now
Calibration
None of these constants are guesses. The pipeline is benchmarked against 9 simulated developer personas (Rust systems, Python ML, fullstack TypeScript, DevOps/SRE, mobile, first-run, power user, stack switcher, niche specialist) with 215 labeled test items scored as relevant or noise.
Measured result across those personas: 92% of content filtered as noise, 98% of actual noise correctly rejected. Your own rejection rate — computed from your data, not ours — is shown in the app.
Accurate first. 4DA never shows intelligence the system can't stand behind. Correct results from a capable model beat fast results from a weak one.
Next: Privacy & BYOK.