fix(security): redact articulation failure logs - #956
Conversation
|
Warning Review limit reachedNext included review available in 21 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@opencode-agent review Review exact current head |
Security/privacy repair
analyze_articulation()is intentionally fail-safe, but protecteddevelopstill logs unexpected dependency failures withexc_info=True. That routine path can serialize dependency-controlled exception messages and traceback paths even though the public API returns the neutral articulation result.Exact current identity
develop.749511c3ad4000090048718f685c6bee6b3d2c25.198344ed100d7a592b9727546fee55322f79d232.fix/articulation-log-privacy.The current head is a non-force two-parent merge refresh: predecessor repair head
68f337fe835f928b54e734b4442bee2c64634e01plus live protecteddevelop@749511c3ad4000090048718f685c6bee6b3d2c25. Its tree is the protected tree with only this PR's three owned files overlaid, so intervening protected product/dependency work is preserved rather than overwritten. The independently resolved merge base is now the live protected tip.Regression-first repair
RED
f13b6e149f274551a78ec1cae81184021533c11einjects/Users/Alice/private-articulation.wav token=super-secretthrough the existinglibrosa.onset.onset_strengthfailure path and requires the establishedSAFE_DEFAULT, stable operation-level diagnostics, no path/filename/secret payload, and no retained traceback.Production catches the unexpected exception, preserves the neutral result, and logs only the BandScope-owned operation plus
type(error).__name__; raw dependency messages and traceback data are not retained in this routine log path. Module security notes andCHANGELOG.mddescribe the same boundary.Pre-merge successor
68f337fe835f928b54e734b4442bee2c64634e01strengthened the regression so aRuntimeErrormust produce exactlyArticulation analysis failed; returning safe default (RuntimeError)while the injected sensitive payload remains absent andexc_inforemains unset. Current merge head198344ed100d7a592b9727546fee55322f79d232preserves that test and production repair unchanged while refreshing the protected base.Scope / ownership
This lane changes only articulation safe-failure logging, its focused regression, and truthful Unreleased documentation. It does not change onset/RMS computation, classification thresholds, articulation mathematics, public result schema, dependencies, lockfiles, models, filesystem/network/IPC authority, workflows, credentials, or vulnerability suppression. Overlap logging remains #873-owned and range-analysis logging remains #951-owned.
#783 JavaScript dependency-security remediation is already protected shipped truth and is preserved by this branch refresh. Any current-head failure must be inspected at its current job/log/checkout boundary before classification.
Verification state
A same-head Devin review on predecessor
68f337fe835f928b54e734b4442bee2c64634e01reported no issues, but it is predecessor review evidence after the merge refresh and is not counted as approval/current-head proof. The PR currently has no qualifying independent non-author approval.Fresh repository/central verification for exact current head
198344ed100d7a592b9727546fee55322f79d232must reach terminal success. No predecessor check, queued/pending/skipped job, protected-base run, or model-only result transfers to this head.Merge gate
Do not merge or enable auto-merge until one unchanged exact head has every applicable repository and central CI/security/SAST/SBOM/supply-chain/release/coverage/review gate terminal-success, exact required owned coverage/docstring evidence, zero valid unresolved current-head findings, a qualifying independent non-author last-push approval, and ordinary protected-branch acceptance without bypass.
Queued, pending, skipped-required, cancelled, failed, predecessor-head, protected-base, status-only/model-only, self/author, neutral, rate-limited, or administrative-bypass evidence is non-passing.