Merged
Conversation
Update go directive from 1.26 to 1.26.0 and upgrade golangci-lint from v2.7.1 to v2.11.3 along with its transitive dependencies. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Preallocate slices with known capacity in Tags(), variants(), sa342Variants(), F32toS16LE(), S16LEToF32LE(), Frequencies(), Stacks(), and broadcastSunrise(). Remove unused HasAnyTag method. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move the 16kHz wideband sample rate to pkg/pcm/rate.Wideband for reuse across the codebase instead of duplicating in simpleradio. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The fork adds configuration options to disable fractions, indefinite articles, and "second" parsing that caused false positives in aviation brevity parsing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…w garble entries Add digit homophone handling (won→1, to/too→2, free/tree→3, for/fore→4, ate→8, niner→9), ordinal suffix stripping (1st→1, 2nd→2), and consecutive word deduplication for STT stutter (eagle eagle→eagle). Add ~40 new bogey dope garble replacements observed from Parakeet STT. Add test cases for Ford 1-1 callsign across all command types. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The Course() method was double-converting the Heading field: it cast the unit.Angle value to unit.Angle then multiplied by unit.Degree, producing incorrect bearing values. Now passes Heading directly to NewTrueBearing. Add comprehensive trackfile tests covering New, LastKnown, Update, Course, Direction, Speed, Bullseye, String, and concurrent access. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace the single-contact track direction with a circular mean of all contacts' courses. When contacts are tracking in directions spread more than 90 degrees apart, the track is reported as unknown rather than misleadingly reporting one contact's direction. Extract CallsignSimilarityThreshold constant for fuzzy matching. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Change Message.Client from ClientInfo to *ClientInfo with omitempty to correctly handle messages where Client may be absent. Add nil checks in message handlers to prevent panics. Fix copy-by-value in newMessage to avoid unintended mutations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
dharmab
commented
Mar 20, 2026
pkg/encyclopedia/aircraft.go
Outdated
| func sa342Variants() []Aircraft { | ||
| vars := []Aircraft{} | ||
| vars := make([]Aircraft, 0, 4) | ||
| for _, variant := range []string{"L", "M", "Minigun", "Mistral"} { |
Owner
Author
There was a problem hiding this comment.
should factor out the variants list to a var and then use len()
| // HasAnyTag returns true if the aircraft has any of the specified tags. | ||
| // | ||
| // Deprecated: Use slices.Contains instead. | ||
| func (a Aircraft) HasAnyTag(tags ...AircraftTag) bool { |
Owner
Author
There was a problem hiding this comment.
don't remove public functions within v1
pkg/parser/callsign.go
Outdated
| // deduplicateConsecutiveWords removes consecutive duplicate words, | ||
| // e.g. "eagle eagle 2 7" → "eagle 2 7". This handles STT stutter | ||
| // where words are repeated. | ||
| func deduplicateConsecutiveWords(tx string) string { |
Owner
Author
There was a problem hiding this comment.
this isn't an issue with whisper and can be removed for now
- Restore deprecated HasAnyTag (don't remove public APIs in v1) - Factor sa342 variant names to a local var and use len() for prealloc - Remove deduplicateConsecutiveWords (not needed for Whisper STT) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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
Backports non-breaking improvements from the v2-dev branch to main. The v2 model changes (Parakeet STT, Pocket TTS) are excluded since they have quality issues; only bug fixes, code quality improvements, and feature enhancements are included.
Changes
HasAnyTag()pkg/pcm/rate.Widebanddharmab/numwordswith configurable fraction/article/second parsingCourse()+ comprehensive test suiteClientfield inMessagetype, copy-by-value fix innewMessage()Not included from v2-dev
Test plan
make lint- 0 issuesmake vet- passesmake test- 942 tests passgo mod tidy && git diff --exit-code- clean🤖 Generated with Claude Code