Skip to content

fix(bridge): main build break — dspEngineSnapshot uses removed AudioEngine bnr* API#3931

Merged
ten9876 merged 1 commit into
mainfrom
fix/automation-bnr-afx-build
Jun 30, 2026
Merged

fix(bridge): main build break — dspEngineSnapshot uses removed AudioEngine bnr* API#3931
ten9876 merged 1 commit into
mainfrom
fix/automation-bnr-afx-build

Conversation

@ten9876

@ten9876 ten9876 commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

🔴 main does not compile

AutomationServer.cpp::dspEngineSnapshot() (added in #3920) calls AudioEngine::bnrEnabled() / bnrIntensity() / bnrAddress() / bnrConnected(), but #3902 removed those when it replaced the containerized Maxine-NIM BNR with the in-process AFX denoiser (AudioEngine now exposes nvAfxEnabled() etc.).

AutomationServer.cpp(1235): error C2039: 'bnrEnabled': is not a member of 'AudioEngine'
AutomationServer.cpp(1259): error C2039: 'bnrIntensity' ...
AutomationServer.cpp(1260): error C2039: 'bnrAddress' ...
AutomationServer.cpp(1261): error C2039: 'bnrConnected' ...

These are platform-independent member errors, so every build is red. #3920 was CI-green against a pre-#3902 base, so the semantic conflict slipped through on merge (no re-CI of the merged result).

Fix

  • a->bnrEnabled()a->nvAfxEnabled() (always present, even on non-AFX builds), and the availability guard HAVE_BNRHAVE_NVIDIA_AFX (HAVE_BNR is no longer defined anywhere).
  • The in-process AFX has no container, so address/connected are dropped from the bnr tuning; report the persisted NvidiaBnrSettings::intensity() instead.

One file, no behavior change beyond the snapshot's BNR fields. All other bnr* references in the tree were checked — these four were the only stale ones.

🤖 Generated with Claude Code

… bnr* API

main does not compile: AutomationServer.cpp's dspEngineSnapshot() (added in
#3920) calls AudioEngine::bnrEnabled()/bnrIntensity()/bnrAddress()/
bnrConnected(), but #3902 removed the old container-BNR API from AudioEngine
when it replaced the Maxine NIM container with the in-process AFX denoiser.
#3920 was CI-green against a pre-#3902 base, so the semantic break slipped
through on merge — every platform's build is now red (the failing TU is the
first to reference these symbols).

- BNR enabled: a->bnrEnabled() -> a->nvAfxEnabled() (always present), and the
  availability guard HAVE_BNR -> HAVE_NVIDIA_AFX (HAVE_BNR is no longer defined).
- BNR tuning: the in-process AFX has no container, so address/connected are
  gone; report the persisted NvidiaBnrSettings::intensity() instead.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ten9876 ten9876 requested a review from a team as a code owner June 30, 2026 22:48
@ten9876 ten9876 merged commit 63c3eb9 into main Jun 30, 2026
5 checks passed
@ten9876 ten9876 deleted the fix/automation-bnr-afx-build branch June 30, 2026 23:15
ten9876 added a commit that referenced this pull request Jul 2, 2026
#3961)

## Release documentation prep for **v26.7.1** (2026-07-02)

29 commits since v26.6.5. Docs-only + version bump — no code behavior
change.

### Version bump 26.6.5 → 26.7.1
The three canonical locations (per `AGENTS.md`):
- `CMakeLists.txt:2` — `project(AetherSDR VERSION 26.7.1)` →
`AETHERSDR_VERSION` (the app's version string)
- `README.md` — Current version line
- `AGENTS.md` — Current version line

### `CHANGELOG.md`
Promoted `[Unreleased]` → **`## [v26.7.1] — 2026-07-02`** in house style
(v-prefix, em-dash, "N commits since…" opener + headline), authored from
all merged PRs and categorized:
- **Added:** 3D stacked-trace spectrum (#3899), 3D dBm scale (#3937),
in-process NVIDIA BNR + AFX download-on-demand (#3902), TX meter
mouse-over readouts (#3936), SWR manual sweep range (#3885), CW sidetone
capture (#3895), KiwiSDR metadata scaffolding (#3898), bridge verbs
(#3920)
- **Changed:** BNR container/NIM backend removed, 60 fps + per-pixel GPU
FFT trace (#3958), FlexLib-sourced model capabilities (#3954/#2177), RX
speaker-latency cut (#3897), Display pane sections (#3935)
- **Fixed:** #3922, #3926, #3941, #3940, #3942, #3921, #3903, #3892,
#3924, #3891, #3890, #3900, #3947
- Fresh empty `[Unreleased]` restored above the release block.
Internal/CI/docs/self-fix PRs (#3931/#3916/#3934/#3929) omitted per
house style.

### `ROADMAP.md`
- Cycle header → "post-v26.7.1"
- NVIDIA BNR removed from **In flight** (shipped this cycle)
- Five v26.7.1 highlights prepended to **Recently shipped**

### `README.md`
- Highlights: GPU spectrum bullet now notes the **per-pixel FFT trace at
up to 60 fps** and the **3D stacked-trace** spectrum mode

### Reviewer notes
- Touches protected paths (`*.md` + `AGENTS.md` Tier-1 +
`CMakeLists.txt`) — needs `@aethersdr/infrastructure` sign-off.
- Tagging `v26.7.1` and cutting the release build are **not** part of
this PR (docs prep only).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant