Skip to content

feat: Phase 2 — recommender engine with 15+ test scenarios - #4

Merged
bakodramane merged 1 commit into
mainfrom
phase/2-recommender
Jun 3, 2026
Merged

bakodramane merged 1 commit into
mainfrom
phase/2-recommender

Conversation

@bakodramane

Copy link
Copy Markdown
Owner

Pure function recommend(DataAvailability) → Recommendation[] that maps user data flags to a ranked list of SAE methods with rationale and caveats.

Implements §3 priority table from docs/SAE-CATALOGUE.md:

  • Filters methods by required inputs and target type
  • Scores methods by scenario (poverty, binary/proportion, count, continuous)
  • Handles outlier, spatial, out-of-sample, and weights sub-scenarios
  • Always appends direct estimator last as a benchmark
  • Sets stataV14Warning for methods with stataMinVersion > 14
  • Builds whyApplicable strings and inferred caveats per scenario

380 tests pass (56 new recommender tests + 324 existing).

Pure function recommend(DataAvailability) → Recommendation[] that maps
user data flags to a ranked list of SAE methods with rationale and caveats.

Implements §3 priority table from docs/SAE-CATALOGUE.md:
- Filters methods by required inputs and target type
- Scores methods by scenario (poverty, binary/proportion, count, continuous)
- Handles outlier, spatial, out-of-sample, and weights sub-scenarios
- Always appends direct estimator last as a benchmark
- Sets stataV14Warning for methods with stataMinVersion > 14
- Builds whyApplicable strings and inferred caveats per scenario

380 tests pass (56 new recommender tests + 324 existing).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@bakodramane
bakodramane merged commit e31d1fa into main Jun 3, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant