Finalize publication evidence with independent OPE, clustered stats, and HTML report - #69
Merged
Merged
Conversation
vtavakkoli
marked this pull request as ready for review
August 17, 2026 20:23
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
Final publication-evidence hardening for the full COMMAG benchmark. This PR addresses the methodological issues found in the first full run and adds a self-contained visual report.
Scientific corrections
Independent policy evaluation
tr0–tr11training pool into disjoint policy-fit and independent-OPE-fit configuration subsetsscenario × training configuration × experimentValidation is now used
tr12–tr14now freezes, before final testing:The full validation grid and selected setting are exported. Seen/unseen final-test rows are not used during calibration.
Clustered statistical inference
Primary paired inference aggregates by
scenario × training configuration × experimentand reports equal-cluster mean utility delta, cluster bootstrap 95% CI, paired random-sign permutation p-value, Cohen's dz, and row-weighted delta as a secondary descriptive measure. UE/episode statistics are exported only asepisode_statistics_secondary.json.OOD evaluation
Adds AUROC, AUPRC, FPR@95%TPR, validation-calibrated threshold rates, per-unseen-scenario discrimination, threshold sensitivity, and existing mean/p95 OOD/fallback evidence.
Transition / shortcut audit
Adds scheduler, PRB, and joint scheduler+PRB change counts/rates per scenario/config/experiment/BS. If no within-episode joint-action changes exist, policy-change-only classifier metrics remain unavailable and the report labels feature-removal results as persistence/configuration shortcut sensitivity.
Churn / hysteresis
Adds a validation-tuned switching margin. Proposed changes with insufficient score improvement hold the current supported action. Validation records the utility/SLA/churn/rollback trade-off used to select the margin.
Latency evidence
Adds critic/OOD/selection component probes plus p50/p95/p99 host/container per-decision latency and runtime metadata. This is explicitly not presented as end-to-end RIC-to-gNB latency.
Readiness semantics
Successful execution no longer means publication readiness. Final summary separates:
run_status: EXPERIMENT-COMPLETEevidence_status: READY-FOR-MANUSCRIPTorREVIEW-REQUIREDThe evidence status comes from explicit methodological gates and is not conditioned on favorable statistical significance.
Self-contained HTML report
Generates
results/publication/report.htmlwith no external JavaScript, remote asset, font, or image dependency. Inline SVG figures cover:Main outputs
report.htmlpublication_summary.jsonpublication_baselines.csvpublication_decisions.csv.gzclustered_statistics.jsonpaired_statistics.json(compatibility alias for primary clustered inference)episode_statistics_secondary.jsonindependent_ope_fit.jsonpartition.jsonvalidation_calibration.csvvalidation_selection.jsoncql_validation.csvood_detection.jsonood_generalization.jsonood_threshold_sensitivity.csvtransition_audit.csvpolicy_shortcut_test.csvlatency_profile.jsonliterature_reference.jsonpublication_models.joblibRun
Tests
The PR includes deterministic unit tests for partitioning, config validation, independent-OPE scoring, clustered inference, OOD metrics, transition-change auditing, and self-contained SVG reporting, plus a synthetic end-to-end publication test that exercises partition → policy/OPE fitting → validation calibration → FQI/CQL/proposed scoring → clustered statistics → OOD audit → HTML generation.
The full 2M+ row COMMAG experiment must still be rerun on the target Docker host before manuscript numbers are finalized. This PR intentionally does not reuse the earlier direct-method result table as if it came from the corrected independent evaluator.