Yahoo changed the shape of its event feed between downloads: a 2026-08
re-download of CVIX/JLPSX shows it no longer returns capitalGain events at
all (the dividend stream still carries the year-end rows), while stale
tickers now return no events at all. File-specific remove ops therefore
break silently on the next re-download, so the double-listing fix is now
expressed as layout-agnostic invariants applied at bundle assembly
(idempotent, hold for full and incremental builds):
dedup: [[date, amount]] keep at most one copy of a same-date/
same-amount cross-file pair (the capitalGain copy when both present)
drop_capg_copy: [date] the capitalGain row on that date is the
spurious copy of the dividend row
- data.py: apply_invariants() at bundle assembly + pure dedupe_event_rows()
shared with verify_official and tests (8 new test cases, 22 passing)
- JLPSX/CVSIX corrections rewritten with the invariants (2019-08-08 now
keeps the dividend amount per the verified same-date pattern)
- scripts/scan_double_listing.py: whole-dump sweep -> reports/double_listing/
6,421 symbols scanned: 1,218 with same-amount pairs (6,589), 1,631 with
differing-amount pairs (12,366, reported only - not distinguishable from
legitimate same-day div+capg without per-fund official data), 83 with
repeated within-file rows (ingest keep-last already collapses them)
- scripts/apply_dedup_corrections.py: bulk 'dedup' corrections for the
1,218 same-amount symbols (1,212 new files; the 6 verified funds keep
their explicit, official-verified corrections)
- scripts/check_corrections.py: integrity check for every correction op
against the actual (frozen) files - caught a mis-filed CVSIX entry
103 lines
1.6 KiB
JSON
103 lines
1.6 KiB
JSON
{
|
|
"symbol": "jlpsx",
|
|
"name": "JPMorgan US Large Cap Core Plus I",
|
|
"verdict": "ok",
|
|
"class": "Class I",
|
|
"mean_rel_err": 0.0007,
|
|
"nav_check": null,
|
|
"periods": [
|
|
{
|
|
"period": "fy",
|
|
"end": "2025-06-30",
|
|
"official": 1.37,
|
|
"local": 1.368,
|
|
"diff": 0.002,
|
|
"ok": true,
|
|
"unbounded": false
|
|
},
|
|
{
|
|
"period": "fy",
|
|
"end": "2024-06-30",
|
|
"official": 2.03,
|
|
"local": 2.029,
|
|
"diff": 0.001,
|
|
"ok": true,
|
|
"unbounded": false
|
|
},
|
|
{
|
|
"period": "fy",
|
|
"end": "2023-06-30",
|
|
"official": 4.86,
|
|
"local": 4.859,
|
|
"diff": 0.001,
|
|
"ok": true,
|
|
"unbounded": false
|
|
},
|
|
{
|
|
"period": "fy",
|
|
"end": "2022-06-30",
|
|
"official": 6.78,
|
|
"local": 6.785,
|
|
"diff": -0.005,
|
|
"ok": true,
|
|
"unbounded": false
|
|
},
|
|
{
|
|
"period": "fy",
|
|
"end": "2021-06-30",
|
|
"official": 6.89,
|
|
"local": 32.267,
|
|
"diff": -25.377,
|
|
"ok": false,
|
|
"unbounded": true
|
|
}
|
|
],
|
|
"other_classes": [
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class L",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class L",
|
|
"Class A",
|
|
"Class C",
|
|
"Class I",
|
|
"Class A",
|
|
"Class C",
|
|
"Class A",
|
|
"Class I",
|
|
"Class A"
|
|
],
|
|
"filing": {
|
|
"accession": "0001193125-25-261051",
|
|
"doc": "d43102d497.htm",
|
|
"period_end": "2025-11-03",
|
|
"display": "JPMorgan Trust I (CIK 0001217286)",
|
|
"ciks": [
|
|
"0001217286"
|
|
],
|
|
"score": 8.332236
|
|
},
|
|
"how": "per-share-data",
|
|
"n_bytes": 23648659
|
|
} |