docs(methodology): Phase 0 of epic #150 — Known Limitations + pillar label clarification#151
Merged
Conversation
…label clarification Closes Phase 0 of foundation reconciliation roadmap (epic #150). Adds honesty surface for analytical claims the rest of the docs glossed over. docs/METHODOLOGY.md — new §"Known limitations" section covering: - Survivorship bias (Wikipedia current SP500, not point-in-time) - Score semantics (percentile rank, not absolute quality) - Pillar correlation (Quality + Profitability ROE double-count) - extreme_*_estimate as method-applicability, not manipulation - Pillar weight rationale (empirical, not academic-derived) - Top-decile vetoes fire on top 10% by construction - Known calibration drift cross-refs (#11, #16, Phase 4.5d, #130) frontend/components/PillarRadarChart.tsx — sub-header now reads "0-100 percentile rank against current S&P 500 (sector-relative for Quality/Value/Growth/Profitability)" instead of generic "against the universe". CLAUDE.md + AGENTS.md — lockstep update per Rule from PR #142.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes Phase 0 of epic #150 — foundation reconciliation roadmap from the 2-round scrutinize session (2026-05-20).
Adds the honesty surface that the rest of
METHODOLOGY.mdglossed over. Pure docs + 1-line frontend label clarification — no compute logic change, no schema bump.Files (+145 LOC)
docs/METHODOLOGY.md— new §"Known limitations"7 sub-sections addressing the analytical-layer findings from the scrutinize:
compute/scoring/normalize.py:104-125)extreme_*_estimatesemantic — these are method-applicability signals (DCF fails on negative-FCF, RIM fails on negative-book), NOT manipulation signals. Currently incorrectly aggregated intomanipulation_index(compute/scoring/loss_chance.py:74-75); Phase 2 of epic Foundation reconciliation roadmap — process + analytical scrutinize findings (2 rounds) #150 splits these surfacescomposite.py:17-28weights are empirical / project-team judgment, NOT directly traceable to academic literature. Relative ordering follows multi-factor precedent; specific values are project decision. Sum-to-1.0 lock atcomposite.py:43-45prevents driftsloan_accruals_top_decile+net_issuance_top_decilefire on top 10% by construction. ~10% of universe always Top-5-suppressed regardless of genuine manipulation. Phase 3 of epic Foundation reconciliation roadmap — process + analytical scrutinize findings (2 rounds) #150 proposes joint-gating_avg_3y_roe), Going-concern phrase scan: 10.8% false-positive rate due to negation phrases in risk-factor language #16 (going_concernFP), Phase 4.5d (loss_avoidance_patterndead), and #130 quarterly auditfrontend/components/PillarRadarChart.tsx— 1-line sub-header clarificationBefore:
"8 dimensions, each scored 0–100 against the universe"After:
"0–100 percentile rank against current S&P 500 (sector-relative for Quality / Value / Growth / Profitability)"Same data, clearer semantic. Number display unchanged.
CLAUDE.md+AGENTS.md— lockstep update per Rule from PR #142What this PR does NOT do
Phase 0 is doc honesty only. The structural issues are tracked under epic #150 Phases 1-3:
Test plan
ruff check .— All checks passedtsc --noEmit— pre-existing sandbox@types/nodeissue unrelated to this PR's 1-line change; CI will verify with proper depscompute/ortests/paths touched/stock/[ticker]pagesConstraints honored
compute//tests// schemasworkflow_dispatchtriggerGenerated by Claude Code — Phase 0 of epic #150 foundation reconciliation
Generated by Claude Code