Rename TROP method="twostep" to method="local"#209
Conversation
Rename the per-observation TROP method from "twostep" to "local", forming a natural local/global pair. Both "twostep" and "joint" are now deprecated aliases (removal in v3.0). Also rename internal _joint_* methods to _global_* and Rust exports for consistency. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Overall Assessment ✅ Looks good No unmitigated P0 or P1 findings in the diff. The Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
|
Fix P3 items from code review: - Replace remaining "joint"/"twostep" wording in Rust doc comments and section headers with "global"/"local" - Rewrite TestTROPGlobalMethod docstring to match current global method semantics (single control-only fit with post-hoc residuals) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment ✅ Looks good Executive Summary
Methodology Affected methods: TROP
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
|
…for τ The generic TROP optimization summary incorrectly described the global path as solving for (μ, α, β, τ) with τ·D in the residual. The actual implementation solves for (μ, α, β, L) on control data and extracts τ_it post-hoc as residuals. Clarify the summary and point to the dedicated Global section for details. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment ✅ Looks good Re-review outcome: I do not see an unmitigated P0 or P1 in the renamed TROP Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
|
- Rewrite test_global_method_alias docstring to match its actual assertion (validates method="global" produces valid ATT) - Add comment in Rust explaining that only exported #[pyfunction] names were renamed; private helpers retain *_joint* names Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/ai-review |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment ✅ Looks good Re-review outcome: the prior low-severity issues are addressed, and I do not see an unmitigated P0/P1 in the Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
|
Summary
method="twostep"tomethod="local", forming a naturallocal/globalpairFutureWarningdeprecation for"twostep"→"local"(mirrors existing"joint"→"global"); both removed in v3.0_joint_*methods to_global_*for consistencyloocv_grid_search_joint→loocv_grid_search_globalandbootstrap_trop_variance_joint→bootstrap_trop_variance_globalMethodology references (required if estimator / math changes)
Validation
tests/test_trop.py(class/method renames, 2 new deprecation tests for"twostep"),tests/test_rust_backend.py(class/method renames, import/mock target updates)TROP()defaults to"local",TROP(method="twostep")emitsFutureWarningand normalizes to"local",TROP(method="joint")emitsFutureWarningand normalizes to"global"Security / privacy
Generated with Claude Code