fix: Patch js-yaml security overrides - #280
Conversation
Pin js-yaml@3.15.2 and js-yaml@4.3.2 to resolve CVE-2026-84375 (GHSA-2883-xcg3-v3hh) in both installed major lines. Supply-chain exception (SUPPLY-CHAIN-SECURITY.md section 3): both exact versions were published about 13.2 days before review, just inside the 14-day floor. The human-reviewed exception verified upstream source and generated bundles against the release tags, npm registry signatures and integrities, the unchanged publisher/dependency/script metadata, absence of install lifecycle scripts, and the exploit regression. Production audit and the full project suite pass. Reviewed-by: Joshua Levy (github.com/jlevy) Refs: tbd-r82u
|
|
Overall Grade |
Security Reliability Complexity Hygiene |
Code Review Summary
| Analyzer | Status | Updated (UTC) | Details |
|---|---|---|---|
| Secrets | Sep 9, 2026 2:07a.m. | Review ↗ |
Important
AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.
Coverage Report for packages/tbd
File CoverageNo changed files found. |
Senior engineering reviewScopeReviewed PR #280 at the exact layer VerdictApprove. I found no actionable findings. The change is the smallest valid patch: it preserves the two installed major lines, pins each to the exact patched release, updates only the corresponding lockfile records, and leaves the rest of the dependency graph unchanged. Finding count: 0 Blocker, 0 High, 0 Medium, 0 Low. FindingsNone. Design assessment
DocumentationNo repository documentation change is required for this dependency-only security patch. The PR body and commit message contain the durable exception record and compatibility note. Suggestions
False positives / do not fix
CI statusAll 7/7 current checks pass at exact head Primary references: GitHub advisory, upstream security PR, and pnpm 10 override documentation. |
Review dispositionAddressed the senior review at
|
Check every tracker claim in the plan against the code on main and read open PRs #278 through #283, then revise: - Replace the #265 root cause. The permanent loop is linked, open, not-ready beads: the outbound path writes slot backlog as open (Todo), slotToLinear is never called, and the base alternates backlog/todo. The In Review mechanism settles; tie_break plays no part. - Replace the #267 fix. A duplicate is written to Linear as Canceled while the base records duplicate; clearing duplicate_of on the resulting pull would delete the pointer. Fix the round trip instead. - Add Phase 1B, one sync engine (tbd-dqiq): --push and --pull filter one reconciled plan, selectors work in every mode, and the only overwrite is --take local|remote. Evaluate push-only use cases. - Add Relationship to Open PRs: #280 must merge first (CI audit); #278, #279, #282 can merge in parallel; the sprint's docs and checkbox edits wait for #283. - Record gaps in the unmerged 2026-08-28 branch, and correct Phase 2 (classify spec paths against trunk), Phase 3 (subtree depth, single write), Phase 4 (prefix check in resolveToInternalId, Node 22.12), and Phase 5 (Codex hook ownership bug, #180/#181 narrowing, #195 criterion 4). Beads: 9 new (tbd-m80i, tbd-mjb7, tbd-6md1, tbd-8x2a, tbd-9tj0, tbd-1hdt, tbd-qeug, tbd-du2x, tbd-ddsp); descriptions revised on the affected existing beads. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Check every tracker claim in the plan against the code on main and read open PRs #278 through #283, then revise: - Replace the #265 root cause. The permanent loop is linked, open, not-ready beads: the outbound path writes slot backlog as open (Todo), slotToLinear is never called, and the base alternates backlog/todo. The In Review mechanism settles; tie_break plays no part. - Replace the #267 fix. A duplicate is written to Linear as Canceled while the base records duplicate; clearing duplicate_of on the resulting pull would delete the pointer. Fix the round trip instead. - Add Phase 1B, one sync engine (tbd-dqiq): --push and --pull filter one reconciled plan, selectors work in every mode, and the only overwrite is --take local|remote. Evaluate push-only use cases. - Add Relationship to Open PRs: #280 must merge first (CI audit); #278, #279, #282 can merge in parallel; the sprint's docs and checkbox edits wait for #283. - Record gaps in the unmerged 2026-08-28 branch, and correct Phase 2 (classify spec paths against trunk), Phase 3 (subtree depth, single write), Phase 4 (prefix check in resolveToInternalId, Node 22.12), and Phase 5 (Codex hook ownership bug, #180/#181 narrowing, #195 criterion 4). Beads: 9 new (tbd-m80i, tbd-mjb7, tbd-6md1, tbd-8x2a, tbd-9tj0, tbd-1hdt, tbd-qeug, tbd-du2x, tbd-ddsp); descriptions revised on the affected existing beads. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…t plan - #280 is merged; #278, #279, and #282 were restacked with identical trees; #283 was restacked onto #282's new head (patch-identical). - Summarize the release-compatibility review of the stack and its follow-up beads: tbd-s3zx, tbd-apnu, and tbd-cskr gate merging #279; tbd-ajq2 (sync attic message) blocks the release; tbd-tia7 and tbd-80vz cover the agent_map fix; tbd-xzyh, tbd-af8w; release notes tbd-lz1q. - Landing beads: tbd-m88s with one child per layer, and tbd-cfcc for this plan. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…t plan - #280 is merged; #278, #279, and #282 were restacked with identical trees; #283 was restacked onto #282's new head (patch-identical). - Summarize the release-compatibility review of the stack and its follow-up beads: tbd-s3zx, tbd-apnu, and tbd-cskr gate merging #279; tbd-ajq2 (sync attic message) blocks the release; tbd-tia7 and tbd-80vz cover the agent_map fix; tbd-xzyh, tbd-af8w; release notes tbd-lz1q. - Landing beads: tbd-m88s with one child per layer, and tbd-cfcc for this plan. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A newly published high-severity advisory, GHSA-2883-xcg3-v3hh / CVE-2026-84375, makes the production audit fail for every PR through
gray-matter'sjs-yamldependency. This updates the existing exact overrides from 3.15.1/4.3.1 to the patched 3.15.2/4.3.2 releases and updates only their lockfile entries.Supply-chain exception
Both releases were approximately 13.2 days old when reviewed, just inside the repository's 14-day floor. This exception is approved after review and keeps both packages exactly pinned.
Reviewed-by: Joshua Levy (github.com/jlevy)
Validation
pnpm audit --prod— no known vulnerabilitiesnpm audit signatures— registry signatures verified in isolated 3.x and 4.x installstbd-jntctracks the discovered gap thatcheck-package-age.mjsdoes not yet inspectpnpm.overrides.Refs: tbd-r82u