עדכון תלויות: שינוי אחד שניתן לבדוק
קומיט קטן עוזר לאבחן; הוא אינו מבטיח חזרה חלקה לאחור.

יחידת שינוי ברורה
עדכון עשרות חבילות יחד מקשה למצוא את מקור התקלה. חבילה עצמאית לקומיט עושה את ההיסטוריה ברורה יותר. תלויות קשורות עשויות לדרוש קבוצת תאימות משותפת; מתעדים את החריגה. חזרה חלקית מקומיט גדול אפשרית לפעמים, אך קשרי תלות וקובץ נעילה עלולים להקשות.

מלאי וסיכון
Npm outdated מבחין בין מותקן, מותר בטווח המוצהר והגרסה האחרונה. Pip list --outdated מציג חבילות Python ישנות. Npm audit ו-pip-audit מחפשים חולשות ידועות במקורות שלהם; היעדר ממצא אינו הוכחת אבטחה. בודקים רלוונטיות חולשה, תיקון זמין וסיכון השינוי, ולא רק גיל גרסה.
מה מספר גרסה מבטיח
בפרויקט שמקיים Semantic Versioning עם API ציבורי מוגדר, patch הוא תיקון תואם, minor הרחבה תואמת ו-major שינוי API לא תואם. אלה כללי פרויקט, לא הבטחה לגרסה נטולת תקלות. קוראים הערות לכל גרסה; שינוי גדול דורש אישור נפרד. שומרים lockfile, מעדכנים במנהל החבילות ובודקים diff. לא מוחקים אותו כדי להסתיר סתירה.
גם הדרך חזרה דורשת בדיקה
מבקשים מהסוכן גרסה ישנה וחדשה, סיבה, תקציר changelog, diff ותוצאות build ובדיקות. כשמשהו נכשל עוצרים לפני העדכון הבא. Git revert יוצר קומיט הפוך, אך יכול להתנגש עם שינויים מאוחרים. הוא אינו מבטל מיגרציית בסיס נתונים, פעולה חיצונית או פריסה שכבר חיה. מנסים חזרה בסביבת בדיקה ועוברים במסלול המשתמש המרכזי. מתעדים חבילה, פקודה, תוצאה, תחום וסיכון שנותר. זה תהליך מוצע ולא מדידת מהירות או הוכחה להצלחת פריסה.
מקורות
- https://wurk.fun/blog/update-your-dependencies-with-a-coding-agent-one-package-at-a-time
- https://docs.npmjs.com/cli/commands/npm-outdated
- https://pip.pypa.io/en/stable/cli/pip_list/
- https://docs.npmjs.com/cli/commands/npm-audit
- https://pypi.org/project/pip-audit/
- https://wurk.fun/blog/check-every-package-your-coding-agent-adds-before-you-install-it
- https://semver.org/