Skip to content

Commit 145830b

Browse files
mariomeyerclaude
andcommitted
fix(ci): restore multi-arch Docker builds by adding platform to matrix
The `include` entries for linux/amd64 and linux/arm64 were not cross-producted with the stack list, resulting in only one build job per stack instead of two. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 9aeeccc commit 145830b

4 files changed

Lines changed: 32 additions & 23 deletions

File tree

.github/workflows/release.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ jobs:
8080
fail-fast: true
8181
matrix:
8282
stack: [laravel]
83+
platform: [linux/amd64, linux/arm64]
8384
include:
8485
- platform: linux/amd64
8586
runner: ubuntu-latest

.planning/REQUIREMENTS.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@
1919

2020
### Next.js
2121

22-
- [ ] **NEXT-01**: Run @next/codemod upgrade for automated transforms
23-
- [ ] **NEXT-02**: Handle async request API migration (params, searchParams, cookies, headers)
24-
- [ ] **NEXT-03**: Migrate middleware to v2 compatibility
25-
- [ ] **NEXT-04**: Migrate to Turbopack config (webpack → turbopack where applicable)
26-
- [ ] **NEXT-05**: Verify build succeeds (next build)
27-
- [ ] **NEXT-06**: Audit cache semantics for v15+ no-store default change
28-
- [ ] **NEXT-07**: Grep for codemod markers (UnsafeUnwrapped, @next/codemod) and resolve or document
22+
- [x] **NEXT-01**: Run @next/codemod upgrade for automated transforms
23+
- [x] **NEXT-02**: Handle async request API migration (params, searchParams, cookies, headers)
24+
- [x] **NEXT-03**: Migrate middleware to v2 compatibility
25+
- [x] **NEXT-04**: Migrate to Turbopack config (webpack → turbopack where applicable)
26+
- [x] **NEXT-05**: Verify build succeeds (next build)
27+
- [x] **NEXT-06**: Audit cache semantics for v15+ no-store default change
28+
- [x] **NEXT-07**: Grep for codemod markers (UnsafeUnwrapped, @next/codemod) and resolve or document
2929

3030
### CRA Migration
3131

@@ -111,13 +111,13 @@
111111
| INFRA-07 | Phase 1 | Complete |
112112
| INFRA-08 | Phase 1 | Complete |
113113
| INFRA-09 | Phase 1 | Complete |
114-
| NEXT-01 | Phase 2 | Pending |
115-
| NEXT-02 | Phase 2 | Pending |
116-
| NEXT-03 | Phase 2 | Pending |
117-
| NEXT-04 | Phase 2 | Pending |
118-
| NEXT-05 | Phase 2 | Pending |
119-
| NEXT-06 | Phase 2 | Pending |
120-
| NEXT-07 | Phase 2 | Pending |
114+
| NEXT-01 | Phase 2 | Complete |
115+
| NEXT-02 | Phase 2 | Complete |
116+
| NEXT-03 | Phase 2 | Complete |
117+
| NEXT-04 | Phase 2 | Complete |
118+
| NEXT-05 | Phase 2 | Complete |
119+
| NEXT-06 | Phase 2 | Complete |
120+
| NEXT-07 | Phase 2 | Complete |
121121
| CRA-01 | Phase 2 | Complete |
122122
| CRA-02 | Phase 2 | Complete |
123123
| CRA-03 | Phase 2 | Complete |

.planning/ROADMAP.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,12 @@ Plans:
5555
2. Running the image against a bare RN repo produces a pre-upgrade audit report of native modules against New Architecture compatibility before any package version is changed
5656
3. Running the image against a bare RN repo with `TARGET_RN=0.77` produces a branch where `react-native upgrade` has run, Gradle and AGP versions match the target release, and `./gradlew assembleDebug` exits 0 (when `ANDROID_BUILD=true`)
5757
4. `verify-fast.sh` for RN includes a `./gradlew --version` check that catches Gradle/AGP version mismatch
58-
**Plans**: TBD
58+
**Plans**: 3 plans
59+
60+
Plans:
61+
- [ ] 03-01-PLAN.md — Dockerfile (Ubuntu 22.04 + JDK 17 + Android SDK 36) + entrypoint.sh + kickoff-prompt.txt + shared templates
62+
- [ ] 03-02-PLAN.md — Scripts: verify-fast.sh (Gradle/AGP check + iOS), verify-full.sh (assembleDebug), recon.sh, ralph-loop.sh, stream-pretty.sh
63+
- [ ] 03-03-PLAN.md — Templates: CLAUDE.md (agent instructions), plan.md (6-phase upgrade plan), checklist.yaml
5964

6065
### Phase 4: CLI Registry and CI Matrix
6166
**Goal**: All four new stacks are discoverable and launchable via the `stack-upgrade` CLI, and the CI pipeline builds and publishes both new Docker images on every release
@@ -75,5 +80,5 @@ Plans:
7580
|-------|----------------|--------|-----------|
7681
| 1. Shared Node Image Foundation | 3/3 | Complete | 2026-03-01 |
7782
| 2. Web JS Agent Templates | 0/3 | Not started | - |
78-
| 3. React Native Image and Templates | 0/TBD | Not started | - |
83+
| 3. React Native Image and Templates | 0/3 | Not started | - |
7984
| 4. CLI Registry and CI Matrix | 0/TBD | Not started | - |

.planning/STATE.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ gsd_state_version: 1.0
33
milestone: v1.0
44
milestone_name: milestone
55
status: unknown
6-
last_updated: "2026-03-02T02:48:51.372Z"
6+
last_updated: "2026-03-02T02:54:18.767Z"
77
progress:
88
total_phases: 2
99
completed_phases: 2
@@ -24,10 +24,10 @@ See: .planning/PROJECT.md (updated 2026-03-01)
2424

2525
Phase: 2 of 4 (Web JS Agent Templates)
2626
Plan: 3 of 3 in current phase
27-
Status: In progress
28-
Last activity: 2026-03-01 — Completed 02-03 (Vite+React CLAUDE.md, plan.md, checklist.yaml)
27+
Status: Phase complete (all 3 plans done)
28+
Last activity: 2026-03-02 — Completed 02-01 (Next.js CLAUDE.md, plan.md, checklist.yaml, entrypoint.sh fix)
2929

30-
Progress: [████░░░░░░] 42%
30+
Progress: [████░░░░░░] 50%
3131

3232
## Performance Metrics
3333

@@ -81,18 +81,21 @@ Recent decisions affecting current work:
8181
- [Phase 02-web-js-agent-templates]: REACT_APP_ documented as BUILD BLOCKER in CRA CLAUDE.md — viject does not rewrite these, agent must do it manually in Phase 2
8282
- [Phase 02-web-js-agent-templates]: Jest-to-Vitest is Phase 8 (last) in CRA migration — Jest kept as safety net throughout build migration phases 1-7
8383
- [Phase 02-web-js-agent-templates]: CI/CD REACT_APP_ references flagged but NOT modified by CRA agent — documented for human maintainer review only
84+
- [Phase 02-web-js-agent-templates]: UnsafeUnwrapped and @next/codemod markers are BUILD BLOCKERS in Next.js CLAUDE.md — verify-fast.sh exits non-zero on them
85+
- [Phase 02-web-js-agent-templates]: Next.js middleware/proxy uses next build + curl smoke test for Edge runtime verification — not Jest/Vitest (incompatible)
86+
- [Phase 02-web-js-agent-templates]: entrypoint.sh nextjs) case fetches version-specific URL (version-N) when TARGET_NEXTJS set, falls back to generic URL
8487

8588
### Pending Todos
8689

8790
None yet.
8891

8992
### Blockers/Concerns
9093

91-
- [Phase 2] Next.js middleware verification without integration tests is unresolved — middleware runs at Edge runtime, not testable with Jest/Vitest. Approach: next build check + curl against next start. Validate during Phase 2 template design.
94+
- [Phase 2] Next.js middleware verification RESOLVED — Middleware Verification Note in CLAUDE.md documents: use next build + curl against next start for smoke testing; if next start unavailable, document in run-log.md and rely on next build for static validation only.
9295
- [Phase 3] React Native Upgrade Helper programmatic access (web UI vs rn-diff-purge raw data vs embedded diff) is unresolved. Address during Phase 3 planning.
9396

9497
## Session Continuity
9598

96-
Last session: 2026-03-01
97-
Stopped at: Completed 02-03-PLAN.md (Vite+React CLAUDE.md, plan.md, checklist.yaml)
99+
Last session: 2026-03-02
100+
Stopped at: Completed 02-01-PLAN.md (Next.js CLAUDE.md, plan.md, checklist.yaml, entrypoint.sh version-specific URL fix)
98101
Resume file: None

0 commit comments

Comments
 (0)