AhmadHassan-BTed/AhSilence
73.5
Strong · 21 September 2026
1.1k
lines of production code
Kotlin
with C, C++
4
measurements over time
What this system is
This system is an Android application featuring a native Active Noise Cancellation (ANC) engine built with the Oboe library and C++. It processes audio in real-time using an adaptive filter to generate anti-noise, allowing for dynamic adjustment of gain and phase parameters. The architecture utilizes a multi-module structure with dependency injection to manage the foreground service and DSP engine, ensuring low-latency performance and centralized configuration.
Features
Introduce native ANC engine with adaptive noise cancellation
The application now includes a native Android library (ancengine) that implements Active Noise Cancellation using the Oboe audio streaming library. This engine processes audio in real-time via a FullDuplexStream, utilizing a narrowband Filtered-X Normalized LMS (FxNLMS) adaptive filter to generate anti-noise based on a synthesized reference oscillator. Users benefit from a native, low-latency implementation that allows for dynamic adjustment of gain and phase parameters to target specific noise frequencies.
ancengine · high confidence
Behavioural changes
Active Hum Service refactored to use centralized constants and dependency injection
The foreground service handling the anti-noise emission has been restructured to remove hardcoded configuration values and tight coupling. Intent actions, notification identifiers, and default calibration parameters are now sourced from a centralized \AudioConstants\ object, while the DSP engine is resolved via a new \AudioEngineLocator\ dependency injection mechanism. This change also updates the service to use string resources for notification text and channel names, and adds the necessary Android manifest permissions for audio recording and foreground media playback.
app/src · high confidence
Dependencies
Project initialization and native ANC engine integration
The project has been initialized with a multi-module structure, adding a new ':ancengine' module for native audio processing. This module integrates the Oboe library (v1.10.0) for low-latency audio streaming and uses CMake for native compilation. The main app module now depends on this engine and adopts a version catalog for dependency management, explicitly including AndroidX Lifecycle ViewModel Compose (v2.8.3) and Kotlinx Coroutines (v1.8.1). Build configurations have been standardized to use SDK 36, NDK 27.1, and Java/Kotlin 11, with release builds enabling minification and resource shrinking. Additionally, Gradle properties were updated to enable parallel execution, configuration caching, and build caching for improved performance.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 62 → 74 (+11.2)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 96 → 93 (-2.6)
- Architecture 100 → 89 (-10.6)
- Maturity 75 → 79 (+3.5)
- Readiness 41 → 61 (+19.9)
- Security 81 → 95 (+14.0)
Resolved (16)
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Duplicated block (11 lines × 2) (app/src/main/java/com/bted/ahsilence/ui/screen/DashboardScreen.kt)
- Duplicated block (12 lines × 2) (app/src/main/java/com/bted/ahsilence/ui/screen/DashboardScreen.kt)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- LLM evaluation failed
- No automated tests
- No exposed public API
- No tests found
- Test reliability not included
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- git history depth insufficient
- single-maintainer — knowledge-concentration (bus factor) risk
New (14)
- Dependency hygiene PARTLY measured — Maven/Gradle declarations read, no dependency graph resolved
- Documentation: no installation or build instructions (README.md)
- Duplicated block (11 lines × 2) (app/src/main/java/com/bted/ahsilence/ui/screen/DashboardScreen.kt)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Hotspot: app/src/main/java/com/bted/ahsilence/data/engine/NativeAudioDSP.kt (app/src/main/java/com/bted/ahsilence/data/engine/NativeAudioDSP.kt)
- Hotspot: app/src/main/java/com/bted/ahsilence/ui/screen/DashboardScreen.kt (app/src/main/java/com/bted/ahsilence/ui/screen/DashboardScreen.kt)
- MethodTooLong: DashboardScreenKt.DashboardScreen (app/src/main/java/com/bted/ahsilence/ui/screen/DashboardScreen.kt)
- NativeAudioDSP.captureAndAnalyzeEnv (cognitive 25) (app/src/main/java/com/bted/ahsilence/data/engine/NativeAudioDSP.kt)
- NativeAudioDSP.captureAndAnalyzeEnv (cyclomatic 16) (app/src/main/java/com/bted/ahsilence/data/engine/NativeAudioDSP.kt)
- No ADRs found
- Workflow token permissions not restricted
Changes since last survey
- 1 commits — 0 feature/other, 1 fixes
By area
- app/src — 1 commit
Notable commits
- fix: fix: resolve compilation issues, DSP bounds safety, and eliminate hardcoded configurations
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
AhmadHassan-BTed/AhSilence was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit d5eae72c82e115b3b28de8e92a39d9faf4929600 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-fa71c66cabd8.