Dependabot PR Processing Skill
Process dependabot pull requests efficiently by classifying them as safe (auto-merge after compile test) or manual (requires runtime/audio testing).
Classification Rules
Safe to auto-merge (compile-only verification)
These packages do NOT touch audio/voice event handling or runtime behavior:
- devDependencies (never shipped):
eslint, eslint-config-*, @types/*, typescript, prettier, lint plugins
- Auth-only SDKs:
Azure.Identity (C#), azure-identity (Java), @azure/identity (JS) — HTTP/auth layer only
- Project management SDKs:
Azure.AI.Projects — control-plane only
- Environment loading:
dotenv — startup config only
Requires manual voice/event testing
These packages participate in the audio/voice event pipeline:
- Voice SDKs:
azure-ai-voicelive (any language), @azure/ai-voicelive
- Core event libraries:
azure-core (Java) — provides BinaryData, reactive streams, WebSocket framing used by voice SDK
- Runtime frameworks:
next, express, spring-boot-starter-parent — SSR/WebSocket/server behavior changes
- UI component libraries with runtime impact:
lucide-react, @fluentui/react-components, react, react-dom
Close without merge (do manually as coordinated upgrade)
Major version bumps that likely have breaking changes:
- Any major version bump (e.g., vite 5→8, TypeScript 5→6, ESLint 9→10, Tailwind 3→4, Spring Boot 3→4)
- Check the migration guide first — if mechanical, can be batched
Processing Workflow
Step 1: Classify
For each open dependabot PR, determine:
- Is it a devDependency or runtime dependency?
- Does it touch the voice/event pipeline? (Check imports in source files for
azure-core, BinaryData, VoiceLiveAsyncClient, etc.)
- Is it a major version bump?
Step 2: Handle safe PRs
- Create a branch from main:
chore/dependabot-safe-updates
- For each safe PR, merge its branch into the working branch
- Run the build tests:
./tests/build-all.ps1
- If builds pass, push and create a single PR
- After merge, the individual dependabot PRs auto-close (or close manually)
Step 3: Consolidate manual-test PRs
- Group related manual-test PRs by project/ecosystem
- Create a single branch:
chore/dependabot-manual-review
- Apply all changes
- Create a PR with a checklist of what needs manual voice/audio testing
- Close individual dependabot PRs with comment: "Consolidated into PR #N"
Step 4: Close major-bump PRs
Close with comment explaining the major version needs a coordinated manual upgrade.
Build Test Commands
Run from repo root:
# Test everything
./tests/build-all.ps1
# Test specific language
./tests/build-all.ps1 -Language javascript
./tests/build-all.ps1 -Language java
./tests/build-all.ps1 -Language csharp
# Test specific projects
./tests/build-all.ps1 -Projects @("javascript/voice-live-avatar")
Build Quirks
- JS quickstarts have no build scripts — use
npm ci && node --check <file>.js
- Java AgentsNewQuickstart uses non-standard
pom-agent.xml
- Java ModelQuickstart has
<sourceDirectory>.</sourceDirectory> (sources in root)
- C# projects target mixed frameworks:
net8.0 and net9.0
voice-live-universal-assistant/javascript is runtime-only (Express), no build step — npm ci is sufficient
1---2name: dependabot-pr-processing3description: Dependabot PR Processing Skill4---56# Dependabot PR Processing Skill78Process dependabot pull requests efficiently by classifying them as safe (auto-merge after compile test) or manual (requires runtime/audio testing).910## Classification Rules1112### Safe to auto-merge (compile-only verification)13These packages do NOT touch audio/voice event handling or runtime behavior:1415- **devDependencies** (never shipped): `eslint`, `eslint-config-*`, `@types/*`, `typescript`, `prettier`, lint plugins16- **Auth-only SDKs**: `Azure.Identity` (C#), `azure-identity` (Java), `@azure/identity` (JS) — HTTP/auth layer only17- **Project management SDKs**: `Azure.AI.Projects` — control-plane only18- **Environment loading**: `dotenv` — startup config only1920### Requires manual voice/event testing21These packages participate in the audio/voice event pipeline:2223- **Voice SDKs**: `azure-ai-voicelive` (any language), `@azure/ai-voicelive`24- **Core event libraries**: `azure-core` (Java) — provides `BinaryData`, reactive streams, WebSocket framing used by voice SDK25- **Runtime frameworks**: `next`, `express`, `spring-boot-starter-parent` — SSR/WebSocket/server behavior changes26- **UI component libraries with runtime impact**: `lucide-react`, `@fluentui/react-components`, `react`, `react-dom`2728### Close without merge (do manually as coordinated upgrade)29Major version bumps that likely have breaking changes:3031- Any **major version** bump (e.g., vite 5→8, TypeScript 5→6, ESLint 9→10, Tailwind 3→4, Spring Boot 3→4)32- Check the migration guide first — if mechanical, can be batched3334## Processing Workflow3536### Step 1: Classify37For each open dependabot PR, determine:381. Is it a devDependency or runtime dependency?392. Does it touch the voice/event pipeline? (Check imports in source files for `azure-core`, `BinaryData`, `VoiceLiveAsyncClient`, etc.)403. Is it a major version bump?4142### Step 2: Handle safe PRs431. Create a branch from main: `chore/dependabot-safe-updates`442. For each safe PR, merge its branch into the working branch453. Run the build tests: `./tests/build-all.ps1`464. If builds pass, push and create a single PR475. After merge, the individual dependabot PRs auto-close (or close manually)4849### Step 3: Consolidate manual-test PRs501. Group related manual-test PRs by project/ecosystem512. Create a single branch: `chore/dependabot-manual-review`523. Apply all changes534. Create a PR with a checklist of what needs manual voice/audio testing545. Close individual dependabot PRs with comment: "Consolidated into PR #N"5556### Step 4: Close major-bump PRs57Close with comment explaining the major version needs a coordinated manual upgrade.5859## Build Test Commands6061Run from repo root:6263```powershell64# Test everything65./tests/build-all.ps16667# Test specific language68./tests/build-all.ps1 -Language javascript69./tests/build-all.ps1 -Language java70./tests/build-all.ps1 -Language csharp7172# Test specific projects73./tests/build-all.ps1 -Projects @("javascript/voice-live-avatar")74```7576## Build Quirks77- JS quickstarts have no build scripts — use `npm ci && node --check <file>.js`78- Java AgentsNewQuickstart uses non-standard `pom-agent.xml`79- Java ModelQuickstart has `<sourceDirectory>.</sourceDirectory>` (sources in root)80- C# projects target mixed frameworks: `net8.0` and `net9.0`81- `voice-live-universal-assistant/javascript` is runtime-only (Express), no build step — `npm ci` is sufficient