v1.0.0 — Release Readiness#40
Open
OldCrow wants to merge 10 commits into
Open
Conversation
Add a root Doxyfile documenting libew/include and ewpresenter/include public headers, a docs CI job that runs doxygen and uploads docs/html as a workflow artifact, a .gitignore entry for the generated output, and a README section on building the docs locally. Closes #27. Co-Authored-By: Oz <oz-agent@warp.dev>
Backfill CHANGELOG.md in Keep a Changelog format from README's existing per-version summaries (v0.6.0 through v0.9.0), using real tag dates from git history. Add CONTRIBUTING.md covering the branch/PR workflow, build and test instructions (including sanitizer/static-analysis/coverage builds matching CI), code style, and the three-layer pattern for adding a new calculator. Link both from README.md. Closes #26. Co-Authored-By: Oz <oz-agent@warp.dev>
…nk/receiver Tighten and verify the // Source: citation comments in test_propagation.cpp, test_antenna.cpp, test_link.cpp, and test_receiver.cpp for GitHub issues #28+#29 (formula audit, docs/formulas.md source data). Verified each formula against independently-checkable derivations: - FSPL, two-ray ground reflection, Fresnel crossover, knife-edge diffraction (Lee/ITU-R P.526), earth bulge, and radar horizon all check out analytically. - Precise page citations added for FSPL, two-ray path loss, one-way link budget/effective range, and receiver sensitivity, sourced from Dave Adamy's "EW 101 -- ES vs. SIGINT" JED column series (Feb/Mar 2011), whose intercept- range and sensitivity formulas match this repo's constants exactly. - Flagged (not fixed): antenna::beamwidth_from_gain's "11.1" constant does not reproduce any standard single-beamwidth gain-directivity relation in degrees, and its "Tai & Pereira" attribution is unverified (that reference is a two-plane formula). See completion report for full discrepancy detail. - Remaining precise page/equation numbers not covered by available sources are marked [OPEN: page/eq TBD] rather than fabricated. No implementation logic changed; all 13 ctest targets still pass. Co-Authored-By: Oz <oz-agent@warp.dev>
…ital Audit assigned domains (issues #28, #29): jamming and radar test citations added from scratch; location and digital citations tightened to specific Adamy EW102 sections/pages verified against the book's table of contents. No implementation logic changed (libew/src, libew/include untouched). Discrepancies found (not fixed here, reported separately): - jamming.h partial-band doc comment describes stale pre-v0.7.0 behavior (caps bandwidth at signal_bandwidth for J/S >= 0) that contradicts the current implementation and tests (widens bandwidth instead). - radar.h attributes lpi_advantage to "Adamy EW103, LPI radar chapter", but EW103 covers communications EW; LPI radar content is in EW102 Sec 3.9. Co-Authored-By: Oz <oz-agent@warp.dev>
# Conflicts: # README.md
- Make beamwidth_from_gain the circular inverse of gain_from_beamwidth, using the same 30000 beam-shape constant and updating antenna tests - Correct stale partial-band jamming documentation to match the v0.7+ implementation behavior - Correct LPI advantage citation from EW103 to EW102 - Update docs/formulas.md to describe the corrected antenna formula Closes #37 Closes #38 Closes #39 Co-Authored-By: Oz <oz-agent@warp.dev>
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
Implements the v1.0.0 — Release Readiness milestone and folds in the formula-audit follow-ups discovered during implementation.
Closes #26
Closes #27
Closes #28
Closes #29
Closes #37
Closes #38
Closes #39
Changes
#26 — Release docs
CHANGELOG.mdin Keep a Changelog format, backfilled from existing README release history.CONTRIBUTING.mdcovering branch/PR workflow, build/test guidance, style conventions, and the three-layer calculator pattern.README.md.#27 — API docs
Doxyfileforlibew/includeandewpresenter/include.docsCI job that runs Doxygen and uploadsdocs/html/as an artifact.docs/html/to.gitignore.README.md.#28/#29 — Formula references and audit
docs/formulas.mdmapping calculator outputs to equations, sources, assumptions, sign conventions, and unit conventions.libew/tests/test_*.cppdomain tests.[OPEN]markers only where exact book equation/page pins remain unavailable.#37–#39 — Formula-audit follow-ups
beamwidth_from_gain()to be the circular/symmetric inverse ofgain_from_beamwidth(), using the same30000beam-shape constant. Updated antenna docs/tests anddocs/formulas.md.partial_band_jamming()header documentation to match the v0.7+ implementation: bandwidth scales bysignal_bw * 10^(J/S/10)and is capped only by hop range.radar.h.Validation
ctest: 13/13 tests pass.docs/html/index.htmlgenerated).git diff --check: pass.cppcheckandclang-tidyon touched antenna implementation/test files: no user-code findings reported.Notes
Artifacts
Plan: ewcalc v1.0.0 — Release Readiness
Conversation
Co-Authored-By: Oz oz-agent@warp.dev