Experiments / E5
Fallback policies
Does loop avoidance improve fallback completion, and does a Grid detour justify its cost?
Pre-registered hypothesis
Greedy-with-visited reduces stuck/loop losses relative to pure greedy; Grid detour reduces those losses further or improves stretch, but may add hops. Continue/drop can win on cost or delivered-packet latency and must remain visible.
Frozen preregistration, identified and verified against this result’s manifest.
Verdict
Mixed: greedy-with-visited reduces the stuck/loop loss rate against pure greedy in 2 of 2 shells; the Grid detour shows no extra benefit, and continue wins triggered completion in C5.
- Stuck/loop loss rate, greedy_visited minus greedy_pure (paired Student-t 95%): C5 -0.222 [-0.365, -0.0796], Holm-adjusted p 0.00323; C2 -0.306 [-0.464, -0.147], Holm-adjusted p 0.000777.
- Grid detour minus greedy_visited: C5 0.0556 [-0.023, 0.134], Holm-adjusted p 0.32; C2 0 [0, 0], Holm-adjusted p 1 (identical in every run).
- Continue completes more triggered packets than greedy_visited in C5: continue 1 vs greedy_visited 0.833.
Every number in this verdict is computed at build time from the verified summary.csv and the registered paired comparisons in paired_contrasts.csv (SHA-256 a221c1c49cefa741f6fa970fde7fa067f767f2de94bdd19c1c57c3638af03f3c, checked against the manifest).
C5 orbital inputs are REAL public data; C2 orbits and positions are MODELLED. Topology, probes, faults and network behaviour are MODELLED. Starlink’s operational routing is UNKNOWN; Starlink does not use T-CRH.
Charts and data
Download CSV · Download manifest · Download paired contrasts
Source: results/E05/20261011T185503Z-confirmatory/summary.csv. SHA-256: 4df763a2e9a0ea8ba5cfcc5a31826cca04a73c9f91e457d5239b0b0ee3976df3.
This first view shows the 5 rows of the initial selection, out of 12. With scripting, the page loads the same summary.csv offered for download and checks its SHA-256 against the manifest before other selections are enabled.
Data table
Showing 1–5 of 5 matching rows. The download contains every original row and column.
| const | condition | scheme | n | complete | triggered | triggered_pdr_mean | triggered_pdr_lo | triggered_pdr_hi | stuck_rate_mean | stuck_rate_lo | stuck_rate_hi | triggered_stretch_mean_mean | triggered_extra_hops_mean_mean | infinite_tail_runs | stretch_violations | stretch_min_exact | stretch_min_adjusted | stretch_min_raw |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| C2 | trigger | continue | 36 | True | 14400 | 1.0 | 1.0 | 1.0 | 0.0 | 0.0 | 0.0 | 1.0000032216042933 | 0.5 | 0 | 0 | 1.0 | 1.0 | 0.9999608004211481 |
| C2 | trigger | drop | 36 | True | 14400 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | undefined | undefined | 36 | 0 | 1.0 | 1.0 | 0.9999608004211481 |
| C2 | trigger | greedy_pure | 36 | True | 14400 | 0.6944444444444444 | 0.5363746271745987 | 0.8525142617142901 | 0.3055555555555556 | 0.14748573828570985 | 0.4636253728254013 | undefined | undefined | 11 | 0 | 1.0 | 1.0 | 0.9999608004211481 |
| C2 | trigger | greedy_visited | 36 | True | 14400 | 1.0 | 1.0 | 1.0 | 0.0 | 0.0 | 0.0 | 1.1955543015079344 | 1.8055555555555556 | 0 | 0 | 1.0 | 1.0 | 0.9999608004211481 |
| C2 | trigger | grid_detour | 36 | True | 14400 | 1.0 | 1.0 | 1.0 | 0.0 | 0.0 | 0.0 | 1.1955543015079344 | 1.8055555555555556 | 0 | 0 | 1.0 | 1.0 | 0.9999608004211481 |
Where ChronoRoute loses
Every listed point disadvantage is retained, including privileged-oracle advantages. Where a registered paired comparison exists for the same cell, its paired Student-t 95% interval and Holm-adjusted p-value are quoted; otherwise marginal intervals alone do not establish a significant loss. Ties in the predicted stuck-loss reduction are listed as unsupported advantages.
Continue completing more triggered packets than a fallback policy is a real loss for the fallback, not an artefact.
A Grid detour that does not reduce stuck losses below greedy-with-visited is listed as an unsupported advantage.
| Cell | Metric | Policy | ChronoRoute | Comparator | Comparator value | Interpretation | Source rows |
|---|---|---|---|---|---|---|---|
| C2 / trigger | triggered_stretch_mean_mean | greedy_visited | 1.1955543015079344 | continue | 1.0000032216042933 | Point disadvantage; adjusted paired significance unavailable | 5, 2 |
| C2 / trigger | triggered_extra_hops_mean_mean | greedy_visited | 1.8055555555555556 | continue | 0.5 | Point disadvantage; adjusted paired significance unavailable | 5, 2 |
| C2 / trigger | triggered_stretch_mean_mean | grid_detour | 1.1955543015079344 | continue | 1.0000032216042933 | Point disadvantage; adjusted paired significance unavailable | 6, 2 |
| C2 / trigger | triggered_extra_hops_mean_mean | grid_detour | 1.8055555555555556 | continue | 0.5 | Point disadvantage; adjusted paired significance unavailable | 6, 2 |
| C2 / trigger | stuck_rate_mean | grid_detour | 0.0 | greedy_visited | 0.0 | Predicted reduction unsupported (tie) Not significant after adjustment; paired difference 0 [0, 0] (Student-t 95%), Holm-adjusted p 1 | 6, 5 |
| C5 / trigger | triggered_pdr_mean | greedy_visited | 0.8333333333333334 | continue | 1.0 | Point disadvantage; adjusted paired significance unavailable | 11, 8 |
| C5 / trigger | stuck_rate_mean | greedy_visited | 0.16666666666666666 | continue | 0.0 | Point disadvantage; adjusted paired significance unavailable | 11, 8 |
| C5 / trigger | stuck_rate_mean | greedy_visited | 0.16666666666666666 | drop | 0.0 | Point disadvantage; adjusted paired significance unavailable | 11, 9 |
| C5 / trigger | triggered_pdr_mean | grid_detour | 0.7777777777777778 | continue | 1.0 | Point disadvantage; adjusted paired significance unavailable | 12, 8 |
| C5 / trigger | stuck_rate_mean | grid_detour | 0.2222222222222222 | continue | 0.0 | Point disadvantage; adjusted paired significance unavailable | 12, 8 |
| C5 / trigger | stuck_rate_mean | grid_detour | 0.2222222222222222 | drop | 0.0 | Point disadvantage; adjusted paired significance unavailable | 12, 9 |
| C5 / trigger | triggered_pdr_mean | grid_detour | 0.7777777777777778 | greedy_visited | 0.8333333333333334 | Not significant after adjustment; paired difference -0.0556 [-0.134, 0.023] (Student-t 95%), Holm-adjusted p 0.32 | 12, 11 |
| C5 / trigger | stuck_rate_mean | grid_detour | 0.2222222222222222 | greedy_visited | 0.16666666666666666 | Not significant after adjustment; paired difference 0.0556 [-0.023, 0.134] (Student-t 95%), Holm-adjusted p 0.32 | 12, 11 |
Limitations
- The intervention forces the checker decision at an on-path node without adding service delay; these are policy outcomes, not false-positive data.
- Triggered-only completion and cost prevent untriggered traffic from hiding policy effects.
- Losses have infinite effective latency. Undefined trigger denominators are not zero.
- Chart intervals are marginal per-cell intervals. The verdict quotes the registered paired comparisons from paired_contrasts.csv: paired Student-t 95% intervals (primary) with Holm-adjusted p-values.
- Continue never reroutes, so it can complete more triggered packets than a fallback when the planned path still works; it remains a visible competitor.
- Raw stretch below unity can result from step crossing; use the recorded exact-domain and tolerance-adjusted checks.
These pages use only summary.csv and manifest.json, plus paired_contrasts.csv for the verdict and the paired comparisons quoted above; each file is checked against the manifest SHA-256. They do not infer missing comparisons from figures, reports, raw traces or other result files.
How this was made
- Recorded producer
- E05 confirmatory campaign (1.0.0.dev0)
- Manifest commit
- a18cffb6da450ea4449acf46f455b474fee2dcbf; dirty: false
- Run
- 9610fa72ee94fe54
- Time
- 2026-10-11T18:56:03.141804Z to 2026-10-11T19:01:20.883292Z; 317.741477 seconds of recorded host wall time (REAL)
- Snapshot
- 20261010T1358Z-celestrak; SHA-256: c37e70812155c2d1d9eeb3e96681303c00c9fca91287939b21bf5313ce83aecd
- Seeds
- 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035
- Command
venv/bin/python -B experiments/policy_campaign.py --out results/E05/20261011T185503Z-confirmatory --workers 8 --prior results/E04/20261011T185503Z-collected --experiment E05
- Config SHA-256
6cdfbf1c65becdefa1499f461e68ccf145296cd2082f768a94c1de85e093d95b- Labels
- isl_topology_grid4: MODELLED
- link_rate_and_queues: MODELLED
- orbital_elements: REAL
- routes_and_budgets: DERIVED
- traffic_probes: MODELLED
C2 override: C2 elements and positions MODELLED
- Manifest
chronoroute.manifest/1; 450 recorded output files (5088698 bytes); 8 recorded input hashes. Download the full manifest (84875 bytes, SHA-256
c93abef7351d9ff2db99c9b66fc8d047c58b693cea7c989acc1596876826f3a7) for the configuration, versions, host and every input and output hash.summary.csv: 17090 bytes, SHA-2564df763a2e9a0ea8ba5cfcc5a31826cca04a73c9f91e457d5239b0b0ee3976df3paired_contrasts.csv: 4356 bytes, SHA-256a221c1c49cefa741f6fa970fde7fa067f767f2de94bdd19c1c57c3638af03f3c- Versions: chronoroute 1.0.0.dev0; matplotlib 3.11.1; networkx 3.6.1; numpy 2.5.3; python 3.14.4; sgp4 2.27
- Host (REAL): cpu_model: 13th Gen Intel(R) Core(TM) i9-13900H; logical_cores: 20; machine: x86_64; platform: Linux-6.18.33.2-microsoft-standard-WSL2-x86_64-with-glibc2.43; ram_bytes: 8131358720
For collected results, the manifest commit identifies the collector. Input hashes preserve the producer chain in the downloaded manifest; this page does not load those additional files.