fix(devcontainer): repair postCreateCommand and pin Feature versions#1057
fix(devcontainer): repair postCreateCommand and pin Feature versions#1057talpitoo wants to merge 3 commits into
Conversation
- postCreateCommand called `npm run build:lib`, removed from the root package.json in #1004 — postCreate failed after `npm install`, so the library build and the Playwright install never ran. Build the core package directly instead. - Commit devcontainer-lock.json (git 1.3.8 / node 1.7.1 by digest) so upstream Feature releases no longer invalidate the multi-minute feature-install image layer on every fresh container create; document the lockfile and its upgrade path in the README. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThe Dev Container now locks Git and Node feature artifacts, documents lockfile maintenance, runs the full package build during post-creation, and updates manual setup to build only the core workspace. ChangesDev Container setup
Estimated code review effort: 1 (Trivial) | ~5 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.devcontainer/README.md:
- Around line 48-50: Update the documentation around the devcontainers CLI
upgrade command in the README to explicitly state that it must be run from the
repository root, so the relative --workspace-folder . resolves correctly.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 608cf74b-0193-45b8-a08d-864769f03457
📒 Files selected for processing (3)
.devcontainer/README.md.devcontainer/devcontainer-lock.json.devcontainer/devcontainer.json
|
The demo can be viewed at https://openbridge-next-demo--1057-fix-devcontainer-repair-pos-f9ut041b.web.app |
|
The storybook can be viewed at https://openbridge-next-storybook--1057-fix-devcontainer-repai-414e4don.web.app |
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Fixes two independent problems that make opening a fresh dev container fail or appear to hang (root-caused from the Dev Containers creation logs and Docker events after a full cleanup + reclone).
1.
postCreateCommandhas been broken since #1004It still called
npm run build:lib, but #1004 removed that script from the rootpackage.json(2026-06-24). On every fresh container create,npm installsucceeded, then postCreate aborted with Missing script: "build:lib" — so the library build and the Playwright/Chromium install (everything after the&&) never ran. Existing containers never re-run postCreate, which is why this went unnoticed.Fixed by building the core package directly:
2. Unpinned Features cause surprise multi-minute image rebuilds
node:1/git:1are floating tags. Any upstream Feature release invalidates the feature-install Docker layer (severalaptrounds + git PPA + node toolchain), so a container create that used to be instant silently turns into a ~6-minute image rebuild (measured 5m52s). Worse, cancelling the "Starting Dev Container" spinner mid-build discards the uncommitted layer, so every retry starts from zero — which is exactly what a full cleanup (container + volume removed, fresh clone) ran into.Fixed by committing
devcontainer-lock.json(generated by the Dev Containers CLI, pins git 1.3.8 / node 1.7.1 by digest), so image builds keep hitting the cached layer until the pins are deliberately updated. The README documents the upgrade path (npx @devcontainers/cli upgrade --workspace-folder .).Related: #1004 (script removal), #1037 (persistent home volume — unaffected by this PR; the volume caches
$HOME, not image layers).🤖 Generated with Claude Code
Summary by CodeRabbit