You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(structural): genuine PMVR3 disclosure series unlocks TOKI period cohorts (measured)
Two operator-audited consecutive Park Mavera III cumulative-realized-sales disclosures (2019-10-31, 2019-11-30) added; the 2019-12-31 Level-2 case stays frozen. No new architecture; nothing fabricated.
- The existing revision/reconciliation guards derived 4 VALID period cohorts at the room-type stratum level: Oct->Nov 2+1 (7 @ 1016244.2957) and 3+1 (2 @ 1435225.00); Nov->Dec 2+1 (5 @ 1003690.00) and 4+1 (1 @ 1684074.65). 3 strata are reconciliation-blocked (delta_count=0, delta_total!=0): 5+1 Oct->Nov; 3+1 & 5+1 Nov->Dec -- no division by zero, never reinterpreted as sales. 4+1 Oct->Nov (delta=0) yields no cohort. The overall TOTAL-row difference is never used as a clean cohort.
- toki_cohort_moments moved unavailable -> AVAILABLE (toki_cohort_avg_price/count + room-type shares). dataset_status now reports reconciliation_blocked_strata.
- HONEST MEASURED RESULT: these TOKI moments are now observed but have NO simulated counterpart in the current structural model (identification_report.observed_without_simulated_counterpart) -- a model-mapping gap, not a data gap, and no TOKI/primary-market mechanism was added. So rank(J_TOKI) stays 0, rank(J_combined) stays 2, and the status is unchanged NOT_IDENTIFIED (dim 6). Snapshot updated; the before->after comparison shows the 5 newly-unlocked TOKI moments with rank 2->2.
- Level-2 real_records/toki.json unchanged; consumer path frozen; theta/optimizer/mechanism/thresholds/terminology untouched.
- 177 tests passing (genuine PMVR3 cohort values asserted exactly)
pytest -q #175 tests, fully offline (no network or API key required)
304
+
pytest -q #177 tests, fully offline (no network or API key required)
305
305
```
306
306
307
307
## Methodology & References
@@ -327,7 +327,8 @@ Negotiation-margin figures from Turkish market reporting: İstanbul ≈ 10%, Ank
327
327
-[x]**Structural econometric core** — mechanism-aware generalized **Nash bargaining** (`P = ηB+(1−η)S`, `η` estimated, not hard-coded) fit by **Simulated Method of Moments**; TCMB-anchored hedonic fair value (relative premiums only, no listing intercept as level); structural UYAP auctions with the **statutory legal floor** (`muhammen_bedel` preserved as appraised value `Q`, never the reserve; partially-observed floors not fabricated); KAP `η`-calibration moments with a corporate mechanism shift; TOKİ cumulative-disclosure differencing into room-type cohort moments. Replaces weak-label aggregation as the core; the provenance registry and validated KAP/TOKİ/UYAP Level-2 records are kept; the consumer path is frozen as an optional future *validation* channel. No SaleProbability model yet
328
328
-[x]**Statutory-floor fix, TCMB double-count audit & identification diagnostics** — corrected the İİK acceptance floor to `max(0.5·Q, priority_claims) + realization_costs`; audited the fair-value anchor so a contemporaneous TL/m² level is not trend-adjusted twice (KFE ratio only when rolling an older anchor); expanded the UYAP/KAP/TOKİ structural dataset schemas + observed-moment constructors (area semantics preserved, `log(sale/appraisal)` KAP moments, revision-guarded TOKİ cohorts); added `sold structural identify` (Jacobian rank / singular values / condition number / weak directions / profile diagnostics → `NOT_IDENTIFIED` → sensitivity mode)
329
329
- [x] **Genuine structural dataset (measured, not synthetic)** — wired the three validated Level-2 records as the genuine audited seed under [`validation/structural/`](validation/structural/) (`source_audited=true`, kept distinct from fixtures): **1 UYAP auction** (sold; appraised `Q`=4.5M → winning 4.545M; parcel/net areas distinct, gross null; partial legal floor), **1 KAP negotiated disposal** (prior-appraisal 5.2M → sale 5.508M; `value_method=negotiation`), **1 TOKİ disclosure** (PMVR3 → **0** derivable period cohorts: differencing needs ≥2 consecutive disclosures). `m_obs` is rebuilt from this genuine data — **3 single-observation means** (`uyap_sale_prob`, `uyap_win/appraisal`, `kap log(sale/appraisal)`); variances/quantiles reported **unavailable** at n=1 (never guessed). Measured result: `sold structural dataset` + `sold structural identify` → **`NOT_IDENTIFIED`** (rank 2 / dim 6, condition number →∞), sensitivity mode; a three-way `WEAKLY_IDENTIFIED` status and moment-provenance/unavailability reporting were added
330
-
- [x] **Identification-contribution diagnostics (source-specific Jacobian + snapshots)** — `sold structural identify` reports per-source Jacobian ranks (`J_UYAP`/`J_KAP`/`J_TOKİ`/`J_combined`) restricted to each family's genuinely observed moments — answering *which source adds an independent parameter direction* (a local moment-sensitivity diagnostic, **not** causal or standalone identification) — plus a `--save-snapshot` before→after comparison (newly-unlocked moments, sample-size increases, rank / smallest-non-zero-singular-value / condition-number / status deltas). **Measured on the current genuine data: `J_UYAP` rank 1 (`uyap_sale_prob` degenerate at 1.0), `J_KAP` rank 1, `J_TOKİ` rank 0 (single disclosure, no cohort), `J_combined` rank 2 → still `NOT_IDENTIFIED` (dim 6).** Unlocking `toki_cohort_moments` / `uyap_win-over-appraisal_sd` / `kap_log_ratio_sd` requires additional **genuine audited** records (a second consecutive PMVR3 disclosure; a second sold + one unsold UYAP auction; a second KAP negotiated disposal) — operator-supplied official records; none were fabricated, so those moments stay unavailable and the status is unchanged. The moment-unlock machinery is verified with clearly-labelled fixtures (not counted in the genuine report). **Next: operator-audited genuine records → rerun identify (data, not architecture)**
330
+
- [x] **Identification-contribution diagnostics (source-specific Jacobian + snapshots)** — `sold structural identify` reports per-source Jacobian ranks (`J_UYAP`/`J_KAP`/`J_TOKİ`/`J_combined`) restricted to each family's genuinely observed moments — answering *which source adds an independent parameter direction* (a local moment-sensitivity diagnostic, **not** causal or standalone identification) — plus a `--save-snapshot` before→after comparison (newly-unlocked moments, sample-size increases, rank / smallest-non-zero-singular-value / condition-number / status deltas). **Measured on the current genuine data: `J_UYAP` rank 1 (`uyap_sale_prob` degenerate at 1.0), `J_KAP` rank 1, `J_TOKİ` rank 0 (single disclosure, no cohort), `J_combined` rank 2 → still `NOT_IDENTIFIED` (dim 6).** Unlocking `toki_cohort_moments` / `uyap_win-over-appraisal_sd` / `kap_log_ratio_sd` requires additional **genuine audited** records (a second consecutive PMVR3 disclosure; a second sold + one unsold UYAP auction; a second KAP negotiated disposal) — operator-supplied official records; none were fabricated, so those moments stay unavailable and the status is unchanged. The moment-unlock machinery is verified with clearly-labelled fixtures (not counted in the genuine report)
331
+
- [x] **Genuine PMVR3 disclosure series → TOKİ period cohorts unlocked** — added two operator-audited consecutive Park Mavera III cumulative-realized-sales disclosures (`2019-10-31`, `2019-11-30`; the `2019-12-31` Level-2 case frozen). The existing revision/reconciliation guards derived **4 valid period cohorts** (Oct→Nov 2+1 & 3+1, Nov→Dec 2+1 & 4+1) and **reconciliation-blocked 3 strata** with `Δcount=0, Δtotal≠0` (5+1 Oct→Nov; 3+1 & 5+1 Nov→Dec — no division by zero, never reinterpreted as sales); the overall TOTAL-row difference is never used as a clean cohort. `toki_cohort_moments` moved **unavailable → available** (5 cohort/composition moments). **Honest measured result: these TOKİ moments are now observed but have _no simulated counterpart_ in the current structural model (a model-mapping gap, not a data gap — no new mechanism was added), so `rank(J_TOKİ)` stays 0, `rank(J_combined)` stays 2, and the status is unchanged `NOT_IDENTIFIED`.** Mapping TOKİ primary-market moments to `θ` is a deliberately-deferred future structural-model extension
331
332
-[ ]**SaleProbability** model (`P(sold ≤ N days)`) trained on collected outcomes
332
333
-[ ] Live, ToS-reviewed fetchers for the public label sources
333
334
-[ ] Broker-vs-benchmark analytics over an aggregate anonymized dataset
"_validation_ref": "operator-audited PMVR3 official disclosure series (2019-10-31)",
9
+
"_note": "GENUINE manually-audited official Park Mavera III (PMVR3) cumulative realized-sales disclosure, as-of 2019-10-31, same published disclosure series and table semantics as the frozen 2019-12-31 Level-2 record. Operator-audited official table values supplied as structured fields; the aggregate adapter normalizes them — the system does NOT claim raw-PDF extraction. Official TOTAL row (audit only, NOT used for differencing): count=372 total_price=359650908.98 total_gross_m2=67112.34 average_price=966803.52 average_m2_price=5358.94.",
"_validation_ref": "operator-audited PMVR3 official disclosure series (2019-11-30)",
24
+
"_note": "GENUINE manually-audited official Park Mavera III (PMVR3) cumulative realized-sales disclosure, as-of 2019-11-30, same published disclosure series and table semantics as the frozen 2019-12-31 Level-2 record. Operator-audited official table values supplied as structured fields; the aggregate adapter normalizes them — the system does NOT claim raw-PDF extraction. Official TOTAL row (audit only, NOT used for differencing): count=381 total_price=375610239.03 total_gross_m2=68424.69 average_price=985853.65 average_m2_price=5489.40.",
"_note": "GENUINE audited TOKİ disclosure derived from validated Level-2 Park Mavera III (PMVR3) aggregate record. This is a SINGLE disclosure (one as-of date); repeated consecutive disclosures for the SAME project are required to difference cumulative strata into period cohorts, so ZERO period cohorts can be derived from this alone. The offered_inventory population is NOT paired with realized sales (different populations); only the cumulative_realized_sales strata are carried for future period differencing.",
39
+
"_note": "GENUINE audited TOKİ disclosure derived from validated Level-2 Park Mavera III (PMVR3) aggregate record (FROZEN Level-2 case). Now the third point in a consecutive PMVR3 cumulative-realized-sales series (with 2019-10-31 and 2019-11-30); the audited cumulative strata values remain unchanged. The offered_inventory population is NOT paired with realized sales; only cumulative_realized_sales strata are carried for period differencing.",
0 commit comments