crunchloop / crunchloop/devcontainer
devcontainer-lock.json: feature lockfile not produced or honored
- Langage dominant
- Go
- Étoiles
- 5
- Forks
- 0
- Merge moyen
- 6 h 17 min
- PR mergées (30 j)
- 15
Description
## Gap
The spec defines \`devcontainer-lock.json\` for reproducible feature resolution: each feature's resolved digest is recorded so subsequent runs pin to the same content. We have content-addressed caching (\`feature/disk_store.go\`) but no lockfile write/read.
## Expected
- On \`Up\`, after feature resolution, write \`/devcontainer-lock.json\` with each feature's \`ref\` → \`resolvedRef\` (digest).
- On subsequent \`Up\`, prefer the lockfile entry over re-resolving the mutable tag.
- Refresh policy: opt-in flag (e.g. \`UpOptions.RefreshFeatures\`) re-resolves and overwrites.
## Notes
Lower priority for DAP (it pins via pre-baked images), but expected by general spec consumers and the upstream CLI ecosystem.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Start by tracing the Up feature-resolution flow and the content-addressed cache in feature/disk_store.go. Identify where UpOptions can carry RefreshFeatures and where configDir is available. Done means Up writes and reads devcontainer-lock.json entries mapping ref to resolvedRef, while refresh re-resolves and overwrites them.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- go
- Domaine
- devtools
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 52/100