v1.2.0
AntHocNet v1.2.0. See CHANGELOG.md.
Install bundle (anthocnet-1.2.0.zip) — the source to
drop onto your own simulator tree:
make install-ns3 NS3DIR=… or make install-ns2 NS2DIR=….
Pre-built simulator images are on GHCR (see docker/README.md),
including release-pinned tags anthocnet-ns{2,3}:<sim-version>-v1.2.0.
What's Changed
- docs: record the per-version Zenodo DOIs, which nothing tracked by @danieljoppi in #191
- feat(bench): measure radio energy for all four protocols by @danieljoppi in #219
- docs(context): stop asserting issue state in prose — every "open" issue it named was closed by @danieljoppi in #220
- feat(bench): measure packet reordering, the documented cost of multipath by @danieljoppi in #221
- feat(bench): break down packet drops by cause, and fix a silent queue eviction found doing it by @danieljoppi in #222
- feat(bench): measure path diversity, path length and flow fairness by @danieljoppi in #223
- feat(ns3): route next hops per interface and add the isl-grid scenario by @danieljoppi in #224
- docs(bench): stop quoting generated numbers in the caveat — it has now rotted four times by @danieljoppi in #225
- docs: survey aco routing prior art on leo constellations by @danieljoppi in #227
- test(ns3): assert isl-grid builds the topology it claims by @danieljoppi in #228
- docs: check the leo survey's section 2 against the source and withdraw a claim by @danieljoppi in #231
- docs: record what the ducatelle thesis answered, and one estimator mismatch it exposed by @danieljoppi in #232
- docs: adr-0015 — one anthocnet build, satellite substrate in the image by @danieljoppi in #236
- test(bench): satellite validation anchors on the isl topology by @danieljoppi in #238
- docs: what protocols actually run on satellites, and what that does to our baselines by @danieljoppi in #239
- docs: why satellite is not manet — diagrams and the differences that bite by @danieljoppi in #240
- feat(core): per-ant-type gates and directed reactive discovery by @danieljoppi in #243
- fix(benchmarks): catch the metric defects the campaigns exposed, and the gate starvation that hid them by @danieljoppi in #242
- docs(adr): record the directed-reactive decision (ADR-0016) and its open hazard by @danieljoppi in #246
- feat(bench): add the thesis's eq 5.1 delay jitter alongside the FlowMonitor column by @danieljoppi in #247
- fix(bench): carry jitter_eq51_ms through the campaign CSV by @danieljoppi in #249
- feat(core): land the proactive emission gate, default OFF, with its experiment by @danieljoppi in #252
- fix(skills): validate ##BENCH## cells' diagnostic lines, not just the table by @danieljoppi in #253
- fix(core): restore proactiveInterval to 10 s — #252 leaked the 2 s rate it claimed not to ship by @danieljoppi in #255
- feat(bench): split the benchmark surface into MANET and satellite views by @danieljoppi in #257
- fix(ns2): add missing ns-default.tcl entries for four tcl-bound parameters by @danieljoppi in #261
- test(core): pin every Config default; add cross-tree parity check by @danieljoppi in #264
- feat(skills): satellite results pipeline — validate, parse and commit isl-grid output by @danieljoppi in #265
- feat(ns3): fast ISL failure detection via interface-down + failcell detect/reconverge split by @danieljoppi in #266
- fix(bench): keep OOM forensics — print and upload time -v + stderr on a failed benchmark run by @danieljoppi in #267
- fix(bench): stream ##RSS## samples from the paper run — forensics that survive runner death by @danieljoppi in #268
- fix(bench): cap sim address space at 13 GiB so an OOM dies gracefully, not with the runner by @danieljoppi in #269
- fix(bench): let --energyJ=0 disable the energy model — the #256 OOM is its cancelled switchToOff events by @danieljoppi in #270
- fix(bench): leak-free energy accounting — integrate the PHY State trace, drop BasicEnergySource + WifiRadioEnergyModel by @danieljoppi in #271
- feat(bench): adopt the dedicated diversity cell — floor-relative gate at the churn-free window by @danieljoppi in #273
- docs: proactiveInterval provenance moves from unknown to measured — the #248 sweep verdict by @danieljoppi in #274
- feat(core): virtual pheromone ages on the regular table's time-proportional clock (#262) by @danieljoppi in #275
- feat(core): the ILinkState congestion queries name the next hop — the stamp moves to where the interface is known (#206) by @danieljoppi in #276
- feat(ns3): per-interface transmit-queue congestion reader for the p2p/ISL regime + ADR-0017 (#206) by @danieljoppi in #277
- test(core): uniformity probe experiment — v/r on the #262 clock, the #180 gate's empirical basis by @danieljoppi in #278
- feat(bench): the asymmetric-congestion corridor cell on the ISL torus — #216 cell 1 by @danieljoppi in #280
- fix(bench): the corridor background transmits at constant duty — the OnOff default off-phase zeroed the congestion signal every other second by @danieljoppi in #282
- fix(core): receptions refresh the 1-hop pheromone at the metric's unloaded 1-hop value — not the legacy constant 1.0 (#279) by @danieljoppi in #283
- feat(core): the proactive emission gate compares per-link — the #180 re-derivation, ADR-0018 by @danieljoppi in #284
- docs: open-source front door + accuracy audit — fix count/default drift, add docs map, ADR index, CI reproducibility by @danieljoppi in #285
- docs: add the PR template — verification and record sections mirror the repo's merge discipline by @danieljoppi in #286
- docs: metrics.md energy section catches up with the #271 model — trace integration, not BasicEnergySource by @danieljoppi in #287
- feat(bench): corridor-cell pheromone sampler — the #216 mechanism trace for arms that fail to shift by @danieljoppi in #288
Full Changelog: v1.1.0...v1.2.0