|
| 1 | +# Package Wave · 2026-03-13b |
| 2 | + |
| 3 | +## Intent Declaration |
| 4 | + |
| 5 | +**Work Type**: feature |
| 6 | +**Confidence**: high |
| 7 | + |
| 8 | +**Scope**: |
| 9 | + |
| 10 | +- Files: dependency lockfiles and plan file; only minimal code changes if validation exposes a real compatibility issue |
| 11 | +- Systems: server runtime/tooling and remotion workspace |
| 12 | +- Risk: medium |
| 13 | + |
| 14 | +**What is being replaced?**: No systems are being replaced. This wave validates and integrates the four currently open dependency PRs while leaving the release PR (`#81`) for later refresh/review. |
| 15 | + |
| 16 | +**Problem Statement**: After the prior dependency wave landed, a fresh set of package PRs opened. We need to systematically validate and integrate them in risk order instead of merging them blindly or conflating them with the stale release PR. |
| 17 | + |
| 18 | +## Scope |
| 19 | + |
| 20 | +- `#92` `@modelcontextprotocol/sdk` → `1.27.1` |
| 21 | +- `#91` `eslint` monorepo → `9.39.4` |
| 22 | +- `#90` `remotion` → `4.0.435` |
| 23 | +- `#93` `@react-three/drei` → `9.122.0` |
| 24 | +- Excluded: `#81` release PR |
| 25 | + |
| 26 | +## Planned Buckets |
| 27 | + |
| 28 | +### Bucket A · runtime / tooling |
| 29 | +- `#92` MCP SDK |
| 30 | +- `#91` eslint monorepo |
| 31 | + |
| 32 | +### Bucket B · remotion / three |
| 33 | +- `#90` remotion |
| 34 | +- `#93` @react-three/drei |
| 35 | + |
| 36 | +## Validation Lanes |
| 37 | + |
| 38 | +### Server lane |
| 39 | +- `cd server` |
| 40 | +- `export npm_config_cache=/tmp/npm-cache-package-wave-2026-03-13b` |
| 41 | +- `npm ci --prefer-offline --no-audit` |
| 42 | +- `npm run typecheck` |
| 43 | +- `npm run build` |
| 44 | +- `npm run test:ci` |
| 45 | +- `npm run start:test` |
| 46 | +- `npm run validate:arch` |
| 47 | + |
| 48 | +### Remotion lane |
| 49 | +- `cd remotion` |
| 50 | +- `export npm_config_cache=/tmp/npm-cache-package-wave-2026-03-13b-remotion` |
| 51 | +- `npm ci --prefer-offline --no-audit` |
| 52 | +- `npm run typecheck` |
| 53 | + |
| 54 | +## Phases |
| 55 | + |
| 56 | +### Phase 1.0 · inspect scope |
| 57 | +- confirm which files each PR touches |
| 58 | +- adjust validation order if needed |
| 59 | + |
| 60 | +### Phase 2.0 · Bucket A validate + merge |
| 61 | +- merge `#92` |
| 62 | +- run full server lane |
| 63 | +- merge `#91` |
| 64 | +- rerun full server lane |
| 65 | + |
| 66 | +#### Status |
| 67 | +- ✅ `#92` merged and passed the full server validation lane |
| 68 | +- ✅ `#91` merged on top of `#92` and passed the full server validation lane |
| 69 | +- No follow-up code changes were required for Bucket A |
| 70 | + |
| 71 | +### Phase 3.0 · Bucket B validate + merge |
| 72 | +- merge remotion PRs on a validated base |
| 73 | +- run cumulative remotion validation |
| 74 | + |
| 75 | +#### Status |
| 76 | +- ✅ created a separate validated remotion lane from the Bucket A integration branch |
| 77 | +- ✅ merged `#90` and `#93` into that remotion lane |
| 78 | +- ⚠️ encountered a real lockfile merge conflict in `remotion/package-lock.json` |
| 79 | +- ✅ resolved the conflict by regenerating the lockfile to the combined desired versions: |
| 80 | + - `remotion@4.0.435` |
| 81 | + - `@react-three/drei@9.122.0` |
| 82 | +- ✅ cumulative remotion validation passed: |
| 83 | + - `npm ci --prefer-offline --no-audit` |
| 84 | + - `npm run typecheck` |
| 85 | +- ✅ merged the validated remotion lane back into the main integration branch |
| 86 | + |
| 87 | +### Phase 4.0 · closeout |
| 88 | +- merge validated branch back to `main` |
| 89 | +- summarize remaining open PR state |
| 90 | + |
| 91 | +#### Status |
| 92 | +- ⏳ validated integration branch ready to merge back to `main` |
| 93 | +- `#81` remains intentionally excluded as the release PR |
0 commit comments